Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ATEAM — Python 기반 정찰 도구로, DNS 검증, 다중 서비스 프로빙, 응답 분석을 통해 Azure 서비스를 발견하고 테넌트 소유권을 귀속시킵니다. 동시 스캔, 순열 생성, 여러 내보내기 형식을 지원합니다. | Kitploit
도구/GitHubGitHub/netspi/ateam
OSINT (Open Source Intelligence)ReconnaissanceVulnerability AnalysisInformation GatheringPenetration TestingCloud SecuritySubdomain EnumerationDNS Analysis
GitHubnetspi/ateam

ATEAM

Python 기반 정찰 도구로, DNS 검증, 다중 서비스 프로빙, 응답 분석을 통해 Azure 서비스를 발견하고 테넌트 소유권을 귀속시킵니다. 동시 스캔, 순열 생성, 여러 내보내기 형식을 지원합니다.

저장소 보기
14815491년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

ATEAMLogo
licence badge stars badge forks badge issues badge Twitter Follow

ATEAM: Azure 테넌트 열거 및 귀속 모듈

Azure 서비스를 발견하고 해당 응답을 기반으로 테넌트 소유권 정보를 확인하도록 설계된 Python 정찰 도구입니다.

작성자, 기여자 및 라이선스

  • 작성자:
    • Karl Fosaaen (@kfosaaen - 대부분의 플랫폼에서), NetSPI
    • Thomas Elling (@thomaselling1), NetSPI
  • 라이선스: BSD 3-Clause

🎯 목적

이 도구는 보안 연구원, 침투 테스터 및 Azure 관리자가 특정 테넌트 ID와 연결된 Azure 리소스를 발견할 수 있도록 도와줍니다.

✨ 기능

멀티 서비스 검색

리소스 이름을 6가지 서로 다른 Azure 서비스 및 해당 하위 도메인에 대해 테스트합니다:

  • Azure App Services (.azurewebsites.net 및 .scm.azurewebsites.net)
  • Azure DevOps (dev.azure.com)
  • Azure Key Vault (.vault.azure.net)
  • Azure Storage Accounts (.blob.core.windows.net)
  • SharePoint Online (.sharepoint.com)
  • Azure Databricks (.azuredatabricks.net)

추가 기능

  • 동시 처리: 더 빠른 결과를 위해 멀티스레드로 스캔합니다
  • 배치 처리: 메모리 문제를 방지하기 위해 구성 가능한 배치로 리소스를 처리합니다
  • DNS 검증: HTTP 요청을 보내기 전에 DNS 레코드를 확인합니다
  • 순열 생성: 리소스 이름의 변형을 자동으로 생성합니다
  • 데이터베이스 저장: 결과를 영구적으로 저장하기 위해 SQLite 데이터베이스를 사용합니다
  • 다중 내보내기 형식: CSV, JSON 및 HTML 형식으로 내보냅니다
  • 상세 로깅: 문제 해결을 위한 상세 디버그 정보를 제공합니다

📋 사전 요구 사항

  • Python 3.7 이상
  • 인터넷 연결
  • 필요한 Python 패키지 (아래 설치 참조)

🚀 설치

  1. 도구를 클론하거나 다운로드합니다:

    root@kitploit:~
    git clone https://github.com/NetSPI/ATEAM.git
    cd ATEAM
    
  2. 필요한 종속성을 설치합니다:

    root@kitploit:~
    pip install -r requirements.txt
    

    또는 수동으로 설치:

    root@kitploit:~
    pip install requests dnspython urllib3
    
  3. 설치를 확인합니다:

    root@kitploit:~
    python ateam.py --help
    

📖 사용법

기본 사용법

단일 리소스 스캔:

root@kitploit:~
python ateam.py -r "myapp"

여러 리소스 스캔:

root@kitploit:~
python ateam.py -r "app1" "app2" "app3"

텍스트 파일 리소스 목록에서 스캔:

root@kitploit:~
python ateam.py -f resources.txt

고급 사용법

(20)개 워커로 상세 출력:

root@kitploit:~
python ateam.py -f resources.txt -v -w 20

순열 생성 및 스캔:

root@kitploit:~
python ateam.py -f resources.txt -p

더 작은 배치 크기로 순열 생성 (대규모 스캔에 권장):

root@kitploit:~
python ateam.py -f resources.txt -p -b 100

결과를 HTML로 내보내기:

root@kitploit:~
python ateam.py -e html

데이터베이스를 초기화하고 새로 시작:

root@kitploit:~
python ateam.py -f resources.txt --clear

명령줄 옵션

📁 파일 구조

root@kitploit:~
ATEAM/
├── ateam.py    # Main script
├── requirements.txt          # Python dependencies
├── permutations.txt          # Resource name permutations
└── README.md                 # This file

🔧 구성

순열 파일

permutations.txt 파일에는 리소스 이름의 변형을 생성하기 위한 일반적인 접두사와 접미사가 포함되어 있습니다:

