[Hugging Face] 보안 사고 공개 — 2026년 7월
TMT이번 주 초, 저희는 프로덕션 인프라 일부에 대한 침입을 탐지하고 대응했습니다. 이번 사고는 한 가지 중요한 점에서 이전에 다뤘던 어떤 사고와도 달랐습니다. 처음부터 끝까지 자율 AI 에이전트 시스템이 주도한 공격이었고, 저희 역시 이를 대부분 자체 AI로 탐지하고 분석했다는 점입니다.
제한된 범위의 내부 데이터셋과 저희 서비스가 사용하는 여러 자격 증명에 대한 무단 접근이 있었음을 확인했습니다. 파트너나 고객 데이터가 영향을 받았는지는 아직 평가를 마무리하는 중이며, 영향을 받은 당사자가 있다면 필요한 절차에 따라 직접 연락드리겠습니다. 공개된 사용자 대상 모델·데이터셋·Spaces가 변조된 흔적은 발견되지 않았고, 소프트웨어 공급망(컨테이너 이미지와 배포된 패키지)도 이상이 없는 것으로 확인했습니다.
무슨 일이 있었나
침입은 AI 플랫폼이 유독 취약한 지점인 데이터 처리 파이프라인에서 시작됐습니다. 악성 데이터셋이 데이터셋 처리 과정의 코드 실행 경로 두 곳(원격 코드 데이터셋 로더와 데이터셋 설정의 템플릿 인젝션)을 악용해 처리 워커에서 코드를 실행했습니다. 공격자는 거기서 노드 수준 접근으로 권한을 확대하고, 클라우드와 클러스터의 자격 증명을 수집한 뒤, 주말 사이 여러 내부 클러스터로 옮겨 다녔습니다.
이번 공격은 자율 에이전트 프레임워크(에이전트형 보안 연구 하니스 위에 만들어진 것으로 보이며, 사용된 LLM은 아직 밝혀지지 않음)가 수행했습니다. 수명이 짧은 샌드박스 무리를 오가며 수천 건에 달하는 개별 행동을 실행했고, 공개 서비스 위에 스스로 옮겨 다니는 명령 제어(C2) 거점을 두었습니다. 업계가 예견해 온 "에이전트형 공격자" 시나리오와 그대로 맞아떨어지는 양상입니다.
저희가 취한 조치
- 근본 취약점을 수정했습니다. 최초 침입에 쓰인 데이터셋 코드 실행 경로를 차단했습니다.
- 영향을 받은 클러스터 전반에서 공격자의 거점을 제거하고, 침해된 노드를 재구축했습니다.
- 영향을 받은 자격 증명과 토큰을 폐기·교체했으며, 예방 차원에서 시크릿 전반의 교체 작업도 시작했습니다.
- 클러스터에 추가 가드레일과 더 엄격한 어드미션 컨트롤을 적용했습니다.
- 탐지·경보 체계를 개선해, 심각도 높은 신호가 잡히면 요일과 관계없이 몇 분 안에 담당자를 호출하도록 했습니다.
외부 사이버 보안 포렌식 전문가들과 함께 사고를 조사하고 보안 정책과 절차를 점검하고 있습니다. 아울러 이번 사고를 수사 기관에도 신고했습니다.
커뮤니티 여러분께
예방 차원에서 액세스 토큰을 모두 교체하고 계정의 최근 활동을 점검해 보시길 권합니다. 영향을 받았다고 판단되거나 보안 문제를 제보하고 싶으시면 security@huggingface.co로 연락해 주세요.
밤낮없이 대응해 준 Hugging Face의 여러 팀에 감사드리며, 이번 일로 불편을 끼쳐 죄송합니다. 보안에는 끝이 없습니다. 앞으로도 기준을 계속 높여 가겠습니다.
AI가 주도한 침입을 분석하다
이번 공격은 처음에 AI 기반 탐지로 드러났습니다. 저희 이상 탐지 파이프라인은 보안 텔레메트리에 LLM 기반 트리아지를 적용해 일상적인 노이즈에서 진짜 신호를 걸러내는데, 이렇게 걸러낸 신호들의 상관관계가 침해를 포착해 냈습니다.
수만 건의 자동화된 행동 무리가 무엇을 했는지 파악하기 위해, 1만 7천 건이 넘는 기록 이벤트로 이루어진 공격자 행동 로그 전체에 LLM 기반 분석 에이전트를 돌렸습니다. 그 덕분에 타임라인을 재구성하고, 침해 지표(IoC)를 추출하고, 어떤 자격 증명이 노출됐는지 파악하고, 실제 피해와 교란용 활동을 구분할 수 있었습니다. 이 접근 덕분에 보통 며칠 걸릴 일을 몇 시간 만에 끝내며 공격자의 속도를 따라잡을 수 있었습니다.
이 분석에 쓸 수 있는 모델의 선택지는 예상하지 못한 방식으로 제한됐는데, 아래에서 설명합니다.
비대칭 문제
로그 분석을 시작할 때 처음에는 상용 API 뒤의 프런티어 모델을 사용했습니다. 이 방식은 통하지 않았습니다. 분석을 하려면 실제 공격 명령어, 익스플로잇 페이로드, C2 아티팩트를 대량으로 제출해야 하는데, 이런 요청이 제공사의 안전 가드레일에 막혔기 때문입니다. 가드레일은 사고 대응자와 공격자를 구분하지 못합니다. 그래서 포렌식 분석은 오픈 웨이트 모델인 GLM 5.2를 자체 인프라에서 돌려 수행했습니다. 여기에는 또 다른 이점이 있었습니다. 공격자 데이터도, 그 안에 언급된 자격 증명도 저희 환경 밖으로 나가지 않았다는 점입니다.
이 경험은 미리 대비해 둘 만한 공백 하나를 보여 줍니다. 공격자의 에이전트를 어떤 모델이 움직였는지는 알 수 없습니다. 탈옥된 호스팅 모델일 수도, 제한 없는 오픈 웨이트 모델일 수도 있습니다. 어느 쪽이든 공격자는 어떤 사용 정책에도 묶여 있지 않았던 반면, 저희 포렌식 작업은 처음에 시도한 호스팅 모델들의 가드레일에 가로막혔습니다. 방어자가 얻을 실질적인 교훈은 이렇습니다. 사고가 터지기 전에 자체 인프라에서 돌릴 수 있는 역량 있는 모델을 검증해서 준비해 두어야 합니다. 가드레일에 갇히는 상황을 피하기 위해서이기도 하고, 공격자 데이터와 자격 증명이 환경 밖으로 나가지 않게 하기 위해서이기도 합니다. 이는 호스팅 모델의 안전장치에 반대하는 주장이 아니며, 저희는 이 피드백을 해당 제공사들과 공유하고 있습니다.
이것이 의미하는 것
자율적인 AI 기반 공격 도구는 더 이상 이론 속 이야기가 아닙니다. 이런 도구는 광범위하고 끈질긴 다단계 공격을 벌이는 비용을 낮추고, 기계의 속도로 움직입니다. 이제 온라인 플랫폼을 지키려면 데이터와 모델 표면을 일급 공격 표면으로 다루고, 방어에도 AI를 써서 속도를 맞춰야 합니다. 저희는 이 영역에 계속 투자하고, 배운 것을 계속 공유하겠습니다.