
Microsoft Entra ID를 대상으로 하는 공격 도구의 관찰 가능한 API 엔드포인트와 사용자 에이전트를 문서화하여 탐지 엔지니어링 및 사고 대응을 지원하는 방어 연구 도구입니다.
EntraTrace는 Microsoft Entra ID를 대상으로 하는 공격 도구의 관찰 가능한 동작을 문서화하고 식별하기 위한 방어적 보안 연구 도구입니다.
이 프로젝트는 AzureHound, AADInternals, O365Enum, PingCastle 등과 같은 도구를 중심으로 자동화된 지식 기반을 구축하며, 이들이 생성하는 UserAgent 및 API 아티팩트에 중점을 둡니다.
🚧 초기 개발 단계
이 프로젝트는 활발히 개발 중입니다. 데이터, 도구 지원 범위, 기능은 시간이 지남에 따라 발전할 것입니다.
기여, 연구, 수정, 추가 도구 분석을 환영합니다.
EntraTrace는 방어자에게 유용할 수 있는 정보에 중점을 두며, 다음을 포함합니다:
목표는 방어 팀이 공격 도구의 동작을 더 쉽게 이해하고 실행 가능한 정보로 전환할 수 있도록 하는 것입니다.
| Tool | Unique APIs | Unique API calls | UserAgents |
|---|---|---|---|
| aadinternals | 4 | 110 | 18 |
| AzureHound | 2 | 28 | 0 |
| Graphpython | 3 | 119 | 17 |
| GraphRunner | 4 | 67 | 21 |
| GraphSpy | 2 | 38 | 2 |
| MFASweep | 4 | 17 | 11 |
| MicroBurst | 3 | 78 | 0 |
| MSOLSpray | 1 | 1 | 0 |
| o365enum | 1 | 1 | 2 |
| o365spray | 1 | 1 | 2 |
| pingcastle | 3 | 14 | 1 |
| PowerZure | 3 | 29 | 0 |
| ROADtools | 4 | 434 | 7 |
| ropci |
공격 보안 도구는 아이덴티티 환경을 평가하고 공격하는 데 자주 사용됩니다. 이러한 도구가 Entra ID와 상호 작용하는 방식을 이해하면 방어자가 도구 사용을 식별하고, 의심스러운 활동을 조사하며, 탐지 범위를 개선하는 데 도움이 됩니다.
EntraTrace는 공격 도구 연구와 방어 보안 운영 사이의 간극을 메우는 것을 목표로 합니다.
EntraTrace는 다음과 같은 용도로 사용할 수 있습니다:
🤖 EntraTrace는 AI의 도움을 받아 개발됩니다. AI는 개발 및 연구 과정 전반에 사용되며, 결과물에 대한 인간의 검토와 검증이 이루어집니다.
저장소는 매일 업데이트되지만, 로컬 배포도 지원됩니다. Python을 사용하여 저장소 루트에서 로컬로 실행하려면, 실행 전에 내장된 도움말 출력을 사용하여 사용 가능한 옵션을 확인하세요.
⚠️ - 스크립트를 로컬에서 실행하면 프로필을 생성하는 데 필요한 정보를 추출하기 위해 공격 도구가 포함된 저장소가 로컬로 다운로드되므로 보안 경고가 발생할 수 있습니다.
# Extract API behavior from a repo or refresh all profile entries
python .\Scripts\ExtractToolBehavior.py --all-profiles --output-dir .\Profiles
# Export tool user agents from YAML profiles into a CSV
python .\Scripts\SummarizeUserAgents.py --profiles-dir .\Profiles --output .\Indicator Lists\UserAgents.csv
SummarizeUserAgents.py는 프로필 YAML 파일에서 user-agent 데이터를 헌팅 CSV로 내보냅니다.ExtractToolBehavior.py는 Profiles\Tools.txt가 있으면 해당 파일에서 저장소 URL을 읽고, 그렇지 않으면 출력 디렉터리의 YAML 프로필 파일에서 발견된 모든 repository_url로 대체합니다.-h 또는 --help와 함께 실행하세요.라이선스 정보는 LICENSE를 참조하세요.
| 3 |
| 15 |
| 0 |
| Stormspotter | 3 | 4 | 0 |
| TeamFiltration | 3 | 62 | 2 |
| TokenSmith | 2 | 8 | 0 |
| TokenTactics | 4 | 8 | 16 |
| TokenTacticsV2 | 4 | 30 | 23 |