root@kitploit:~
dev
prod
test
staging
api
web
...

다음과 같은 조합이 생성됩니다:

  • devmyapp
  • myappdev
  • prodmyapp
  • myapp-prod
  • 등

데이터베이스

결과는 다음 스키마를 사용하여 azure_tenants.db (SQLite)에 저장됩니다:

  • resource_uri: 발견된 리소스 URL
  • resource_type: Azure 서비스 유형
  • tenant_id: 추출된 테넌트 ID
  • discovered_at: 발견 시각

📊 출력 예시

콘솔 출력

root@kitploit:~
2025-06-27 14:37:39 - INFO - Found Storage Account tenant ID 72f988bf-86f1-41af-91ab-2d7cd011db47 for mars
2025-06-27 14:37:40 - INFO - Found App Service SCM tenant ID 'common' for notarealapplication
2025-06-27 14:37:47 - INFO - Found Key Vault tenant ID 72f988bf-86f1-41af-91ab-2d7cd011db47 for mdo

데이터베이스 목록

root@kitploit:~
Resource URI                             Type            Tenant ID                      	  Discovered At
-----------------------------------------------------------------------------------------------------------------
hanover.scm.azurewebsites.net            AppServices-SCM 72f988bf-86f1-41af-91ab-2d7cd011db47 2025-06-27 21:37:41
dev.azure.com/microsoft                  DevOps          72f988bf-86f1-41af-91ab-2d7cd011db47 2025-06-27 21:37:12
mdo.vault.azure.net                      KeyVault        72f988bf-86f1-41af-91ab-2d7cd011db47 2025-06-27 21:37:47
mars.blob.core.windows.net               StorageAccount  72f988bf-86f1-41af-91ab-2d7cd011db47 2025-06-27 21:37:46

🔍 작동 방식

  1. DNS 검증: 리소스에 대한 DNS 레코드가 존재하는지 확인합니다
  2. 서비스 프로빙: 해당 Azure 서비스 엔드포인트에 HTTP 요청을 전송합니다
  3. 응답 분석: 리소스에 따라 다음에서 테넌트 ID를 추출합니다:
    • WWW-Authenticate 헤더
    • OAuth 리디렉션 URL
    • 응답 헤더
    • 오류 메시지
  4. 데이터 저장: SQLite 데이터베이스에 결과를 저장합니다
  5. 내보내기: 다양한 형식으로 보고서를 생성합니다

🛡️ 보안 고려 사항

  • 비율 제한: 도구에 지연 시간이 포함되어 있으며 서비스 한도를 준수합니다
  • 오류 처리: 시간 초과 및 오류를 원활하게 처리합니다
  • 로깅: 감사 추적을 위한 상세 로그를 제공합니다
  • 비간섭적: 인증 없이 표준 HTTP 요청을 사용하여 익명 열거를 수행합니다

⚠️ 중요: 리소스를 스캔하기 전에 항상 적절한 권한을 보유하고 있는지 확인하세요. 무단 스캔은 서비스 약관 또는 관련 법률을 위반할 수 있습니다.

🐛 문제 해결

디버그 모드

자세한 정보를 위해 상세 로깅을 활성화할 수 있지만, 출력이 다소 과할 수 있습니다:

root@kitploit:~
python ateam.py -f resources.txt -v

순열 관련 메모리 문제

순열을 사용할 때 "killed" 메시지가 표시되면 배치 크기를 줄여 보세요:

root@kitploit:~
python ateam.py -f resources.txt -p -b 100 -w 5

이렇게 하면 메모리 고갈을 방지하기 위해 더 적은 수의 동시 워커로 리소스를 더 작은 배치로 처리합니다.

🤝 기여

기여를 환영합니다! 다음을 자유롭게 제출해 주세요:

  • 버그 보고
  • 기능 요청
  • 코드 개선
  • 문서 업데이트

관련 블로그

  • 우리는 지난 여름 (Azure에서) 당신이 무엇을 했는지 알고 있습니다

발표 자료

  • 우리는 지난 여름 (Azure에서) 당신이 무엇을 했는지 알고 있습니다 - DEF CON 33 - Cloud Village
    • 슬라이드
도구 다운로드
옵션설명예시
-f, --file리소스가 포함된 파일 (한 줄에 하나씩)-f resources.txt
-r, --resources공백으로 구분된 리소스 목록-r "app1" "app2"
-w, --workers동시 워커 수 (기본값: 10)-w 20
-b, --batch-size배치당 리소스 수 (기본값: 1000)-b 100
-v, --verbose상세 로깅 활성화-v
-l, --list모든 데이터베이스 항목 나열-l
-e, --export결과 내보내기 (csv, json, html)-e html
--clear스캔 전 데이터베이스 초기화--clear
-t, --tenant테넌트 ID로 결과 필터링-t "tenant-id"
-p, --permutations리소스 이름 순열 생성-p