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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
azure-security-auditor — Azure 보안 상태, RBAC, NSG, 스토리지, ID 및 암호화를 감사하는 CLI 도구 | Kitploit
도구/GitHubGitHub/neelkotnis/azure-security-auditor
Cloud Infrastructure SecurityDefensive ToolsConfiguration AuditingNetwork SecurityCloud SecurityDevSecOpsIdentity & Access Management (IAM)Misconfiguration
GitHubneelkotnis/azure-security-auditor

azure-security-auditor

Azure 보안 상태, RBAC, NSG, 스토리지, ID 및 암호화를 감사하는 CLI 도구

저장소 보기
122일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Azure Security Posture Auditor

Azure 보안 구성을 감사하고 일반적인 잘못된 구성을 표면화하는 가볍고 프로덕션 스타일의 CLI 도구입니다. Microsoft Defender for Cloud가 내부적으로 수행하는 검사를 그대로 반영합니다.

점검 항목

ID카테고리점검 항목심각도
AZ-001RBAC구독 범위에 Owner / Contributor 할당됨CRITICAL
AZ-002RBAC리소스 그룹 범위에 Owner / Contributor 할당됨HIGH
AZ-003네트워크0.0.0.0/0 인바운드 허용 규칙이 있는 NSGHIGH
AZ-004스토리지공용 Blob 액세스가 활성화된 스토리지 계정HIGH
AZ-005IDMFA가 등록되지 않은 Entra ID 사용자HIGH
AZ-006IDOwner / Contributor 권한이 있는 서비스 주체HIGH
AZ-007암호화명시적 암호화 구성이 없는 관리 디스크MEDIUM
AZ-008암호화방화벽 제한 없이 공용 네트워크에 노출된 Key VaultHIGH
AZ-009모니터링활동 로그 보존 기간 90일 미만MEDIUM
AZ-010모니터링핵심 리소스 유형에서 Microsoft Defender for Cloud가 활성화되지 않음HIGH
AZ-011모니터링진단 로깅이 활성화되지 않은 Key VaultMEDIUM
AZ-012컴퓨팅공용 IP가 직접 연결된 Virtual MachineMEDIUM
AZ-013컴퓨팅엔드포인트 보호 확장이 없는 Virtual MachineMEDIUM
AZ-014컴퓨팅Azure Disk Encryption(ADE)이 적용되지 않은 Virtual Machine OS 디스크MEDIUM
AZ-015네트워크NSG를 통해 인터넷에 노출된 RDP 포트 3389CRITICAL
AZ-016네트워크NSG를 통해 인터넷에 노출된 SSH 포트 22CRITICAL
AZ-017스토리지HTTPS가 아닌 트래픽을 허용하는 스토리지 계정HIGH
AZ-018스토리지레거시 TLS 버전(1.2 미만)을 허용하는 스토리지 계정MEDIUM
AZ-019IDEntra ID 테넌트에 존재하는 게스트 사용자 계정LOW
AZ-020암호화일시 삭제 또는 제거 보호가 없는 Key VaultMEDIUM

요구 사항

  • Python 3.10+
  • Azure 자격 증명이 구성되어 있어야 함 — 다음 중 하나:
    • az login (Azure CLI)
    • 환경 변수: AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_TENANT_ID
    • 관리 ID(Azure에서 실행되는 경우)
  • 필요한 Azure RBAC 권한: 구독에 대한 Reader
  • 필요한 Microsoft Graph 권한(AZ-005, AZ-006, AZ-019용):
    • UserAuthenticationMethod.Read.All
    • Application.Read.All

Graph API 권한을 사용할 수 없는 경우 ID 점검(AZ-005, AZ-019)은 정상적으로 건너뜁니다. 나머지 감사는 영향을 받지 않고 실행됩니다.

설치

root@kitploit:~
pip install -e .

사용법

root@kitploit:~
# Full audit — all checks, all severities
azure-auditor

# Target a specific subscription
azure-auditor --subscription <subscription-id>

# Show only HIGH and CRITICAL findings
azure-auditor --severity HIGH

# Save JSON report to a specific directory
azure-auditor --output-dir ./reports

# Terminal output only
azure-auditor --no-json

# Verbose logging
azure-auditor --verbose

또는 설치하지 않고:

root@kitploit:~
PYTHONPATH=src python -m azure_security_auditor.cli --subscription <id>

출력

터미널 — 심각도순(CRITICAL 우선)으로 정렬된 Rich 형식 테이블:

root@kitploit:~
╭──────────────────────────────────────────────────────────────────╮
│                    Azure Security Posture Audit                   │
│  Subscription:  My Production Subscription                        │
│  ID:            xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx             │
│  Run at:        2026-07-12T10:00:00Z                              │
│  Findings:      12 total  (2 CRITICAL  6 HIGH  4 MEDIUM  0 LOW)  │
╰──────────────────────────────────────────────────────────────────╯

 Severity    Check ID  Check                                     Resource         Detail
 ✖ CRITICAL  AZ-015    RDP Port 3389 Exposed to Internet...      /subscriptions/. ...
 ✖ CRITICAL  AZ-001    Owner Role Assigned at Subscription...    <principal-id>   ...
 ■ HIGH      AZ-010    Defender for Cloud Not Enabled — VMs      /subscriptions/. ...
 ...

JSON — reports/azure_audit_<subscription>_<timestamp>.json 파일로 저장됩니다.

프로젝트 구조

root@kitploit:~
src/
  azure_security_auditor/
    cli.py                      # argparse entrypoint
    engine.py                   # ThreadPoolExecutor orchestrator
    models.py                   # Finding, AuditResult, Severity
    checks/
      rbac.py                   # AZ-001, AZ-002
      network.py                # AZ-003, AZ-015, AZ-016
      storage.py                # AZ-004, AZ-017, AZ-018
      identity.py               # AZ-005, AZ-019
      service_principals.py     # AZ-006
      encryption.py             # AZ-007, AZ-008, AZ-020
      monitoring.py             # AZ-009, AZ-010, AZ-011
      compute.py                # AZ-012, AZ-013, AZ-014
    reporters/
      terminal.py               # Rich table output
      json_reporter.py          # JSON file output

인증

DefaultAzureCredential을 사용하며 다음 순서로 시도합니다:

  1. 환경 변수(AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_TENANT_ID)
  2. Azure CLI(az login)
  3. 관리 ID

CI/CD (서비스 주체)

root@kitploit:~
export AZURE_CLIENT_ID="<app-id>"
export AZURE_CLIENT_SECRET="<secret>"
export AZURE_TENANT_ID="<tenant-id>"
azure-auditor --subscription <subscription-id>
도구 다운로드