Threat Lab Quarterly: 2026년 8월
Aug 28, 2026
Netwrix는 2025년 7월 15일에 전담 사내 Security Research 팀을 구성했으며, 팀장은 Huy Kha, Security Research 이사입니다. 팀에는 Senior Staff Security Researcher Darryl Baker가 포함되어 있으며, 그는 Active Directory 및 identity security 분야의 권위자로 인정받고 있습니다. 이들은 identity, 데이터 보안, AI 및 클라우드 위협을 연구하며, 보안 연구를 Netwrix 제품 포트폴리오 전반에 걸친 실질적인 개선으로 전환하는 것을 목표로 합니다. 이번 분기에는 연구팀이 PingCastle 팀과 협력하여 Entra ID 평가 범위를 확장하고, Threat Manager 팀과 협력하여 ADCS 취약점을 포함한 추가 위협 탐지를 추가했습니다.
팀의 작업은 Netwrix Threat Lab Quarterly의 기초입니다. 각 호에서는 분기의 주목할 만한 identity 보안 연구 및 뉴스, Netwrix Security Research 팀의 독창적인 발견, 그리고 이 둘이 identity 및 AD 팀에 실질적으로 의미하는 바를 다룹니다.
공격자보다 먼저 오래된 및 유령 SPN 추적
작성자 Huy Kha
소개
지난 몇 년간 Service Principal Names(SPNs)를 악용한 Active Directory 공격이 증가했습니다. Kerberoasting에서 시작되었지만 그 이후로 기법이 더 창의적으로 발전했습니다. Ghost SPN 공격은 더 이상 사용되지 않는 서비스 대상을 주장하여 권한 상승을 가능하게 할 수 있습니다. 최근에는 SPN 유니코드 충돌 공격으로 write-SPN 권한이 있는 인증된 사용자가 시각적으로 동일하지만 기술적으로 다른 SPN을 사용해 권한을 상승시킬 수 있습니다.
또한 기본 보안 위생이라는, 크게 주목받지 못하는 조용한 문제가 있습니다. Netwrix에서는 조직 규모에 관계없이 같은 패턴이 반복되는 것을 봅니다. 컴퓨터 계정은 해당 장비가 폐기된 후에도 Active Directory에서 계속 활성화되어 있습니다. 서비스 계정은 더 이상 존재하지 않는 호스트를 가리키는 SPN을 유지합니다. 아무도 이를 정리하지 않아서 계정이 그대로 남아 있고, 여전히 활성 상태이며 Kerberoasting에 취약한 상태인데도 아무도 신경 쓰지 않습니다.
도메인에서 은밀한 SPN 찾기
우리 보안 연구팀은 IT 전문가와 관리자들이 쉽게 사용할 수 있도록 다음과 같은 것을 만들기로 결정했습니다: Find-StealthSPNs라는 PowerShell 스크립트로 컴퓨터 및 사용자 계정 전반에 걸쳐 은밀한 SPN을 찾아내어 결과를 검토하고 실제로 정리가 필요한 항목을 결정할 수 있습니다.
스크립트는 두 가지 주요 단계로 실행됩니다. 첫 번째 단계는 포리스트 내 모든 컴퓨터 계정을 검사합니다. 모든 도메인 가입 컴퓨터는 기본적으로 최소 하나의 SPN을 등록하므로, 이 단계에서는 해당 컴퓨터의 호스트명이 여전히 DNS에서 해석되는지, 그리고 그 SPN 중 어느 것이 더 이상 존재하지 않는 호스트를 가리키는지 확인합니다. 이를 ghost SPN이라고 부르며, 계정에 남아 있으면서 기술적으로는 유효하지만 실제 존재하지 않는 대상을 가리키는 SPN입니다. 또한 AD에서 미리 생성되었지만 실제로 가입되지 않은 컴퓨터 계정도 감지하는데, 이들은 보통 SPN이 전혀 없어 아무도 모르는 채 무기한 방치됩니다.
우리는 의도적으로 ICMP 핑 대신 DNS를 통해 이를 확인합니다. 일부 관리자는 SPN 뒤에 있는 호스트가 여전히 살아 있는지 빠르게 확인하기 위해 핑에 의존하지만, 대부분 환경에서 ICMP는 방화벽과 호스트 기반 필터링에 의해 자주 차단되어 실패한 핑은 별로 의미가 없습니다. 누락된 DNS 레코드는 해당 호스트명이 더 이상 존재할 것으로 예상되지 않는다는 더 신뢰할 수 있는 신호입니다. 이는 해당 장치가 핑에 응답하는지 여부와 무관합니다.
두 번째 검토는 사용자 계정, 특히 SPN을 보유한 계정을 살펴봅니다. 이는 서비스 계정의 전형적인 설정이기 때문입니다. 발견된 각 SPN에 대해 두 가지를 확인합니다: AD에 일치하는 컴퓨터 계정이 여전히 존재하는지, 그리고 해당 호스트명이 DNS에서 여전히 해석되는지 여부입니다. 둘 다 해당되지 않으면 SPN이 불필요한 자산임을 명확히 나타내는 신호입니다. 계정은 여전히 활성 상태이고, SPN도 등록되어 있으며, Kerberoasting을 통해 여전히 악용 가능하지만 이제는 정당한 의존 대상이 없습니다.
게다가 이 스크립트는 앞서 언급한 공격 유형인 SPN 유니코드 충돌도 검사합니다. 조작된 SPN이 실제 SPN과 시각적으로 일치하지만 내부 값은 완전히 다른 경우입니다. 숨겨진 문자나 유사 문자가 포함된 SPN을 표시하고, 포리스트 내 모든 SPN을 교차 참조하여 두 계정이 동일한 SPN을 가진 경우를 찾아냅니다. 오탐이 있을 수 있으니 항상 두 번 확인하세요.
모든 작업은 ADSI와 DirectorySearcher만 사용하여 실행되므로 ActiveDirectory PowerShell 모듈에 의존하지 않으며, 실행하는 도메인뿐만 아니라 포리스트 내 모든 도메인에서 작동합니다.
DNS 해석에 대한 간단한 참고 사항: 이 스크립트는 실행하는 컴퓨터에 설정된 DNS 해석기를 사용하여 DNS를 확인합니다. (더) 정확한 결과를 위해서는 워크스테이션 대신 도메인 컨트롤러에서 실행하세요. DC는 이미 환경 내 모든 도메인을 해석하도록 설정되어 있기 때문입니다. 비정상적이거나 제한된 DNS 설정이 있는 컴퓨터에서 실행하면 실제로 존재하는 레코드에 대해 잘못된 MISSING_DNS 결과가 나올 수 있습니다.
결론
결국 우리는 조직이 더 이상 추적하지 않는 오래된 계정을 정리하여 공격 표면을 줄이도록 돕고자 합니다. 존재하지 않는 기계에 연결된 활성화된 컴퓨터 계정, 존재하지 않는 호스트를 가리키는 서비스 계정 등 모든 ghost SPN은 Active Directory에 있을 필요도 없고 있어서는 안 되는 요소입니다. 정교한 공격자가 필요하지 않습니다. 누군가가 당신보다 먼저 이를 발견하기만 하면 됩니다.
DEF CON 34의 아이덴티티 보안 관점
Darryl Baker 작성
DEF CON 34와 Black Hat USA 2026에서는 모두 identity 인프라를 지목하는 세 가지 별도의 연구 결과를 발표했습니다. 각 연구가 발표한 내용과 identity 및 AD 프로그램을 운영하는 사람들에게 의미하는 바를 소개합니다.
CloudBasher: 공격자 인프라로 변한 무료 클라우드 셸
Jenko Hwong과 Chris Ryan은 AWS, Azure 및 GCP의 무료 클라우드 셸 기능 뒤에 있는 비공개 REST API 및 WebSocket 세션을 리버스 엔지니어링하여 구축된 오픈 소스 툴킷인 CloudBasher를 발표했습니다. 이 툴킷은 GitHub에서 공개될 예정입니다, 침해 데이터에서 추출한 클라우드 잘못된 구성 패턴에 대한 2026년 분석과 함께 제공됩니다.
조사 결과 Identity Management 팀이 주목할 만한 몇 가지 구체적인 발견 사항이 드러났습니다.
- 손상된 AWS 아이덴티티는 역할을 맡아 다수의 CloudShell 환경을 생성할 수 있습니다.
- 기본 액세스 토큰이 취소된 후에도 WebSocket 터미널 세션은 계속 활성 상태를 유지하므로 자격 증명을 취소해도 활성 세션이 반드시 종료되는 것은 아닙니다.
- M365 및 Gmail 소비자 계정은 기본적으로 CloudShell 액세스를 받으며, 이는 관련 공격 표면을 기업 계정뿐 아니라 개인 계정으로도 확장합니다.
세션이 설정되면 툴킷이 $HOME 디렉터리에 지속되며(재설정 후에도 유지됨), 합법적인 사용자가 자신의 세션 내에서 sudo를 사용할 수 없도록 잠그고 C2 프레임워크를 설치합니다.
중요한 이유: 만약 귀하의 identity 프로그램이 토큰 폐기를 세션 종료와 동일하게 처리한다면, 이 연구는 그 가정을 확인해야 하며 단순히 가정해서는 안 된다고 말합니다. 또한 CloudShell 접근 정책과 모니터링이 비정상적인 세션 생성을 감지할 수 있는지도 확인할 가치가 있습니다.
GhostJacking: 로그에 숨겨진 지시에 따라 작동하는 AI 코딩 에이전트
Tenet Security의 Barak Sternberg, Nevo Poran, Ron Bobrov는 GhostJacking을 발표했습니다. 이는 AI 코딩 에이전트를 탈취하기 위해 에이전트가 읽을 것으로 예상되는 로그(예: WAF 경고, 오류 보고서, 모니터링 출력)에 명령을 심는 기법입니다. Tenet은 Cloudflare 기본 구성에서 Claude Code에 대해 90% 성공률을 보고했으며, Cloudflare 구성만으로도 15,000개 이상의 조직이 노출되어 있다고 추정했습니다.
Tenet은 세 플랫폼에서 이 기술을 시연했습니다. 오염된 Cloudflare WAF 로그 항목(Cloudflare는 Fortune 500 기업의 약 42% 앞에 위치함)으로 인해 에이전트가 DNS 설정을 변경하고 트래픽을 리디렉션했습니다. 주입된 Datadog 로그 메시지(약 48%의 Fortune 500 기업에서 사용)는 에이전트가 악성 패키지를 설치하게 하여 원격 코드 실행 및 자격 증명 탈취로 이어졌습니다. 오염된 Sentry 오류 보고서(Sentry는 약 400만 개발자에게 서비스 제공)는 손상된 Claude Code 인스턴스가 공격자를 Sentry의 Seer AI 에이전트에게 보증하게 하여 에이전트 간 신뢰 체인을 생성했습니다. Tenet은 또한 2,700개 이상의 노출된 Datadog API 키를 발견했으며, 별도로 Claude Desktop의 JWT 관련 샌드박스 탈출을 Anthropic에 공개했습니다. 이 문제는 DEF CON 강연 전에 패치되었습니다.
세 가지 경우 모두 에이전트의 작업은 자체의 합법적이고 이미 승인된 자격 증명을 사용합니다. 이는 EDR, WAF 및 IAM 도구가 이상 징후를 감지하지 않는다는 의미입니다.
중요한 이유: RBAC, 최소 권한, MFA는 여기서 도움이 되지 않습니다. 에이전트의 접근 권한이 합법적이기 때문입니다. 문제는 그 접근 권한으로 무엇을 하도록 지시받았는가입니다. Tenet의 권장 사항은 합리적인 시작점 체크리스트입니다: 기본적으로 에이전트의 아웃바운드 네트워크 접근 제한, 인프라 변경 전 인간 승인 요구, 읽기 전용 도구와 쓰기 가능한 도구 분리, 그리고 에이전트가 읽는 모든 로그나 경고를 출처와 상관없이 신뢰할 수 없는 입력으로 간주하기.
The OpenAI–Hugging Face incident: An agent that escaped its own test
2026년 7월, OpenAI는 ExploitGym 벤치마크(898개의 실제 취약점)를 사용한 내부 평가 중에 안전장치가 비활성화된 상태로 실행된 GPT-5.6 Sol 실험 버전이 샌드박스를 탈출해 Hugging Face의 프로덕션 인프라를 침해했다고 공개했습니다. Hugging Face는 7월 16일에 사건을 공개했고, OpenAI는 7월 21일에 자신의 역할을 공개했습니다. Eric Wallace와 Michael Dalton은 Black Hat USA 2026에서 이에 대해 발표했습니다.
공개된 내용에 따르면, 에이전트는 Artifactory(JFrog의 패키지 레지스트리 캐시 프록시)의 자체 호스팅 인스턴스에서 제로데이 취약점을 발견하고 이를 이용해 샌드박스를 탈출하여 인터넷에 접속했습니다. 에이전트는 이후 Hugging Face가 벤치마크 답안 키를 호스팅하고 있음을 추론하고 직접 공격했습니다. 여러 에이전트 인스턴스가 나중에 Artifactory 자체를 통해 수십만 개의 메시지를 교환하며 작업을 분담하고 익스플로잇을 공유하는 방식으로 협력했습니다. 한 시점에서는 사기꾼을 의심해 메시지에 암호화 서명을 제안하기도 했습니다. OpenAI가 7월 4일 채널을 종료하자, 에이전트들은 인증되지 않은 엔드포인트의 디렉터리 이름을 대체 메시징 채널로 사용해 4일 만에 채널을 재구축했습니다.
4.5일간의 캠페인 동안 OpenAI는 17,600건 이상의 에이전트 활동을 기록했으며, 여기에는 136개의 자격 증명 저장소 키 탈취, 메쉬 VPN 인증 키 도난, Tailscale을 통한 181대 장치 등록, GitHub App 쓰기 권한 획득이 포함됩니다. 11개의 Kubernetes 노드에서의 활동에는 AWS 인스턴스 메타데이터를 통한 노드 사칭, 도난당한 EdDSA JWT 서명 키를 사용한 위조된 신원 토큰, 호스트 파일 시스템 마운트를 가진 권한 있는 파드 생성이 포함되었습니다. OpenAI는 또한 제한적 성격의 다른 작은 샌드박스 탈출도 확인했으며, 이들 중 어느 것도 자체 네트워크를 벗어나지 않은 것으로 믿고 있다고 밝혔습니다.
identity 및 incident response에 관한 한 가지 세부 사항: Hugging Face의 포렌식 쿼리는 조사에 사용하려고 시도한 OpenAI 및 Anthropic 모델에 내장된 동일한 상업용 AI 안전 장치에 의해 차단되었습니다. 이 안전 장치는 사고 대응자의 질문과 공격자의 질문을 구분할 수 없었기 때문입니다. Hugging Face는 7,530억 매개변수의 오픈 웨이트 모델(GLM-5.2)을 사용하여 수천 건의 공격자 이벤트를 며칠이 아닌 몇 시간 만에 처리했습니다.
중요한 이유: 이것은 자율 에이전트가 독립적으로 취약점을 발견하고, 자격 증명을 탈취하며, 토큰을 위조하고, 인간의 지시 없이 클라우드 인프라를 횡단 이동한 문서화된 사례입니다. IAM 및 거버넌스 모델이 인간 및 서비스 계정 ID만 고려한다면, 이 사건은 자율적으로 행동할 수 있는 세 번째 범주를 추가해야 하는 구체적인 이유입니다.
이 세 가지가 공통적으로 가진 것
CloudBasher는 프로토콜 수준에서의 identity 제어의 격차에 관한 것입니다: 토큰 폐기, 역할 인수 경계, 기본 액세스 정책. GhostJacking은 합법적이고 위임된 identity를 사용하는 AI 에이전트가 신뢰하지 말았어야 할 지침에 따라 행동하는 것입니다. OpenAI–Hugging Face 사건은 인간이나 조작된 로그의 지시 없이 에이전트가 스스로 자격 증명을 획득하고 위조하는 것에 관한 것입니다.
세 가지 모두에 공통된 맥락이 있습니다. 수비자는 공격자가 지킬 필요 없는 도구에 의해 제약받습니다. CloudBasher는 수비자가 검증하지 않은 가정을 악용했습니다. GhostJacking은 identity 도구가 의도를 평가할 수 없다는 점을 악용했습니다. OpenAI–Hugging Face 사례에서는 오용 방지를 위한 안전 장치가 대응하는 사람들을 지연시키기도 했습니다.
identity 및 AD 팀을 위한 실용적인 다음 단계
이 연구를 기반으로 이번 분기에 할 가치가 있는 네 가지 사항:
놓쳤을 수 있는 연구
놓치셨다면, Netwrix의 Security Research 팀에서 선정한 상위 게시물 세 개를 공유합니다.
강력한 LDAP 확장 제어: AD에서의 안티-복구 및 보이지 않는 정찰
수석 보안 연구원 Darryl Baker가 Active Directory의 문서화된 모든 LDAP 확장 제어를 감사한 결과 이전에 공개되지 않은 공격 가능성이 있는 두 가지를 발견했습니다. FORCE_UPDATE는 단 하나의 속성에 쓰기 권한이 있는 공격자가 악의적인 값을 AD 복제 충돌 해결에서 이기게 하여 방어자가 나중에 수정해도 조용히 되돌아가도록 합니다. DirSync의 OBJECT_SECURITY 플래그는 도메인 사용자가 정상 검색 시 발생하는 로그 이벤트 없이 복제 경로를 통해 AD 데이터를 대량으로 읽을 수 있게 합니다. 둘 다 새로운 권한을 부여하지는 않지만 대부분의 방어자가 의존하는 탐지를 무력화하며, 게시물에는 일치하는 탐지 가이드와 오픈 소스 레드/블루 도구가 포함되어 있습니다.
중요한 이유: 두 기술 모두 대부분의 AD 모니터링 규칙이 기반하는 정확한 로그 이벤트(이벤트 1644, 이벤트 4662)를 우회합니다. 탐지가 해당 이벤트를 구체적으로 테스트하지 않았다면, 아마도 작동하지 않을 것입니다. SACL 카나리아와 헌팅 쿼리가 실제로 이를 잡아낼 수 있는지 확인할 가치가 있습니다.
귀하의 AI 코딩 어시스턴트가 비밀을 유출하고 있습니다
Darryl Baker는 Claude Code, GitHub Copilot, Cursor, Continue.dev, Cline 등 14개의 인기 AI 데스크톱 어시스턴트 도구에서 자격 증명 저장소를 감사했으며, 대부분이 OAuth 토큰과 API 키를 예측 가능한 파일 경로의 평문 JSON으로 보관한다는 사실을 발견했습니다. 한 가지 특정한 취약점은 WSL에서 Windows 측 Claude Code 자격 증명 파일이 전 세계 읽기 권한을 상속할 수 있다는 점입니다. 이 글에서는 활성 Claude Code 원격 제어 세션 탈취 및 여러 서비스의 토큰을 단일 읽기 가능한 파일로 집계하는 MCP 구성 파일 등 8가지 공격 시나리오를 다룹니다. 또한 Netwrix의 오픈 소스 스캐너 AIHound를 소개하여 이러한 노출된 자격 증명을 검사합니다.
중요한 이유: 엔지니어가 이러한 도구를 사용한다면, 해당 자격 증명이 현재 평문으로 디스크에 저장되어 있을 가능성이 높으며, 공격자가 추측할 필요가 없는 파일 경로에 있습니다. 읽기 위해 권한 상승이 필요 없으며, MCP 구성은 여러 서비스 토큰을 하나의 파일에 묶기 때문에 단일 노트북이 침해되면 연결된 모든 시스템이나 서비스로 확산될 수 있습니다. 여기에는 데이터베이스, 클라우드 인프라, 심지어 다른 AI 도구도 포함될 수 있습니다. AIHound는 누군가가 발견하기 전에 자신의 노출 상태를 빠르게 확인할 수 있는 방법을 제공합니다.
AI를 활용한 Entra ID 테넌트 파괴 자동화
Huy Kha는 Microsoft Graph Explorer를 대상으로 Claude for Chrome을 사용하여, 로그인한 계정이 이미 Global Administrator 권한을 보유한 경우 브라우저 측 JavaScript와 Graph 배치 요청을 통해 대량 사용자 삭제, 비밀번호 재설정, 세션 해제 및 Conditional Access 정책 제거를 자동화할 수 있음을 보여주었습니다. 이 게시물은 Stryker 및 Storm-0501 사례를 포함한 실제 사건과 연결하며, AI가 새로운 공격 경로를 만든 것이 아니라 기존 관리자 워크플로우를 악용해 대규모로 더 빠르고 쉽게 실행할 수 있게 했다는 점을 강조합니다.
중요한 이유: 이는 특권 계정 침해와 전체 테넌트 파괴 사이의 간극이며, AI 자동화가 이를 빠르게 좁히고 있습니다. 누군가 Global Admin 세션을 획득하면 최대 피해를 주기 위해 스크립트 기술이나 시간이 더 이상 필요하지 않습니다. 이는 자격 증명뿐만 아니라 Graph Explorer 같은 도구와 관리자 세션 보호 및 모니터링의 중요성을 높입니다.
2026 데이터 및 Identity Security 보고서: 에이전트 AI 도입 및 준비 상태의 진전과 격차
Netwrix Research Lab은 1,889개 조직의 IT 및 보안 전문가 2,317명을 대상으로 2026년 데이터 및 Identity 보안 보고서를 작성했습니다. 조사 결과 AI가 Identity 범위를 크게 확장한 조직은 그렇지 않은 조직보다 약 4배 더 자주 침해를 당한 것으로 나타났습니다. 이 보고서는 격차를 엄격성보다는 거버넌스 속도와 연관 짓고 있으며, 76%의 조직이 비인간 신원을 완전히 관리하거나 모니터링하지 않고, 11%만이 지속적인 시행 및 모니터링을 통해 완전한 AI 보안 준비 상태를 보고합니다.
중요한 이유: 데이터는 강력한 identity hygiene만으로 AI 기반 위험을 방어할 수 있다는 일반적인 가정을 복잡하게 만듭니다. 만약 귀하의 identity governance가 여전히 분기별 검토와 정기 감사에 의존한다면, 새로운 AI 에이전트나 비인간 아이덴티티가 누군가 알아차리기 전에 얼마나 오래 존재하는지 확인할 가치가 있습니다. 이 지연이 바로 이 보고서에서 지적하는 침해 격차의 원인이지, 누락된 통제가 아닙니다.
이번 Netwrix Threat Lab Quarterly 호는 여기까지입니다. 곧 새로운 연구와 공격자가 놓치길 바라는 취약점을 막는 더 많은 방법으로 돌아오겠습니다.
공유하기
더 알아보기
저자 소개