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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
EvilMist — EvilMist is a collection of scripts and utilities designed to support cloud penetration testing & red teaming. The toolkit helps identify misconfigurations, assess privilege-escalation paths, and simulate attack techniques. EvilMist aims to streamline cloud-focused red-team workflows and improve the overall security posture of cloud infrastructures | Kitploit
도구/GitHubGitHub/logisek/evilmist
Privilege EscalationReconnaissanceVulnerability AnalysisInformation GatheringPenetration TestingCloud SecurityIdentity & Access Management (IAM)AuthenticationMisconfigurationRed Teaming
GitHublogisek/evilmist
161225개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →

소개

EvilMist is a collection of scripts and utilities designed to support cloud penetration testing & red teaming. The toolkit helps identify misconfigurations, assess privilege-escalation paths, and simulate attack techniques. EvilMist aims to streamline cloud-focused red-team workflows and improve the overall security posture of cloud infrastructures

EvilMist

저장소 보기
공유
EvilMist 로고

EvilMist

EvilMist는 클라우드 보안 구성 감사, 클라우드 침투 테스트 및 클라우드 레드 팀 운영을 지원하도록 설계된 스크립트 및 유틸리티 모음입니다. 이 툴킷은 잘못된 구성을 식별하고, 권한 상승 경로를 평가하며, 공격 기술을 시뮬레이션하는 데 도움을 줍니다. EvilMist는 클라우드 중심의 레드 팀 워크플로우를 간소화하고 클라우드 인프라의 전반적인 보안 태세를 개선하는 것을 목표로 합니다.


도구

인증되지 않은 Entra ID 열거

인증되지 않은 Azure/Entra ID 열거 및 정찰 도구입니다. 인증 토큰 없이 공개적으로 접근 가능한 API 및 DNS 쿼리를 사용하여 수동/반수동 열거를 수행합니다.

주요 기능:

  • 인증 불필요 - Azure 토큰 또는 자격 증명 없이 작동
  • 테넌트 검색 - azmap.dev 및 OpenID 구성을 통해 테넌트 ID, 이름, 지역 검색
  • 도메인 영역 분석 - 관리형(Manged) vs 페더레이션(Federated) 인증 식별
  • 사용자 존재 확인 - GetCredentialType API를 통한 이메일 주소 확인
  • DNS 정찰 - MX, SPF, TXT, CNAME, SRV, Autodiscover 레코드 열거
  • 포트 스캔 - 일반적인 Azure 포트(HTTPS, LDAP, Kerberos, RDP) 확인
  • 스텔스 모드 - 속도 제한 회피를 위한 구성 가능한 지연 및 지터
  • 내보내기 옵션 - JSON 및 CSV 내보내기 형식
버전문서파일
PowerShellEntraEnum-PS1.mdscripts/powershell/Invoke-EntraEnum.ps1

Enumerate-EntraUsers

포괄적인 Azure Entra ID(Azure AD) 사용자 열거 및 보안 평가 도구로, PowerShell 및 Python 버전으로 제공됩니다.

주요 기능:

  • 15개 이상의 사용자 열거 방법 - 직접 /users 접근이 차단된 경우에도 작동
  • 보안 평가 - MFA 상태, 권한 있는 역할, 오래된 계정, 게스트 사용자
  • 자격 증명 공격 표면 - SSPR, 레거시 인증, 앱 비밀번호 분석
  • 조건부 액세스 분석 - 정책 열거 및 격차 탐지
  • 장치 및 Intune 열거 - 관리 장치, 규정 준수 정책
  • 공격 경로 분석 - 권한 상승 경로 및 측면 이동
  • Power Platform - Power Apps 및 Power Automate 흐름 열거
  • 내보내기 옵션 - BloodHound/AzureHound JSON, HTML 보고서, CSV/JSON
  • 스텔스 모드 - 탐지 회피를 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraRecon-PS1.mdscripts/powershell/Invoke-EntraRecon.ps1
PythonEntraRecon-PY.md

MFA 보안 점검

MFA(Multi-Factor Authentication)가 활성화되지 않은 Azure Entra ID 사용자를 식별하기 위한 집중 보안 평가 도구입니다. 공유 사서함 탐지 및 로그인 활동 분석을 위한 고급 기능을 포함합니다.

주요 기능:

  • MFA 탐지 - 강력한 인증 방법이 없는 사용자 식별
  • 마지막 로그인 추적 - 마지막 로그인 날짜/시간 및 활동 패턴 표시
  • 공유 사서함 탐지 - 공유 사서함 계정 자동 식별 및 필터링
  • 로그인 가능 여부 확인 - 계정이 실제로 인증할 수 있는지 확인
  • 위험 평가 - 사용자를 위험 수준(HIGH/MEDIUM/LOW)으로 분류
  • 활동 분석 - 로그인 통계, 부서별 분석, 오래된 계정
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 내보내기 옵션 - 포괄적인 사용자 세부 정보를 포함한 CSV/JSON
  • 스텔스 모드 - 탐지 회피를 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraMFACheck-PS1.mdscripts/powershell/Invoke-EntraMFACheck.ps1

게스트 계정 열거

Azure Entra ID의 외부 사용자를 식별, 분석 및 보안 태세를 평가하기 위한 포괄적인 게스트 계정 분석 도구입니다. 게스트 액세스 거버넌스 및 보안 감사에 필수적입니다.

주요 기능:

  • 게스트 계정 검색 - 테넌트의 모든 게스트 사용자 열거
  • MFA 상태 탐지 - MFA가 없는 게스트 식별
  • 마지막 로그인 추적 - 게스트의 로그인 날짜/시간 및 활동 패턴 표시
  • 게스트 도메인 추출 - 게스트 사용자의 원본 조직 식별
  • 초대 상태 추적 - 수락됨, 보류 중 또는 만료된 초대 표시
  • 위험 평가 - 게스트를 위험 수준(HIGH/MEDIUM/LOW)으로 분류
  • 활동 분석 - 로그인 통계, 오래된 계정, 사용되지 않은 초대
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 필터링 옵션 - MFA가 없는 게스트만 표시하거나 비활성화된 계정 포함
  • 내보내기 옵션 - 포괄적인 게스트 세부 정보를 포함한 CSV/JSON
  • 스텔스 모드 - 탐지 회피를 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraGuestCheck-PS1.mdscripts/powershell/Invoke-EntraGuestCheck.ps1

중요 관리 액세스 점검

PowerShell 도구, 관리 포털, 핵심 Microsoft 365 서비스, 권한 있는 ID 관리를 포함한 10개의 중요 관리 애플리케이션에 대한 액세스 권한이 있는 Azure Entra ID 사용자를 식별하는 포괄적인 보안 평가 도구입니다. 권한 있는 액세스 거버넌스 및 관리 도구 감사에 필수적입니다.

주요 기능:

  • 중요 액세스 검색 - 모든 계층의 관리 애플리케이션에 대한 액세스 권한이 있는 사용자 열거
  • 명시적 할당 중심 - 상승된/관리자 액세스 권한이 있는 사용자 표시(기본 사용자 액세스 제외)
  • 기본 액세스 탐지 - 기본 액세스 권한이 있는 앱 자동 탐지 및 경고
  • 보안 중심 결과 - 권한 있는 사용자에 초점을 맞추기 위해 기본 사용자 액세스 노이즈 제거
  • 다중 애플리케이션 적용 범위 - 10가지 중요 앱 추적: Azure/AD PowerShell, Azure CLI, Graph 도구, M365/Azure 포털, Exchange/SharePoint Online, PIM
  • MFA 상태 탐지 - MFA가 없는 권한 있는 사용자 식별
  • 마지막 로그인 추적 - 로그인 날짜/시간 및 활동 패턴 표시
  • 할당 추적 - 사용자에게 관리 액세스 권한이 부여된 시점 표시
  • 위험 평가 - 사용자를 위험 수준(HIGH/MEDIUM/LOW)으로 분류
  • 활동 분석 - 로그인 통계, 오래된 계정, 비활성 사용자
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 필터링 옵션 - MFA가 없는 사용자만 표시하거나 비활성화된 계정 포함
  • 내보내기 옵션 - 포괄적인 액세스 세부 정보를 포함한 CSV/JSON
  • 스텔스 모드 - 탐지 회피를 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraAppAccess-PS1.mdscripts/powershell/Invoke-EntraAppAccess.ps1

빠른 시작

스크립트 디스패처 (PowerShell)

하위 폴더로 이동하지 않고 루트 디렉터리에서 모든 스크립트 실행:```powershell

Interactive mode - shows menu to select script

.\Invoke-EvilMist.ps1

Execute specific script directly

.\Invoke-EvilMist.ps1 -Script EntraRecon -ExportPath "users.csv"

List all available scripts

.\Invoke-EvilMist.ps1 -List

Execute with any parameters (all passed through to target script)

.\Invoke-EvilMist.ps1 -Script EntraMFACheck -Matrix -OnlyNoMFA

root@kitploit:~
**사용 가능한 스크립트:** EntraEnum, EntraRecon, EntraMFACheck, EntraGuestCheck, EntraAppAccess, EntraRoleCheck, EntraServicePrincipalCheck, EntraConditionalAccessCheck, EntraAdminUnitCheck, EntraStaleAccountCheck, EntraDeviceCheck, EntraSSPRCheck, EntraPasswordPolicyCheck, EntraLegacyAuthCheck, EntraLicenseCheck, EntraDirectorySyncCheck, EntraPowerPlatformCheck, EntraGroupCheck, EntraApplicationCheck, EntraAttackPathCheck, EntraAzureRBACCheck, EntraOAuthConsentCheck, EntraSignInRiskCheck, EntraPIMCheck, EntraKeyVaultCheck, EntraStorageAccountCheck, EntraNetworkSecurityCheck, EntraManagedIdentityCheck, EntraExchangeCheck, EntraSharePointCheck, EntraTeamsCheck, EntraAzureAttackPathCheck, EntraReport, EntraComplianceCheck, SharePointEnum

### 인증되지 않은 Entra ID 열거 (PowerShell)

**요구 사항:** PowerShell 7+ (추가 모듈 불필요)```powershell
# Basic domain enumeration (TenantInfo, DomainRealm, DNS)
.\Invoke-EvilMist.ps1 -Script EntraEnum -Domain example.com

# Check if email exists
.\Invoke-EvilMist.ps1 -Script EntraEnum -Email [email protected] -UserEnum

# Bulk user enumeration from file
.\Invoke-EvilMist.ps1 -Script EntraEnum -EmailList users.txt -UserEnum -Throttle 1

# Full enumeration with export
.\Invoke-EvilMist.ps1 -Script EntraEnum -Domain example.com -All -ExportPath results.json

# Stealth mode
.\Invoke-EvilMist.ps1 -Script EntraEnum -Domain example.com -All -EnableStealth

📖 전체 문서: EntraEnum-PS1.md

Enumerate-EntraUsers (PowerShell)

요구 사항: PowerShell 7+```powershell

Using dispatcher (recommended)

.\Invoke-EvilMist.ps1 -Script EntraRecon

With Azure CLI token

.\Invoke-EvilMist.ps1 -Script EntraRecon -UseAzCliToken

Export all users

.\Invoke-EvilMist.ps1 -Script EntraRecon -ExportPath "users.csv"

Stealth mode

.\Invoke-EvilMist.ps1 -Script EntraRecon -EnableStealth

root@kitploit:~
### Enumerate-EntraUsers (Python)

**요구 사항:** Python 3.8+, `msal`, `requests`

📖 **전체 문서:** [EntraRecon-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraRecon-PS1.md)```bash
# Install dependencies
pip install -r requirements.txt

# Run directly from subfolder
python scripts\python\entra_recon.py

📖 전체 문서: EntraRecon-PY.md

MFA 보안 검사 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Using dispatcher (recommended)

.\Invoke-EvilMist.ps1 -Script EntraMFACheck

Scan for users without MFA

.\Invoke-EvilMist.ps1 -Script EntraMFACheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraMFACheck -ExportPath "no-mfa-users.csv"

Matrix view with all features

.\Invoke-EvilMist.ps1 -Script EntraMFACheck -Matrix -IncludeDisabledUsers

Stealth mode

.\Invoke-EvilMist.ps1 -Script EntraMFACheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraMFACheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraMFACheck-PS1.md)

### 게스트 계정 열거 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph 모듈```powershell
# Enumerate all guest accounts
.\Invoke-EvilMist.ps1 -Script EntraGuestCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraGuestCheck -ExportPath "guest-accounts.csv"

# Show only guests without MFA in matrix view
.\Invoke-EvilMist.ps1 -Script EntraGuestCheck -Matrix -OnlyNoMFA

# Include disabled guests with stealth mode
.\Invoke-EvilMist.ps1 -Script EntraGuestCheck -IncludeDisabledGuests -EnableStealth -QuietStealth

📖 전체 문서: EntraGuestCheck-PS1.md

중요 관리자 액세스 확인 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Check users with critical administrative access (10 apps)

.\Invoke-EvilMist.ps1 -Script EntraAppAccess

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraAppAccess -ExportPath "app-access.csv"

Show only users without MFA in matrix view

.\Invoke-EvilMist.ps1 -Script EntraAppAccess -Matrix -OnlyNoMFA

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraAppAccess -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraAppAccess-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraAppAccess-PS1.md)

### 권한 있는 역할 확인 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph 모듈```powershell
# Check users with privileged directory roles
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck -ExportPath "privileged-roles.csv"

# Show only users without MFA in matrix view
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck -Matrix -OnlyNoMFA

# Show only permanent (non-PIM) assignments
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck -OnlyPermanent -ExportPath "permanent-admins.csv"

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraRoleCheck-PS1.md

서비스 주체 보안 점검 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Check all service principals and analyze security posture

.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck -ExportPath "service-principals.csv"

Show only service principals with expired credentials in matrix view

.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck -Matrix -OnlyExpiredCredentials

Show only high-permission service principals

.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck -OnlyHighPermission -ExportPath "high-perm-sp.csv"

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraServicePrincipalCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraServicePrincipalCheck-PS1.md)

**주요 기능:**
- **포괄적인 역할 적용 범위** - 모든 디렉토리 역할(CRITICAL, HIGH, MEDIUM, LOW 위험 수준 포함)을 열거합니다.
- **PIM 지원** - 영구(활성) 및 PIM 관리(적격/활성) 역할 할당을 모두 식별합니다.
- **할당 추적** - 할당 날짜, 기간 및 만료 날짜를 표시합니다.
- **MFA 상태 감지** - 다단계 인증(MFA)이 없는 권한 있는 사용자를 식별합니다.
- **마지막 로그인 추적** - 로그인 날짜/시간 및 활동 패턴을 표시합니다.
- **위험 평가** - 역할 중요도와 보안 태세를 기반으로 사용자를 위험 수준별로 분류합니다.
- **활동 분석** - 로그인 통계, 오래된 계정, 비활성 사용자.
- **매트릭스 보기** - 빠른 시각적 스캔을 위한 간결한 테이블 형식.
- **필터링 옵션** - MFA가 없는 사용자, 영구 할당만 표시 또는 비활성화된 계정 포함.
- **내보내기 옵션** - 포괄적인 역할 할당 세부 정보가 포함된 CSV/JSON.
- **스텔스 모드** - 탐지를 피하기 위해 구성 가능한 지연 및 지터.

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraServicePrincipalCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraServicePrincipalCheck-PS1.md) | `scripts/powershell/Invoke-EntraServicePrincipalCheck.ps1` |

---

### 애플리케이션 등록 보안 점검 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph 모듈```powershell
# Check all application registrations and analyze security posture
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -ExportPath "applications.csv"

# Show only applications with expired credentials in matrix view
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -Matrix -OnlyExpiredCredentials

# Show only high-permission applications
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -OnlyHighPermission -ExportPath "high-perm-apps.csv"

# Show only applications with credentials
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -OnlyWithCredentials -ExportPath "apps-with-creds.csv"

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraApplicationCheck-PS1.md

주요 기능:

  • 포괄적인 애플리케이션 열거 - 테넌트 내 모든 애플리케이션 등록을 열거합니다.
  • 자격 증명 분석 - 비밀 및 인증서가 있는 애플리케이션을 식별합니다.
  • 만료 추적 - 만료되었거나 곧 만료될(≤30일) 자격 증명을 감지합니다.
  • API 권한 분석 - 고위험 및 중요 권한이 있는 애플리케이션을 식별합니다.
  • 소유자 보안 평가 - 앱 소유자와 그들의 MFA 상태를 확인합니다.
  • 위험 평가 - 권한 및 자격 증명에 따라 애플리케이션을 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류합니다.
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 필터링 옵션 - 자격 증명이 있거나, 만료된 자격 증명이 있거나, 높은 권한이 있는 앱만 표시합니다.
  • 내보내기 옵션 - 포괄적인 애플리케이션 세부 정보를 포함한 CSV/JSON
  • 스텔스 모드 - 감지를 피하기 위한 구성 가능한 딜레이 및 지터
버전문서파일
PowerShellEntraApplicationCheck-PS1.mdscripts/powershell/Invoke-EntraApplicationCheck.ps1

조건부 액세스 정책 보안 검사 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Analyze all Conditional Access policies

.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck -ExportPath "ca-policies.csv"

Show only policies with exclusions in matrix view

.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck -Matrix -OnlyWithExclusions

Show only policies without MFA enforcement

.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck -OnlyMFAgaps -ExportPath "mfa-gaps.csv"

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraConditionalAccessCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraConditionalAccessCheck-PS1.md)

### 관리 단위 보안 점검 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph modules```powershell
# Analyze all Administrative Units and scoped role assignments
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck -ExportPath "admin-units.csv"

# Show only scoped administrators without MFA in matrix view
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck -Matrix -OnlyNoMFA

# Include disabled accounts
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck -IncludeDisabledUsers -ExportPath "all-admins.csv"

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraAdminUnitCheck-PS1.md

주요 기능:

  • 관리 단위 열거 - 구성 세부 정보와 함께 모든 관리 단위를 열거합니다.
  • 범위 지정 역할 할당 분석 - 모든 범위 지정 관리자와 그 역할을 식별합니다.
  • 멤버 열거 - 관리 단위 멤버와 역할을 표시합니다.
  • MFA 상태 탐지 - 다중 인증(MFA)이 없는 범위 지정 관리자를 식별합니다.
  • 마지막 로그인 추적 - 로그인 날짜/시간 및 활동 패턴을 표시합니다.
  • 위험 평가 - 범위 지정 관리자 액세스를 기준으로 할당을 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)별로 분류합니다.
  • 활동 분석 - 로그인 통계, 오래된 계정, 비활성 관리자
  • 매트릭스 뷰 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 필터 옵션 - MFA가 없는 관리자만 표시하거나 비활성화된 계정 포함
  • 내보내기 옵션 - 포괄적인 범위 지정 할당 세부 정보가 포함된 CSV/JSON
  • 스텔스 모드 - 탐지 회피를 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraAdminUnitCheck-PS1.mdscripts/powershell/Invoke-EntraAdminUnitCheck.ps1

오래된 계정 확인 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Identify stale accounts and account hygiene issues

.\Invoke-EvilMist.ps1 -Script EntraStaleAccountCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraStaleAccountCheck -ExportPath "stale-accounts.csv"

Include disabled accounts in matrix view

.\Invoke-EvilMist.ps1 -Script EntraStaleAccountCheck -IncludeDisabledUsers -Matrix

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraStaleAccountCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraStaleAccountCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraStaleAccountCheck-PS1.md)

**주요 기능:**
- **오래된 계정 감지** - 최근 90일 이상 로그인하지 않은 계정 식별
- **로그인 이력 없는 계정 감지** - 한 번도 사용되지 않은 계정 검색
- **라이선스 낭비 감지** - 비활성화되었으나 라이선스가 할당된 계정 식별
- **암호 만료 추적** - 암호가 만료된 계정 감지
- **계정 연령 분석** - 계정 연령 계산 및 비활성과의 상관 관계 분석
- **위험 평가** - 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)별 계정 분류
- **활동 분석** - 로그인 통계, 오래된 계정 분석
- **매트릭스 보기** - 빠른 시각적 스캔을 위한 간결한 테이블 형식
- **필터 옵션** - 비활성화된 계정 포함 또는 제외
- **내보내기 옵션** - 포괄적인 계정 세부 정보가 포함된 CSV/JSON
- **스텔스 모드** - 탐지 방지를 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraStaleAccountCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraStaleAccountCheck-PS1.md) | `scripts/powershell/Invoke-EntraStaleAccountCheck.ps1` |

---

### 디바이스 신뢰 및 규정 준수 확인 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph 모듈```powershell
# Analyze all registered devices
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -ExportPath "devices.csv"

# Show only non-compliant devices in matrix view
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -Matrix -OnlyNonCompliant

# Show only BYOD devices
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -OnlyBYOD -ExportPath "byod-devices.csv"

# Show only devices with stale sign-ins
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -OnlyStale -ExportPath "stale-devices.csv"

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -EnableStealth -QuietStealth

📖 Full documentation: EntraDeviceCheck-PS1.md

주요 기능:

  • 포괄적인 장치 열거 - 테넌트의 모든 등록된 장치를 열거합니다.
  • 준수 상태 탐지 - 규정 준수, 비준수 및 알 수 없는 준수 장치를 식별합니다.
  • BYOD 탐지 - 개인/BYOD 장치를 자동으로 식별합니다.
  • 오래된 로그인 탐지 - 오래된 로그인(>90일)이 있는 장치를 식별합니다.
  • 장치 신뢰 분석 - 조인 유형(Azure AD Joined, Hybrid Joined, Registered)을 분석합니다.
  • 관리 상태 - 관리되는 장치와 관리되지 않는 장치를 식별합니다.
  • Intune 준수 정책 - Intune 준수 정책 및 할당을 열거합니다.
  • 위험 평가 - 준수 격차 및 신뢰 문제를 기반으로 장치를 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류합니다.
  • 활동 분석 - 로그인 통계, 오래된 장치, 등록 날짜
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 필터링 옵션 - 비준수, BYOD 또는 오래된 장치만 표시
  • 내보내기 옵션 - 포괄적인 장치 세부 정보를 포함한 CSV/JSON
  • 스텔스 모드 - 탐지를 방지하기 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraDeviceCheck-PS1.mdscripts/powershell/Invoke-EntraDeviceCheck.ps1

셀프 서비스 암호 재설정 확인 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Check users with SSPR enabled

.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck -ExportPath "sspr-users.csv"

Show only users without backup methods in matrix view

.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck -Matrix -OnlyNoBackup

Include disabled users

.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck -IncludeDisabledUsers -ExportPath "all-sspr-users.csv"

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraSSPRCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraSSPRCheck-PS1.md)

**주요 기능:**
- **SSPR 상태 감지** - SSPR이 활성화, 등록 또는 가능한 사용자를 식별합니다.
- **등록 방법 분석** - SSPR에 대한 등록된 인증 방법을 분석합니다.
- **백업 방법 감지** - 백업 방법이 구성되지 않은 사용자를 식별합니다.
- **강력한 방법 감지** - 강력한 인증 방법과 약한 인증 방법을 구분합니다.
- **MFA 상태 상관 관계** - SSPR 구성을 MFA 상태와 상호 참조합니다.
- **마지막 로그인 추적** - 로그인 날짜/시간 및 활동 패턴을 표시합니다.
- **위험 평가** - SSPR 구성을 기반으로 사용자를 위험 수준(HIGH/MEDIUM/LOW)으로 분류합니다.
- **활동 분석** - 로그인 통계, 오래된 계정, 비활성 사용자
- **행렬 보기** - 빠른 시각적 스캔을 위한 간결한 테이블 형식
- **필터링 옵션** - 백업 방법이 없는 사용자만 표시하거나 비활성화된 계정 포함
- **내보내기 옵션** - 포괄적인 SSPR 세부 정보가 포함된 CSV/JSON
- **스텔스 모드** - 탐지를 피하기 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraSSPRCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraSSPRCheck-PS1.md) | `scripts/powershell/Invoke-EntraSSPRCheck.ps1` |

---

### 암호 정책 보안 점검 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph 모듈```powershell
# Analyze all password policies
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck -ExportPath "password-policies.csv"

# Show only users with weak password policies in matrix view
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck -Matrix -OnlyWeakPolicies

# Show only users with password never expires
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck -OnlyNeverExpires -ExportPath "never-expires.csv"

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraPasswordPolicyCheck-PS1.md

핵심 기능:

  • 비밀번호 만료 분석 - 사용자별 비밀번호 만료 정책 확인
  • 만료 없음 감지 - '비밀번호 만료 없음' 플래그가 설정된 사용자 식별
  • 복잡성 요구 사항 - 비밀번호 복잡성 요구 사항 확인(강력한 비밀번호 적용)
  • 취약 정책 탐지 - 취약한 비밀번호 정책을 가진 사용자 식별
  • 비밀번호 사용 기간 추적 - 비밀번호 사용 기간 및 만료 위험 계산
  • 위험 평가 - 정책 강도에 따라 사용자를 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류
  • 활동 분석 - 로그인 통계, 비밀번호 사용 기간 분석, 정책 격차
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 필터링 옵션 - 취약한 정책 또는 만료되지 않는 계정만 표시
  • 내보내기 옵션 - 포괄적인 정책 세부 정보가 포함된 CSV/JSON
  • 스텔스 모드 - 탐지를 피하기 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraPasswordPolicyCheck-PS1.mdscripts/powershell/Invoke-EntraPasswordPolicyCheck.ps1

레거시 인증 확인 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Analyze all legacy authentication usage

.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck -ExportPath "legacy-auth.csv"

Show only recent usage (last 30 days) in matrix view

.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck -Matrix -OnlyRecent

Include disabled accounts

.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck -IncludeDisabledUsers -ExportPath "all-legacy-users.csv"

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraLegacyAuthCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraLegacyAuthCheck-PS1.md)

**주요 기능:**
- **레거시 프로토콜 탐지** - 10가지 레거시 인증 프로토콜(IMAP, POP3, SMTP, Exchange ActiveSync 등)을 식별합니다.
- **로그인 로그 분석** - 감사 로그에서 레거시 인증 사용(최근 90일)을 쿼리합니다.
- **마지막 사용 추적** - 마지막 레거시 인증 날짜와 시간을 표시합니다.
- **프로토콜 통계** - 프로토콜별 성공/실패 로그인을 추적합니다.
- **MFA 상태 탐지** - 레거시 인증을 사용하는 다단계 인증(MFA)이 없는 사용자를 식별합니다.
- **위험 평가** - 사용 패턴과 최근성을 기준으로 사용자를 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류합니다.
- **활동 분석** - 로그인 통계, 프로토콜 분석, 사용 최근성
- **매트릭스 보기** - 빠른 시각적 스캔을 위한 컴팩트 테이블 형식
- **필터링 옵션** - 최근 사용만 표시하거나 비활성화된 계정 포함
- **내보내기 옵션** - 포괄적인 레거시 인증 세부 정보를 포함한 CSV/JSON
- **스텔스 모드** - 탐지를 피하기 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraLegacyAuthCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraLegacyAuthCheck-PS1.md) | `scripts/powershell/Invoke-EntraLegacyAuthCheck.ps1` |

---

### 라이선스 및 SKU 분석 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph 모듈```powershell
# Analyze all license SKUs and user assignments
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck -ExportPath "licenses.csv"

# Show only users with privileged licenses (E5, P2) in matrix view
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck -Matrix -OnlyPrivilegedLicenses

# Show only unused license assignments
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck -OnlyUnusedLicenses -ExportPath "unused-licenses.csv"

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraLicenseCheck-PS1.md

주요 기능:

  • 테넌트 SKU 열거 - 구독 중인 모든 라이선스 SKU와 그 사용량을 나열합니다.
  • 사용자 라이선스 할당 추적 - 라이선스가 할당된 모든 사용자를 식별합니다.
  • 권한 있는 라이선스 감지 - E5, P2 및 기타 고권한 라이선스를 자동으로 식별합니다.
  • 미사용 라이선스 감지 - 한 번도 로그인하지 않은 사용자에게 할당된 라이선스를 식별합니다.
  • 위험 평가 - 라이선스 권한에 따라 라이선스 할당을 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류합니다.
  • 라이선스 사용 분석 - 사용 통계, 미사용 라이선스 추적, SKU 분석.
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식.
  • 필터 옵션 - 권한 있는 라이선스만 표시, 미사용 라이선스만 표시 또는 비활성화된 계정 포함.
  • 내보내기 옵션 - 포괄적인 라이선스 세부 정보를 포함한 CSV/JSON.
  • 스텔스 모드 - 감지를 피하기 위한 구성 가능한 지연 및 지터.
버전문서파일
PowerShellEntraLicenseCheck-PS1.mdscripts/powershell/Invoke-EntraLicenseCheck.ps1

디렉터리 동기화 상태 확인 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Check directory sync status for all users

.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck -ExportPath "sync-status.csv"

Show only users with sync errors in matrix view

.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck -Matrix -OnlySyncErrors

Show only users with stale sync (>7 days)

.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck -OnlyStaleSync -ExportPath "stale-sync.csv"

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraDirectorySyncCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraDirectorySyncCheck-PS1.md)

**주요 기능:**
- **동기화 상태 분석** - 동기화된 사용자와 클라우드 전용 사용자 식별
- **동기화 오류 탐지** - 모든 프로비저닝 및 동기화 오류 열거
- **오래된 동기화 탐지** - 오래된 동기화(7일 초과) 사용자 식별
- **동기화 충돌 식별** - 중복 속성 및 충돌 감지
- **동기화 범위 분석** - 동기화 구성 및 범위 확인
- **위험 평가** - 동기화 상태에 따라 사용자 위험 수준(CRITICAL/HIGH/MEDIUM/LOW) 분류
- **활동 분석** - 동기화 통계, 오류 분석, 도메인 분석
- **매트릭스 보기** - 빠른 시각적 스캔을 위한 간결한 테이블 형식
- **필터링 옵션** - 동기화 오류만 표시, 오래된 동기화만 표시, 비활성화된 계정 포함
- **내보내기 옵션** - 포괄적인 동기화 세부 정보가 포함된 CSV/JSON
- **스텔스 모드** - 탐지를 방지하기 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraDirectorySyncCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraDirectorySyncCheck-PS1.md) | `scripts/powershell/Invoke-EntraDirectorySyncCheck.ps1` |

---

### Power Platform 열거 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph 모듈, Power Platform 관리자 또는 Environment Maker 권한

**인증:** 스크립트가 Power Platform API 인증을 자동으로 처리합니다:
- **기본값**: 디바이스 코드 흐름(브라우저 프롬프트) - 설정 불필요
- **Azure CLI**: `-UseAzCliToken` 사용 - 필요 시 자동으로 `az login` 실행
- **Azure PowerShell**: `-UseAzPowerShellToken` 사용 - 필요 시 자동으로 `Connect-AzAccount` 실행 (Graph 인증과 동일한 계정 사용)```powershell
# Enumerate all Power Apps and Power Automate flows
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -ExportPath "power-platform.csv"

# Show only high-risk resources (CRITICAL/HIGH) in matrix view
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -Matrix -OnlyHighRisk

# Show only resources with sensitive connectors
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -OnlySensitiveConnectors -ExportPath "sensitive.csv"

# Use Azure CLI (automatically runs 'az login' if needed)
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -UseAzCliToken

# Use Azure PowerShell (automatically runs 'Connect-AzAccount' if needed, uses Graph context account)
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -UseAzPowerShellToken

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraPowerPlatformCheck-PS1.md

주요 기능:

  • Power Apps 열거 - 소유자 및 공유 정보와 함께 모든 Power Apps를 열거합니다.
  • Power Automate Flow 열거 - 커넥터 및 작업 분석을 통해 모든 흐름을 열거합니다.
  • 민감한 커넥터 탐지 - 30개 이상의 민감한 커넥터 식별 (CRITICAL, HIGH, MEDIUM, LOW 위험)
  • 고위험 작업 탐지 - 고위험 작업(Delete, Create, Modify 등)이 있는 흐름 식별
  • 위험 평가 - 커넥터 유형과 작업에 따라 리소스를 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류
  • 커넥터 분석 - 커넥터 사용량을 분석하고 위험 수준별로 분류
  • 자동 인증 - Power Platform API 인증을 자동으로 처리 (디바이스 코드 흐름, Azure CLI 또는 Azure PowerShell)
  • 활동 분석 - 리소스 통계, 환경 분석, 소유자 분석
  • 매트릭스 보기 - 빠른 시각적 검색을 위한 간결한 테이블 형식
  • 필터링 옵션 - 고위험 리소스 또는 민감한 커넥터가 있는 리소스만 표시
  • 내보내기 옵션 - 포괄적인 리소스 세부 정보를 포함한 CSV/JSON
  • 스텔스 모드 - 탐지를 회피하기 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraPowerPlatformCheck-PS1.mdscripts/powershell/Invoke-EntraPowerPlatformCheck.ps1

공격 경로 분석 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Analyze all attack paths (privilege escalation, password reset, transitive groups, shared mailboxes)

.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck -ExportPath "attack-paths.csv"

Show only high-risk paths (CRITICAL/HIGH) in matrix view

.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck -Matrix -OnlyHighRisk

Include disabled accounts

.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck -IncludeDisabledUsers -ExportPath "all-paths.csv"

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraAttackPathCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraAttackPathCheck-PS1.md)

**주요 기능:**
- **권한 상승 분석** - 역할 할당 가능 그룹을 통해 상승된 권한으로의 경로를 식별합니다.
- **비밀번호 재설정 위임 탐지** - 다른 사용자의 비밀번호를 재설정할 수 있는 사용자를 찾습니다.
- **전이 그룹 구성원 분석** - 권한 있는 그룹에 대한 간접적인 액세스를 식별합니다.
- **공유 사서함 액세스 탐지** - 측면 이동에 사용될 수 있는 공유 사서함을 식별합니다.
- **위험 평가** - 경로 유형 및 사용자 보안 상태에 따라 공격 경로를 위험 수준(CRITICAL/HIGH/MEDIUM)으로 분류합니다.
- **경로 복잡도 분석** - 공격 경로 복잡도(Low/Medium/High)를 평가합니다.
- **MFA 상태 탐지** - 공격 경로에서 다중 인증(MFA)이 없는 사용자를 식별합니다.
- **마지막 로그인 추적** - 로그인 날짜/시간 및 활동 패턴을 표시합니다.
- **활동 분석** - 로그인 통계, 유휴 계정, 비활성 사용자
- **매트릭스 보기** - 빠른 시각적 스캔을 위한 간결한 테이블 형식
- **필터링 옵션** - 고위험 경로만 표시하거나 비활성화된 계정 포함
- **내보내기 옵션** - 포괄적인 공격 경로 세부 정보가 포함된 CSV/JSON
- **스텔스 모드** - 탐지를 피하기 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraAttackPathCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraAttackPathCheck-PS1.md) | `scripts/powershell/Invoke-EntraAttackPathCheck.ps1` |

---

### Azure RBAC 역할 할당 감사 및 드리프트 탐지 (PowerShell)

**요구 사항:** PowerShell 7+, Az.Accounts, Az.Resources, Microsoft.Graph.Authentication 모듈```powershell
# Export all Azure RBAC role assignments across ALL tenants and subscriptions to baseline JSON
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export

# Export to specific file
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -ExportPath "rbac-baseline.json"

# Skip tenants with MFA/Conditional Access issues (common in multi-tenant scenarios)
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SkipFailedTenants

# Show all users with their Azure permissions in matrix format
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SkipFailedTenants -ShowAllUsersPermissions

# Expand group memberships to show all users who have Azure access via groups
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SkipFailedTenants -ExpandGroupMembers

# Combined: Show all users including those with access via groups
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SkipFailedTenants -ExpandGroupMembers -ShowAllUsersPermissions

# Detect drift against baseline across all tenants
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode DriftDetect -BaselinePath "rbac-baseline.json"

# Detect drift with matrix view and export report
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode DriftDetect -BaselinePath "rbac-baseline.json" -Matrix -ExportPath "drift-report.json"

# Export specific tenant only
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -TenantId "tenant-id-123"

# Export specific subscription with Azure CLI auth
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SubscriptionId "sub-123" -UseAzCliToken

# Stealth mode drift detection
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode DriftDetect -BaselinePath "baseline.json" -EnableStealth -QuietStealth

# Export excluding PIM/JIT time-bounded assignments (focus on permanent assignments only)
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -ExcludePIM

# Detect drift excluding PIM/JIT assignments (ignore temporary elevated access)
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode DriftDetect -BaselinePath "baseline.json" -ExcludePIM

📖 전체 문서: EntraAzureRBACCheck-PS1.md

주요 기능:

  • 멀티 테넌트 지원 — 특정 테넌트를 지정하지 않으면 액세스 가능한 모든 테넌트를 자동으로 스캔합니다.
  • 실패한 테넌트 건너뛰기 — MFA/조건부 액세스로 인해 일부 테넌트에 차단된 경우에도 계속 처리합니다 (-SkipFailedTenants)
  • 기준선 내보내기 — Azure RBAC 역할 할당을 테넌트 및 구독 전체에 매핑하여 JSON으로 내보냅니다 (원하는 상태)
  • 드리프트 탐지 — 현재 Azure RBAC 상태를 기준선과 비교하여 무단 변경을 식별합니다
  • 멀티 구독 지원 — 모든 테넌트의 액세스 가능한 모든 구독 또는 특정 구독을 스캔합니다
  • 모든 사용자 권한 매트릭스 — 사용자 중심 보기에서 모든 주체와 해당 Azure 권한을 표시합니다 (-ShowAllUsersPermissions)
  • 그룹 멤버 확장 — 그룹 멤버십을 확장하여 그룹을 통해 Azure 액세스 권한이 있는 모든 사용자를 확인합니다 (-ExpandGroupMembers)
  • 중첩 그룹 지원 — 최대 5단계까지 중첩된 그룹을 재귀적으로 확장합니다
  • PIM/JIT 제외 — 시간 제한이 있는 PIM 역할 할당을 제외하여 영구 액세스에 집중합니다 (-ExcludePIM)
  • 포괄적인 적용 범위 — 테넌트 전체의 모든 범위(구독, 리소스 그룹, 리소스)에서 할당을 캡처합니다
  • 새 할당 탐지 — 기준선 이후 생성된 역할 할당을 식별합니다
  • 제거된 할당 탐지 — 기준선 이후 제거된 역할 할당을 감지합니다
  • 수정된 할당 탐지 — 기존 역할 할당의 변경 사항(범위, 역할, 주체)을 식별합니다
  • ABAC 조건 불일치 탐지 — 역할 할당 조건이 기준선과 다른 경우(추가, 제거 또는 수정)를 감지합니다
  • 위험 평가 — 역할 및 주체 유형에 따라 드리프트를 위험 수준(CRITICAL/HIGH/MEDIUM)으로 분류합니다
  • 수정 지침 — 각 드리프트 문제에 대해 Terraform 가져오기 블록, Azure CLI 및 PowerShell 명령을 생성합니다
  • 주체 분석 — 역할 할당이 있는 사용자, 그룹 및 서비스 주체를 추적합니다
  • 역할 정의 세부 정보 — 기본 제공 역할과 사용자 지정 역할, 권한 및 설명을 캡처합니다
  • 범위 계층 — 구독, 리소스 그룹 및 리소스 범위에서 할당을 분석합니다
  • 조건 지원 — 할당에 대한 ABAC(특성 기반 액세스 제어) 조건을 추적합니다
  • 테넌트 추적 — 모든 할당에 테넌트 정보를 포함하여 멀티 테넌트 환경을 지원합니다
  • 매트릭스 보기 — 테넌트 정보와 함께 드리프트를 빠르게 시각화할 수 있는 간결한 테이블 형식
  • 유연한 인증 — Azure CLI () 또는 Azure PowerShell () 인증
버전문서파일
PowerShellEntraAzureRBACCheck-PS1.mdscripts/powershell/Invoke-EntraAzureRBACCheck.ps1

OAuth 동의 권한 감사 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈```powershell

Enumerate all OAuth consent grants and analyze security posture

.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -ExportPath "consent-grants.csv"

Show only high-risk consent grants in matrix view

.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -Matrix -OnlyHighRisk

Show only third-party apps with admin consent

.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -OnlyThirdParty -OnlyAdminConsent

Show consent grants not used in the last 60 days

.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -StaleDays 60 -OnlyStale

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraOAuthConsentCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraOAuthConsentCheck-PS1.md)

**주요 기능:**
- **OAuth2PermissionGrant 열거** - 테넌트의 모든 위임된 권한 부여를 열거합니다.
- **관리자 vs 사용자 동의 탐지** - 테넌트 전체 관리자 동의와 개별 사용자 동의를 구분합니다.
- **위험한 권한 탐지** - 고위험 범위(Mail.ReadWrite, Files.ReadWrite.All, User.ReadWrite.All 등)를 식별합니다.
- **만료된 동의 탐지** - 사용되지 않는 동의 부여를 찾습니다(구성 가능한 임계값, 기본 90일).
- **타사 앱 식별** - 확장된 권한을 가진 비 Microsoft 애플리케이션을 자동으로 식별합니다.
- **로그인 활동 상관 관계 분석** - 로그인 활동과 교차 참조하여 유휴 앱을 탐지합니다.
- **위험 평가** - 동의 유형, 권한 및 앱 출처에 따라 동의 부여를 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류합니다.
- **게시자 분석** - 애플리케이션 게시자 및 확인된 게시자 상태를 추적합니다.
- **리소스 추적** - 각 앱이 액세스할 수 있는 API/리소스를 식별합니다.
- **매트릭스 보기** - 빠른 시각적 검색을 위한 간결한 테이블 형식입니다.
- **필터 옵션** - 고위험, 타사, 만료 또는 관리자 동의 부여만 표시합니다.
- **내보내기 옵션** - 종합적인 동의 부여 세부 정보가 포함된 CSV/JSON입니다.
- **스텔스 모드** - 탐지를 피하기 위해 구성 가능한 지연 및 지터를 사용합니다.

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraOAuthConsentCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraOAuthConsentCheck-PS1.md) | `scripts/powershell/Invoke-EntraOAuthConsentCheck.ps1` |

---

### 로그인 위험 검사 (PowerShell)

**요구 사항:** PowerShell 7+, Microsoft.Graph 모듈, Azure AD Premium P2```powershell
# Enumerate all risky users
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -ExportPath "risky-users.csv"

# Show only high-risk users in matrix view
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -Matrix -OnlyHighRisk

# Show only active (not remediated) risks
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -OnlyActive

# Include risky sign-ins from the last 7 days
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -IncludeRiskySignIns -DaysBack 7

# Full analysis with pattern detection
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -IncludeRiskySignIns -IncludeRiskDetections -Matrix

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraSignInRiskCheck-PS1.md

주요 기능:

  • 위험 사용자 열거 - Azure AD Identity Protection에서 플래그된 모든 사용자 나열
  • 위험 수준 분석 - 위험 수준을 HIGH, MEDIUM, LOW로 분류
  • 위험 상태 추적 - 위험이 활성, 해결, 해제되었는지 표시
  • 위험 탐지 분석 - 특정 위험 이벤트 열거 (불가능한 이동, 익명 IP, 유출된 자격 증명)
  • 패턴 탐지 - 의심스러운 패턴 식별 (근무 시간 외 활동, 암호 스프레이 공격, 사용자당 여러 위험 유형)
  • 시기 분석 - 주말 및 근무 시간 외 의심 활동 추적
  • 불가능한 이동 탐지 - 지리적으로 먼 위치에서의 로그인 식별
  • 익명 IP 탐지 - VPN, Tor, 프록시 사용 플래그
  • 암호 스프레이 탐지 - 자격 증명 스터핑 공격 식별
  • 유출된 자격 증명 탐지 - 데이터 유출에서 발견된 자격 증명을 가진 사용자
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 필터링 옵션 - 고위험 또는 활성 위험만 표시
  • 내보내기 옵션 - 포괄적인 위험 세부 정보가 포함된 CSV/JSON
  • 스텔스 모드 - 탐지를 피하기 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraSignInRiskCheck-PS1.mdscripts/powershell/Invoke-EntraSignInRiskCheck.ps1

권한 있는 ID 관리(PIM) 확인 (PowerShell)

요구 사항: PowerShell 7+, Microsoft.Graph 모듈, Azure AD Premium P2```powershell

Perform comprehensive PIM configuration audit

.\Invoke-EvilMist.ps1 -Script EntraPIMCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -ExportPath "pim-audit.csv"

Show only critical findings in matrix view

.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -Matrix -OnlyCritical

Audit high-privilege roles with strict 2-hour activation limit

.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -OnlyHighPrivilege -MaxActivationHours 2

Include PIM for Groups and Access Reviews

.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -IncludeGroups -IncludeAccessReviews

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraPIMCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraPIMCheck-PS1.md)

**주요 기능:**
- **JIT Access Configuration Audit** - 최대 활성화 기간, 승인 요구 사항, MFA 적용 여부 분석
- **Approval Workflow Analysis** - 승인 없거나 승인자가 누락된 역할 식별
- **Justification Requirements** - 활성화 시 필수 사유 제공이 없는 역할 탐지
- **MFA Enforcement** - 활성화 시 MFA가 필요하지 않은 역할 식별
- **Notification Configuration** - 역할 활성화에 대한 관리자 알림 설정 분석
- **Permanent Assignment Detection** - PIM을 우회하는 영구 권한 접근 발견
- **PIM for Groups** - 그룹 기반 권한 접근 관리 분석
- **Access Reviews** - 정기적 액세스 인증 설정 확인
- **Risk Assessment** - 구성 격차에 따라 역할을 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류
- **Eligible vs Active Analysis** - 자격 할당과 활성/영구 할당 비교
- **Break-Glass Account Detection** - 비상 계정일 수 있는 영구 할당 식별
- **Matrix View** - 빠른 시각적 스캔을 위한 간결한 테이블 형식
- **Filtering Options** - 중요 역할, 높은 권한 역할 또는 잘못된 구성만 표시
- **Export Options** - CSV/JSON 형식의 포괄적인 PIM 구성 상세 정보
- **Stealth Mode** - 탐지 방지를 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraPIMCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraPIMCheck-PS1.md) | `scripts/powershell/Invoke-EntraPIMCheck.ps1` |

---

### Azure Key Vault 보안 점검 (PowerShell)

**요구 사항:** PowerShell 7+, Az.Accounts, Az.KeyVault, Az.Resources, Az.Monitor 모듈```powershell
# Perform comprehensive Key Vault security audit
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -ExportPath "keyvault-audit.csv"

# Show only critical findings in matrix view
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -Matrix -OnlyCritical

# Audit only Key Vaults with public access enabled
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -OnlyPublicAccess

# Include secret and certificate expiration analysis
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -IncludeSecrets -IncludeCertificates -ExpirationDays 90

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraKeyVaultCheck-PS1.md

주요 기능:

  • 액세스 모델 분석 - RBAC와 레거시 액세스 정책 비교
  • 보호 상태 - 일시 삭제 및 제거 보호 구성 확인
  • 네트워크 보안 감사 - 공개 액세스, 방화벽 규칙, VNet 통합 식별
  • 프라이빗 엔드포인트 탐지 - 프라이빗 연결 구성 확인
  • 과도한 권한 부여 액세스 탐지 - 과도한 권한이 있는 액세스 정책 식별 ('all', 'purge')
  • 진단 로깅 확인 - 감사 로깅이 활성화되었는지 확인
  • 비밀/인증서/키 만료 - 만료 임박 또는 만료된 항목 추적
  • 위험 평가 - 구성 격차에 따라 Key Vault를 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류
  • 매트릭스 보기 - 빠른 시각적 스캔을 위한 간결한 테이블 형식
  • 필터링 옵션 - 중요, 공개 액세스 또는 보호되지 않은 Key Vault만 표시
  • 내보내기 옵션 - 포괄적인 Key Vault 세부 정보가 포함된 CSV/JSON
  • 스텔스 모드 - 탐지를 피하기 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraKeyVaultCheck-PS1.mdscripts/powershell/Invoke-EntraKeyVaultCheck.ps1

Azure Storage Account 보안 감사

노출된 스토리지 계정과 데이터 유출 위험을 탐지하는 포괄적인 Azure Storage Account 보안 감사 도구입니다. 공용 Blob 컨테이너, 네트워크 잘못된 구성, 데이터 보호 격차를 식별합니다.```powershell

Perform comprehensive Storage Account security audit

.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -ExportPath "storage-audit.csv"

Show only critical findings in matrix view

.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -Matrix -OnlyCritical

Find storage accounts with anonymous containers

.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -OnlyAnonymousContainers -IncludeContainers

Include key rotation age analysis

.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -IncludeKeyAge -KeyRotationDays 60

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraStorageAccountCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraStorageAccountCheck-PS1.md)

**주요 기능:**
- **공용 Blob 컨테이너 탐지** - 익명 액세스(Blob/컨테이너 수준)가 있는 컨테이너 식별
- **HTTPS 적용 확인** - 암호화되지 않은 HTTP 트래픽을 허용하는 스토리지 계정 탐지
- **공유 키 액세스 분석** - Azure AD 인증 대신 스토리지 키를 사용하는 계정 식별
- **네트워크 보안 감사** - 공용 액세스, 방화벽 규칙, VNet 통합, 프라이빗 엔드포인트 확인
- **데이터 보호 분석** - Blob 일시 삭제, 컨테이너 일시 삭제, 버전 관리 상태
- **키 순환 추적** - 순환 임계값을 초과하는 스토리지 계정 키 식별
- **교차 테넌트 복제** - 다른 테넌트로의 데이터 복제 탐지(유출 위험)
- **TLS 버전 확인** - 최소 TLS 1.2 적용 확인
- **인프라 암호화** - 이중 암호화 구성 확인
- **진단 로깅 확인** - 감사 로깅 활성화 확인
- **위험 평가** - 스토리지 계정을 위험 수준(CRITICAL/HIGH/MEDIUM/LOW)으로 분류
- **매트릭스 보기** - 빠른 시각적 스캔을 위한 간결한 테이블 형식
- **필터링 옵션** - 중요 항목, 공용 액세스 또는 익명 컨테이너만 표시
- **내보내기 옵션** - 포괄적인 스토리지 계정 세부 정보가 포함된 CSV/JSON
- **스텔스 모드** - 탐지를 피하기 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraStorageAccountCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraStorageAccountCheck-PS1.md) | `scripts/powershell/Invoke-EntraStorageAccountCheck.ps1` |

---

### 네트워크 보안 확인 (PowerShell)

**요구 사항:** PowerShell 7+, Azure PowerShell 모듈```powershell
# Perform comprehensive Network Security audit
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -ExportPath "network-audit.csv"

# Show only NSGs with open management ports
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -OnlyOpenPorts -Matrix

# Full scan with VNets, Bastion, and DDoS analysis
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -IncludeVNets -IncludeBastion -IncludeDDoS -Matrix

# Include NSG flow logs analysis
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -IncludeFlowLogs -Matrix

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraNetworkSecurityCheck-PS1.md

주요 기능:

  • NSG 규칙 분석 - 과도하게 허용된 규칙(0.0.0.0/0, Any-Any)을 감지합니다.
  • 공용 관리 포트 - 노출된 RDP(3389), SSH(22), WinRM(5985/5986)을 식별합니다.
  • Azure Bastion 분석 - Bastion 사용과 직접적인 RDP/SSH 접근을 비교합니다.
  • DDoS 보호 상태 - VNet의 DDoS 보호를 확인합니다.
  • VNet 보안 - 피어링 분석, 서브넷 NSG 적용 범위, 서비스 엔드포인트
  • NSG 흐름 로그 - 흐름 로그 구성 및 트래픽 분석 상태
  • VPN/ExpressRoute - 게이트웨이 구성 분석
  • 위험 평가 - CRITICAL/HIGH/MEDIUM/LOW 분류와 함께 결과 제공
  • 매트릭스 보기 - 빠른 검토를 위한 간결한 표 형식
  • 내보내기 옵션 - 포괄적인 네트워크 보안 세부 정보가 포함된 CSV/JSON
  • 스텔스 모드 - 탐지를 피하기 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraNetworkSecurityCheck-PS1.mdscripts/powershell/Invoke-EntraNetworkSecurityCheck.ps1

관리 ID 보안 감사

과도한 권한과 보안 위험을 식별하는 포괄적인 Azure 관리 ID 보안 감사 도구입니다. 높은 권한의 관리 ID, 구독 간 액세스, 사용되지 않는 ID를 감지합니다.```powershell

Perform comprehensive Managed Identity security audit

.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -ExportPath "managed-identity-audit.csv"

Show only high-privilege managed identities

.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -OnlyHighPrivilege -Matrix

Show identities with cross-subscription access

.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -OnlyCrossSubscription -Matrix

Include detailed role assignment information

.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -IncludeRoleDetails -Matrix

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraManagedIdentityCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraManagedIdentityCheck-PS1.md)

**주요 기능:**
- **ID 인벤토리** - 시스템 할당 및 사용자 할당 관리 ID 열거
- **역할 할당 분석** - 각 관리 ID에 대한 Azure RBAC 권한
- **고권한 탐지** - 소유자, 기여자, 사용자 액세스 관리자 역할 식별
- **중요 역할 탐지** - 소유자, UAA 또는 RBAC 관리자 역할이 있는 ID 플래그 지정
- **구독 간 액세스** - 홈 구독을 넘어서는 권한이 있는 ID 탐지
- **미사용 ID 탐지** - 역할 할당이 없는 관리 ID 찾기
- **리소스 범위** - VM, App Services, Function Apps, 사용자 할당 ID
- **범위 분석** - 구독 전체 대 리소스 그룹 대 리소스 수준 권한
- **위험 평가** - CRITICAL/HIGH/MEDIUM/LOW 분류 및 결과
- **매트릭스 보기** - 빠른 검토를 위한 간결한 표 형식
- **내보내기 옵션** - 포괄적인 ID 세부 정보가 포함된 CSV/JSON
- **스텔스 모드** - 탐지를 피하기 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraManagedIdentityCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraManagedIdentityCheck-PS1.md) | `scripts/powershell/Invoke-EntraManagedIdentityCheck.ps1` |

---

### Exchange Online 보안 감사

메일 기반 공격 벡터와 데이터 유출 위험을 탐지하는 포괄적인 Exchange Online 보안 감사 도구입니다. 외부 주소로 전달되는 받은 편지함 규칙, 의심스러운 전송 규칙, 사서함 위임 및 감사 로깅 격차를 식별합니다.```powershell
# Perform comprehensive Exchange Online security audit
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -ExportPath "exchange-audit.csv"

# Show only mailboxes with external forwarding
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -OnlyExternalForwarding -Matrix

# Show only suspicious inbox rules
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -OnlySuspiciousRules -Matrix

# Include transport rules and OWA policies
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -IncludeTransportRules -IncludeOWAPolicies -Matrix

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraExchangeCheck-PS1.md

주요 기능:

  • 받은 편지함 규칙 분석 - 외부 주소로 전달되는 규칙 탐지 (데이터 유출)
  • 외부 전달 감지 - 사서함에 설정된 SMTP 전달 식별
  • 전송 규칙 감사 - 의심스러운 구성이 있는 메일 흐름 규칙 분석
  • 사서함 위임 분석 - 전체 액세스, 보내기-다른-사용자-권한, 대신 보내기 권한
  • 감사 로깅 상태 - 감사 로깅이 활성화되지 않은 사서함 식별
  • OWA 정책 분석 - Outlook Web App 보안 구성 검토
  • 클라이언트 액세스 규칙 - 레거시 액세스 제어 정책 감사
  • BEC 징후 탐지 - 업무 이메일 침해(Business Email Compromise)에서 흔히 나타나는 패턴 식별
  • 의심스러운 규칙 탐지 - 청구서, 지불, 송금, 이체와 같은 키워드가 포함된 규칙 플래그 지정
  • 위험 평가 - CRITICAL/HIGH/MEDIUM/LOW 분류 및 결과 제공
  • 매트릭스 보기 - 빠른 검토를 위한 간결한 표 형식
  • 내보내기 옵션 - CSV/JSON 형식의 포괄적인 사서함 및 규칙 세부 정보
  • 스텔스 모드 - 탐지를 피하기 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraExchangeCheck-PS1.mdscripts/powershell/Invoke-EntraExchangeCheck.ps1

SharePoint Online 보안 점검

과도한 공유 및 외부 액세스 위험을 식별하기 위한 포괄적인 SharePoint Online 보안 평가 도구입니다. 테넌트 수준 및 사이트 수준의 공유 구성을 감사하여 잠재적인 데이터 노출을 탐지합니다.```powershell

Perform comprehensive SharePoint Online security audit

.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -ExportPath "sharepoint-audit.csv"

Show only sites allowing anonymous links

.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -OnlyAnonymousLinks -Matrix

Show sites with sharing more permissive than tenant

.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -OnlyPermissiveOverrides -Matrix

Include OneDrive and sensitivity label analysis

.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -IncludeOneDrive -IncludeSensitivityLabels -Matrix

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraSharePointCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraSharePointCheck-PS1.md)

**주요 기능:**
- **테넌트 공유 설정** - 조직 전체 외부 공유 정책 분석
- **익명 링크 탐지** - "Anyone" 링크를 허용하는 사이트 식별
- **사이트 수준 재정의** - 테넌트보다 더 허용적인 공유 설정이 적용된 사이트 탐지
- **게스트 액세스 분석** - 민감한 사이트에 대한 외부 사용자 액세스
- **OneDrive 공유** - 개인 스토리지 외부 공유 구성
- **민감도 레이블 적용 범위** - 데이터 분류가 누락된 사이트 식별
- **기본 링크 분석** - 기본 링크 유형 및 권한 구성
- **링크 만료 정책** - 익명 링크 만료 설정
- **도메인 제한** - 허용/차단 목록 구성
- **위험 평가** - CRITICAL/HIGH/MEDIUM/LOW 분류 및 결과
- **매트릭스 보기** - 빠른 검토를 위한 간결한 표 형식
- **내보내기 옵션** - CSV/JSON 형식의 포괄적인 사이트 세부 정보
- **스텔스 모드** - 탐지 회피를 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraSharePointCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraSharePointCheck-PS1.md) | `scripts/powershell/Invoke-EntraSharePointCheck.ps1` |

---

### SharePoint Online 열거

SharePoint REST API를 사용하는 인증된 SharePoint Online 검색 및 파일 다운로드 도구입니다. Red-team 운영자가 승인된 침투 테스트 중에 민감한 문서를 발견하고 유출할 수 있도록 합니다. [ElephantPoint](https://github.com/nettitude/ElephantPoint)(Nettitude)의 PowerShell 포트입니다.```powershell
# Zero-config search — auto-connects, auto-detects SharePoint domain
.\Invoke-EvilMist.ps1 -Script SharePointEnum -Query "password"

# Device code authentication (for headless terminals)
.\Invoke-EvilMist.ps1 -Script SharePointEnum -UseDeviceCode -Query "credentials"

# Direct bearer token from ROADtools/TokenTactics
.\Invoke-EvilMist.ps1 -Script SharePointEnum -SPOUrl example.sharepoint.com -Token $token -Query "confidential"

# Download file as Base64 for C2 exfiltration
.\Invoke-EvilMist.ps1 -Script SharePointEnum -SPOUrl example.sharepoint.com -Token $token -FileUrl "/sites/hr/Shared Documents/salaries.xlsx" -Base64

# Stealth search with matrix output and JSON export
.\Invoke-EvilMist.ps1 -Script SharePointEnum -Query "budget" -EnableStealth -QuietStealth -Matrix -ExportPath "results.json"

📖 전체 문서: SharePointEnum-PS1.md

주요 기능:

  • 전체 텍스트 검색 - 모든 SharePoint 문서 라이브러리에서 키워드 검색
  • FQL 지원 - 고급/정밀 타겟팅을 위한 패싯 쿼리 언어
  • 세분화 필터 - 파일 형식, 작성자, 날짜, 사이트별 필터링
  • 파일 다운로드 - 디스크 저장 또는 C2 유출을 위한 Base64 인코딩
  • 자동 감지 - Azure 세션에서 SharePoint 도메인 자동 감지
  • 스마트 인증 대체 - SharePoint REST API에 대해 토큰 검증; 세션 토큰에 SharePoint 권한이 없는 경우 Azure CLI 및 MSAL 디바이스 코드 흐름으로 대체
  • 스텔스 모드 - 구성 가능한 지연, 지터, 스로틀 처리
  • 내보내기 옵션 - 검색 메타데이터 및 요약 포함 CSV/JSON
버전문서파일
PowerShellSharePointEnum-PS1.mdscripts/powershell/Invoke-SharePointEnum.ps1

Teams 보안 점검

Microsoft Teams의 협업 보안 설정을 감사하는 포괄적인 보안 평가 도구입니다. 외부 액세스 위험, 게스트 정책, 회의 보안 취약점, 앱 권한 문제를 식별합니다.```powershell

Perform comprehensive Teams security audit

.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck

Export results to CSV

.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -ExportPath "teams-audit.csv"

Show only meeting policy risks

.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -OnlyMeetingRisks -Matrix

Show only external access findings

.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -OnlyExternalAccess -Matrix

Include Teams inventory and app policies

.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -IncludeTeamsInventory -IncludeAppPolicies -Matrix

Stealth mode scan

.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -EnableStealth -QuietStealth

root@kitploit:~
📖 **Full documentation:** [EntraTeamsCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraTeamsCheck-PS1.md)

**주요 기능:**
- **외부 액세스 (페더레이션)** - 외부 조직에서 통신할 수 있는 사용자 분석
- **게스트 액세스 정책** - 게스트 사용자 기능 및 권한 설정
- **미팅 정책** - 익명 참가, 로비 우회, 녹화 설정
- **앱 권한 정책** - 타사 및 사용자 지정 앱 액세스 제어
- **메시징 정책** - 채팅 및 메시지 기능 설정
- **Teams 인벤토리** - 가시성, 게스트 멤버십, 거버넌스 분석
- **클라이언트 구성** - Teams 클라이언트 보안 설정
- **위험 평가** - CRITICAL/HIGH/MEDIUM/LOW 분류 및 결과
- **매트릭스 보기** - 빠른 검토를 위한 간결한 표 형식
- **내보내기 옵션** - CSV/JSON 형식, 포괄적인 구성 세부 정보 포함
- **스텔스 모드** - 감지를 방지하기 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraTeamsCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraTeamsCheck-PS1.md) | `scripts/powershell/Invoke-EntraTeamsCheck.ps1` |

---

### Azure 크로스 서비스 공격 경로 분석

다중 Azure 서비스에 걸친 멀티홉 공격 경로를 식별하는 포괄적인 크로스 서비스 Azure 공격 경로 분석 도구입니다. 하나의 리소스에 대한 액세스가 Azure 환경 전체에서 다른 리소스의 손상으로 이어질 수 있는 방법을 밝혀냅니다.```powershell
# Perform comprehensive cross-service attack path analysis
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck

# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -ExportPath "azure-attack-paths.csv"

# Show only critical attack paths in matrix view
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -OnlyCritical -Matrix

# Show critical and high-risk paths
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -OnlyHighRisk -Matrix

# Include inherited permission paths with deeper analysis
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -IncludeInheritedPaths -MaxPathDepth 4

# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -EnableStealth -QuietStealth

📖 전체 문서: EntraAzureAttackPathCheck-PS1.md

주요 기능:

  • VM에서 Key Vault로의 경로 - Key Vault 비밀에 접근할 수 있는 관리 ID를 가진 컴퓨팅 리소스 식별
  • App Service에서 비밀 접근 - 관리 ID를 통해 비밀에 접근하는 웹 애플리케이션
  • 관리 ID 권한 상승 - 탈취를 가능하게 하는 중요 역할을 가진 ID
  • 스토리지 측면 이동 - 약한 스토리지 보안으로 데이터 유출 또는 코드 삽입 가능
  • 사용자 정의 역할 취약점 - 사용자 정의 역할 정의에서 위험한 권한 조합
  • 구독 간 경로 - 여러 Azure 구독에 걸친 접근
  • 관리 그룹 상속 - 상위 범위에서 상속된 권한
  • 위험 평가 - CRITICAL/HIGH/MEDIUM/LOW 분류와 공격 시나리오
  • 매트릭스 보기 - 빠른 검토를 위한 간결한 표 형식
  • 내보내기 옵션 - 포괄적인 경로 세부 정보를 포함한 CSV/JSON
  • 스텔스 모드 - 탐지 회피를 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraAzureAttackPathCheck-PS1.mdscripts/powershell/Invoke-EntraAzureAttackPathCheck.ps1

통합 보안 보고서 생성기

여러 EvilMist 보안 검사를 실행하고 위험 평가, 수정 우선순위 및 추세 분석이 포함된 포괄적인 임원 대시보드를 생성하는 통합 HTML 보안 보고서 생성기입니다.```powershell

Generate report with core security checks (quick scan)

.\Invoke-EvilMist.ps1 -Script EntraReport -QuickScan

Generate comprehensive security report with all checks

.\Invoke-EvilMist.ps1 -Script EntraReport -ComprehensiveScan -ExportPath "full-report.html"

Generate report with specific checks

.\Invoke-EvilMist.ps1 -Script EntraReport -Checks MFA,Roles,ConditionalAccess,AttackPaths

Generate report with all checks

.\Invoke-EvilMist.ps1 -Script EntraReport -Checks All -ExportPath "security-report.html"

Trend comparison with previous baseline

.\Invoke-EvilMist.ps1 -Script EntraReport -ComprehensiveScan -BaselinePath "previous-report.json"

Stealth mode scan with report

.\Invoke-EvilMist.ps1 -Script EntraReport -QuickScan -EnableStealth -QuietStealth

root@kitploit:~
📖 **전체 문서:** [EntraReport-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraReport-PS1.md)

**주요 기능:**
- **통합 보고** - 단일 명령으로 여러 보안 검사 실행
- **임원 대시보드** - 보안 점수(0-100)를 포함한 전문 HTML 보고서
- **위험 심각도 개요** - CRITICAL, HIGH, MEDIUM, LOW 발견 건수
- **수정 우선순위 매트릭스** - 권장 일정이 포함된 우선순위 조치(P1-P4)
- **추세 분석** - 기준 보고서와 비교하여 보안 개선 추적
- **빠른 스캔 모드** - 핵심 보안 검사(MFA, 역할, CA, 공격 경로, OAuth, PIM)
- **종합 스캔** - 전체 범위를 위한 모든 가용 보안 검사
- **JSON 내보내기** - 향후 비교를 위한 자동 기준선 내보내기
- **스텔스 모드** - 탐지를 피하기 위한 구성 가능한 지연 및 지터

| 버전 | 문서 | 파일 |
|---------|---------------|------|
| PowerShell | [EntraReport-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraReport-PS1.md) | `scripts/powershell/Invoke-EntraReport.ps1` |

---

### 규정 준수 평가 (CIS/NIST/SOC2/ISO27001/GDPR)

Azure Entra ID 보안 구성을 CIS Microsoft Azure Foundations Benchmark, NIST 800-53, SOC 2, ISO 27001 및 GDPR을 포함한 업계 표준 프레임워크에 대해 평가하는 포괄적인 규정 준수 평가 도구입니다.```powershell
# Comprehensive compliance assessment against all frameworks
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Matrix

# CIS Azure Benchmark assessment
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Framework CIS -ExportPath "cis-compliance.csv"

# NIST 800-53 assessment with remediation guidance
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Framework NIST -IncludeRemediation

# Executive report with compliance score
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -GenerateExecutiveReport -ExportPath "compliance-report.html"

# SOC 2 assessment showing only failed controls
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Framework SOC2 -OnlyFailed

# Filter by NIST control family (e.g., Access Control)
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Framework NIST -ControlFamily AC

📖 전체 문서: EntraComplianceCheck-PS1.md

주요 기능:

  • 다중 프레임워크 매핑 - CIS Azure Benchmark, NIST 800-53, SOC 2, ISO 27001, GDPR
  • 컴플라이언스 점수 - 통과/실패 분석이 포함된 전체 컴플라이언스 백분율
  • 통제 계열 필터링 - NIST 계열(AC, IA, AU, SI) 또는 CIS 섹션별 필터링
  • 심각도 수준 - 치명적, 높음, 중간, 낮음 분류
  • 경영진 보고서 - 컴플라이언스 대시보드가 포함된 전문적인 HTML 보고서
  • 시정 조치 가이드 - 실패한 통제에 대한 상세한 수정 권장 사항
  • 증거 수집 - 감사 지원을 위한 자동 증거 수집
  • 다중 내보내기 형식 - CSV, JSON, HTML 내보내기 옵션
  • 스텔스 모드 - 탐지 회피를 위한 구성 가능한 지연 및 지터
버전문서파일
PowerShellEntraComplianceCheck-PS1.mdscripts/powershell/Invoke-EntraComplianceCheck.ps1

문서


기능 비교

Enumerate-EntraUsers 버전

두 버전 모두 동일한 핵심 기능을 제공합니다:

툴킷 비교| 기능 | Enumerate-EntraUsers | MFA 보안 점검 | 게스트 계정 열거 | 중요 관리자 접근 점검 | 권한 있는 역할 점검 | 서비스 주체 점검 | 애플리케이션 등록 점검 | 조건부 액세스 점검 | 관리 단위 점검 | 오래된 계정 점검 | 디바이스 신뢰 점검 | SSPR 점검 | 암호 정책 점검 | 레거시 인증 점검 | 라이선스 점검 | 디렉터리 동기화 점검 | Power Platform 점검 | 그룹 보안 점검 | 공격 경로 분석 | Azure RBAC 점검 | OAuth 동의 점검 |

|---------|---------------------|-------------------|---------------------------|----------------------------|----------------------|------------------------|--------------------------|--------------------------|------------------------|---------------------|-------------------|-------------|---------------------|-------------------|--------------|---------------------|-------------------|-------------------|-------------------|-------------------|-------------------| | 목적 | 포괄적인 사용자 열거 | 집중 MFA 보안 감사 | 게스트 접근 거버넌스 | 중요 관리자 접근 감사 | 권한 있는 역할 할당 감사 | 서비스 계정 보안 감사 | 애플리케이션 등록 보안 감사 | 보안 정책 격차 분석 | 범위 지정 관리자 접근 감사 | 계정 위생 감사 | 디바이스 신뢰 및 규정 준수 감사 | SSPR 구성 감사 | 암호 정책 보안 감사 | 레거시 인증 보안 감사 | 라이선스 및 SKU 분석 | 디렉터리 동기화 상태 및 상태 감사 | Power Platform 열거 및 보안 감사 | 그룹 보안 분석 및 거버넌스 | 공격 경로 분석 - 권한 상승 및 측면 이동 | 다중 테넌트 Azure RBAC 기준선 내보내기 및 드리프트 탐지 | OAuth 동의 부여 감사 - 불법 동의 탐지 | | 사용자 열거 | 15개 이상의 방법 | 표준 방법 | 게스트 중심 | 앱 할당 기반 | 역할 할당 기반 | 서비스 주체 중심 | | | | | | 레거시 인증 중심 | 동기화 중심 | ❌ | | MFA 탐지 | 기본 점검 | 고급(방법 유형 포함) | 고급(방법 유형 포함) | 고급(방법 유형 포함) | 고급(방법 유형 포함) | 소유자 MFA 점검 | | | | | | 고급(방법 유형 포함) | ❌ | ❌ | | 공유 사서함 탐지 | ❌ | ✅ 자동 | ❌ (게스트에는 해당 없음) | ❌ (앱 액세스에는 해당 없음) | ❌ (역할에는 해당 없음) | ❌ (SP에는 해당 없음) | | | | | | ❌ (레거시 인증에 해당 없음) | ❌ | ❌ | | 게스트 도메인 추출 | ❌ | ❌ | ✅ 자동 | ❌ | ❌ | ❌ | | | | | | ❌ | ❌ | ❌ | | 초대 상태 추적 | ❌ | ❌ | ✅ 수락 날짜 포함 | ❌ | ❌ | ❌ | | | | | | ❌ | ❌ | ❌ | | 앱 액세스 추적 | ❌ | ❌ | ❌ | ✅ 다중 앱 커버리지 | ❌ | ❌ | | | | | | ❌ | ❌ | ❌ | | 역할 할당 추적 | ❌ | ❌ | ❌ | ❌ | ✅ 모든 디렉터리 역할 | ❌ | | | | | | ❌ | ❌ | ✅ 모든 Azure RBAC 역할 | | PIM 할당 추적 | ❌ | ❌ | ❌ | ❌ | ✅ 적격 및 활성 | ❌ | | | | | | ❌ | ❌ | ❌ | | 자격 증명 열거 | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 비밀 및 인증서 | ✅ 비밀 및 인증서 | | | | | | ❌ | ❌ | ❌ | | 자격 증명 만료 추적 | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 만료 및 곧 만료 | ✅ 만료 및 곧 만료 | | | | | | ❌ | ❌ | ❌ | | 권한 분석 | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 고위험 및 중요 | ✅ 고위험 및 중요(API 권한) | | | | | | ❌ | ❌ | ✅ RBAC 역할 권한 | | 소유자 분석 | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ MFA 상태 포함 | ✅ MFA 상태 포함 | ❌ | | | | | ❌ | ❌ | ✅ MFA 상태 포함한 그룹 소유자 | ❌ | | 애플리케이션 등록 열거 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 포괄적 | | | | | | ❌ | ❌ | ❌ | | API 권한 분석 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 위임 및 애플리케이션 | | | | | | ❌ | ❌ | ❌ | | 할당 날짜 추적 | ❌ | ❌ | ✅ 초대 날짜 | ✅ 할당 날짜 | ✅ 할당 날짜 및 기간 | ❌ | ❌ | | | | | ❌ | ❌ | ✅ 역할 할당 생성 날짜 | | 정책 제외 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 사용자, 그룹, 역할, 앱 | | | | | ❌ | ❌ | ❌ | | MFA 적용 격차 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 정책 수준 분석 | | | | | ❌ | ❌ | ❌ | | 중요 앱 커버리지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 10개의 중요 앱 | | | | | ❌ | ❌ | ❌ | | 레거시 인증 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 정책 대상 지정 | | | | | ✅ 10개 프로토콜 | ❌ | ❌ | | 레거시 프로토콜 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | | | | ✅ IMAP/POP3/SMTP/EAS 등 | ❌ | ❌ | | 마지막 레거시 인증 사용 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | | | | ✅ 날짜/시간 추적 | ❌ | ❌ | | 프로토콜 통계 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | | | | ✅ 성공/실패 횟수 | ❌ | ❌ | | 정책 충돌 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 중복/충돌 | ❌ | ❌ | ❌ | | | ❌ | ❌ | ❌ | | 관리 단위 열거 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 포괄적 | ❌ | ❌ | ❌ | | | ❌ | ❌ | ❌ | | 범위 지정 역할 할당 분석 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 모든 범위 지정 할당 | ❌ | ❌ | ❌ | | | ❌ | ❌ | ❌ | | AU 멤버 열거 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 멤버 및 역할 | ❌ | ❌ | ❌ | | | ❌ | ❌ | ❌ | | 오래된 계정 탐지 | 제한적 | 제한적 | 제한적 | 제한적 | 제한적 | ❌ | ❌ | 제한적 | ✅ 90일 이상 비활성 | ❌ | | | 제한적 | ❌ | ❌ | | 로그인 없음 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 계정 수명 분석 | ❌ | | | ❌ | ❌ | ❌ | | 라이선스 낭비 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 라이선스가 있는 비활성 | ❌ | | | ❌ | ❌ | ❌ | | 암호 만료 추적 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 만료된 암호 | ❌ | ❌ | ✅ 만료 분석 | ❌ | ❌ | ❌ | | SSPR 상태 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 활성화/등록/가능 | ❌ | ❌ | ❌ | ❌ | | SSPR 방법 분석 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 등록 방법 | ❌ | ❌ | ❌ | ❌ | | 백업 방법 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 백업 방법 없음 | ❌ | ❌ | ❌ | ❌ | | 강력한 방법 분류 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 강력 vs 약한 방법 | ❌ | ❌ | ❌ | ❌ | | 디바이스 열거 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 포괄적 | ❌ | ❌ | ❌ | ❌ | ❌ | | 규정 준수 상태 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | ✅ 준수/비준수/알 수 없음 | | | ❌ | ❌ | ❌ | | BYOD 탐지 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | ✅ 자동 | | | ❌ | ❌ | ❌ | | 오래된 로그인 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | ✅ 90일 이상 | ✅ 90일 이상 | | | 제한적 | ❌ | ❌ | | Intune 규정 준수 정책 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 전체 열거 | | | ❌ | ❌ | ❌ | | 디바이스 신뢰 분석 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 조인 유형 | | | ❌ | ❌ | ❌ | | 관리 상태 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 관리/비관리 | | | ❌ | ❌ | ❌ | | 마지막 로그인 추적 | ✅ | ✅ 분석 포함 | ✅ 분석 포함 | ✅ 분석 포함 | ✅ 분석 포함 | 제한적(SP 활동) | ❌ | ✅ 분석 포함 | ✅ 분석 포함 | ✅ 분석 포함 | ✅ 분석 포함 | ✅ 분석 포함 | ✅ 분석 포함 | ✅ 분석 포함 | ✅ 분석 포함 | ❌ | | 로그인 가능 점검 | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | 동기화 상태 탐지 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 동기화됨 vs 클라우드 전용 | ❌ | | 동기화 오류 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 모든 프로비저닝 오류 | ❌ | | 오래된 동기화 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 동기화 후 7일 이상 | ❌ | | 동기화 충돌 식별 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 중복 특성 | ❌ | | 동기화 범위 분석 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 기본 구성 | ❌ | | 테넌트 SKU 열거 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 전체 열거 | ❌ | ❌ | | 라이선스 할당 추적 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 모든 할당 | ❌ | ❌ | | 권한 있는 라이선스 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ E5, P2 등 | ❌ | ❌ | | 미사용 라이선스 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 라이선스가 있는 비활성 | ❌ | ❌ | ❌ | ❌ | ✅ 로그인 없음 | ❌ | ❌ | | 라이선스 사용 분석 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 소비 통계 | ❌ | ❌ | ❌ | | Power Apps 열거 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 포괄적 | ❌ | | Power Automate 흐름 열거 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 포괄적 | ❌ | | 민감한 커넥터 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 30개 이상의 커넥터 | ❌ | | 고위험 작업 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 삭제/생성/수정 | ❌ | | 커넥터 위험 분석 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 중요/높음/중간/낮음 | ❌ | ❌ | | 그룹 열거 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 포괄적(모든 유형) | ❌ | | 소유자 없음 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 고아 그룹 | ❌ | | 과도한 멤버십 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 100명 초과 또는 500명 초과 멤버 | ❌ | | 역할 할당 가능 그룹 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 중요 위험 그룹 | ❌ | | 그룹 유형 분석 | ✅ 기본 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 보안/M365/배포/동적 | ❌ | | OAuth 동의 부여 열거 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 모든 OAuth2PermissionGrants | | 관리자 vs 사용자 동의 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 테넌트 전체 vs 개별 | | 위험한 권한 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 메일/파일/디렉터리 액세스 | | 오래된 동의 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 구성 가능한 임계값 | | 타사 앱 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Microsoft vs 타사 | | 게시자 확인 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 게시자 확인 상태 | | 다중 테넌트 스캔 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 모든 접근 가능한 테넌트 | ❌ | | 실패한 테넌트 건너뛰기 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ MFA/CA 실패 시 계속 | ❌ | | Azure RBAC 기준선 내보내기 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ JSON 기준선 | ❌ | | Azure RBAC 드리프트 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 새/제거/수정된 할당 | ❌ | | 다중 구독 지원 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 테넌트 전체 모든 구독 | ❌ | | 그룹 멤버 확장 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 그룹 확장해 사용자 표시 | ❌ | | 모든 사용자 권한 매트릭스 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 사용자 중심 권한 보기 | ❌ | | 범위 계층 분석 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 구독/RG/리소스 | ❌ | | PIM/JIT 제외 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 시간 제한 할당 제외 | ❌ | | ABAC 조건 탐지 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 조건 불일치 드리프트 | ❌ | | 수정 지침 | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Terraform/CLI/PowerShell | ❌ | | 위험 수준 평가 | 기본 | 고급(높음/중간/낮음) | 고급(높음/중간/낮음) | 고급(높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간/낮음) | 고급(중요/높음/중간) | 고급(중요/높음/중간/낮음) | | 활동 분석 | 제한적 | 상세(오래된/최근/없음) | 상세(오래된/최근/없음) | 상세(오래된/최근/없음) | 상세(오래된/최근/없음) | 기본(수명 기반) | 상세(자격 증명 만료/권한 분석) | 정책 격차 분석 | 상세(범위 지정 관리자 활동) | 상세(오래된 지표) | 상세(오래된/최근/없음) | 상세(오래된/최근/없음) | 상세(암호 수명/정책 격차) | 상세(사용 최근성/프로토콜 통계) | 상세(라이선스 사용/미사용 추적) | 상세(동기화 상태/오류 통계) | 상세(리소스/환경/소유자 통계) | 상세(그룹 유형/소유자/멤버십 통계) | 상세(공격 경로 유형/복잡성/위험 통계) | 상세(드리프트 유형/역할/테넌트/구독 통계) | 상세(동의 유형/권한/오래된 통계) | | 매트릭스 보기 | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | 부서 분석 | ✅ | ✅ 통계 포함 | ✅ 통계 포함 | ✅ 통계 포함 | ✅ 통계 포함 | ❌ | ❌ | ✅ 통계 포함 | ✅ 통계 포함 | ❌ | ✅ 통계 포함 | ✅ 통계 포함 | ✅ 통계 포함 | ✅ 통계 포함 | ✅ 통계 포함 | ❌ | ❌ | ❌ | ❌ | ❌ | | BloodHound 내보내기 | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | HTML 보고서 | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | CSV/JSON 내보내기 | ✅ | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ 향상된 필드 | ✅ JSON 기준선/드리프트 보고서 | ✅ 향상된 필드 | | 은밀 모드 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | | 레드 팀 정찰 | MFA 규정 준수 감사 | 외부 사용자 보안 | 권한 있는 접근 감사 | 권한 있는 역할 거버넌스 | 서비스 계정 보안 | 애플리케이션 등록 보안 및 자격 증명 관리 | 보안 정책 격차 분석 | 범위 지정 관리자 접근 거버넌스 | 계정 위생 및 정리 | 디바이스 신뢰 및 규정 준수 | 암호 재설정 보안 | 암호 정책 규정 준수 | 레거시 인증 마이그레이션 및 보안 | 라이선스 거버넌스 및 비용 최적화 | 디렉터리 동기화 상태 및 오류 추적 | Power Platform 보안 및 커넥터 거버넌스 | 그룹 보안 및 거버넌스 | 공격 경로 분석 및 권한 상승 탐지 | 다중 테넌트 Azure RBAC 거버넌스 및 무단 접근 탐지 | OAuth 동의 보안 및 불법 동의 부여 탐지 |


설치

Python 종속성```bash

pip install -r requirements.txt

root@kitploit:~
또는 수동으로 설치:```bash
pip install msal requests

# Optional: Additional authentication methods
pip install azure-identity

PowerShell Dependencies

Enumerate-EntraUsers: 스크립트는 첫 실행 시 필요한 Microsoft.Graph.Users 모듈을 자동으로 설치합니다.

MFA Security Check, Guest Account Enumeration, Critical Admin Access Check, Privileged Role Check, Service Principal Check, Application Registration Check, Conditional Access Check, Administrative Unit Check, Stale Account Check, Device Trust Check, SSPR Check, Password Policy Check, Legacy Auth Check, License Check, Directory Sync Check, Power Platform Check, and Group Security Check: Microsoft Graph PowerShell SDK가 필요합니다:

Azure RBAC Check: Azure PowerShell 모듈이 필요합니다:```powershell Install-Module Az -Scope CurrentUser

root@kitploit:~
또는 개별 모듈을 설치하십시오:```powershell
Install-Module Az.Accounts -Scope CurrentUser
Install-Module Az.Resources -Scope CurrentUser

다른 도구들:```powershell Install-Module Microsoft.Graph -Scope CurrentUser

root@kitploit:~
또는 개별 모듈 설치:```powershell
Install-Module Microsoft.Graph.Authentication -Scope CurrentUser
Install-Module Microsoft.Graph.Users -Scope CurrentUser
Install-Module Microsoft.Graph.Identity.SignIns -Scope CurrentUser
Install-Module Microsoft.Graph.Identity.DirectoryManagement -Scope CurrentUser
Install-Module Microsoft.Graph.Applications -Scope CurrentUser
Install-Module Microsoft.Graph.Groups -Scope CurrentUser

인증

두 스크립트 모두 여러 인증 방법을 지원합니다:

  • 대화형 브라우저 - 브라우저를 통한 OAuth 로그인
  • 디바이스 코드 흐름 - 헤드리스 환경을 위한 코드 기반 인증
  • Azure CLI 토큰 - 캐시된 az login 자격 증명 사용
  • Azure PowerShell 토큰 - 캐시된 Connect-AzAccount 자격 증명 사용
  • 환경 변수 - GRAPH_ACCESS_TOKEN 또는 AZURE_ACCESS_TOKEN 설정
  • 수동 토큰 입력 - 토큰 직접 붙여넣기

Python 버전은 추가로 다음을 지원합니다:

  • 갱신 토큰 교환 - ROADtools, TokenTactics 등의 토큰 사용
  • 관리 ID - Azure 호스팅 환경용
  • VS Code 자격 증명 - Azure 확장 캐시 토큰
  • 공유 토큰 캐시 - Windows 캐시 자격 증명

스크립트 인증 및 권한 참조

이 섹션에서는 툴킷의 각 스크립트에 필요한 인증 방법 및 API 권한의 종합 매트릭스를 제공합니다.

스크립트 범주별 인증 방법

모든 스크립트는 동일한 핵심 인증 방법을 지원하며, 대상 API에 따라 약간의 차이가 있습니다:

Microsoft Graph 스크립트 (Entra ID)

스크립트: EntraRecon, EntraMFACheck, EntraGuestCheck, EntraAppAccess, EntraRoleCheck, EntraServicePrincipalCheck, EntraConditionalAccessCheck, EntraAdminUnitCheck, EntraStaleAccountCheck, EntraDeviceCheck, EntraSSPRCheck, EntraPasswordPolicyCheck, EntraLegacyAuthCheck, EntraLicenseCheck, EntraDirectorySyncCheck, EntraPowerPlatformCheck, EntraGroupCheck, EntraApplicationCheck, EntraAttackPathCheck, EntraOAuthConsentCheck, EntraSignInRiskCheck, EntraPIMCheck, EntraComplianceCheck

Azure 리소스 스크립트 (ARM)

스크립트: EntraAzureRBACCheck, EntraKeyVaultCheck, EntraStorageAccountCheck, EntraManagedIdentityCheck, EntraNetworkSecurityCheck, EntraAzureAttackPathCheck

Microsoft 365 서비스 스크립트


스크립트별 Microsoft Graph 권한 범위

다음 표는 각 Microsoft Graph 기반 스크립트에 필요한 범위와 폴백 범위를 보여줍니다. 폴백 범위는 사용자에게 전체 필수 범위 집합에 대한 권한이 없는 경우 사용됩니다.


Azure 리소스 스크립트 - 필수 권한

이 스크립트들은 Azure PowerShell(Az 모듈)을 사용하며 Microsoft Graph 범위 대신 Azure RBAC 권한이 필요합니다:


Microsoft 365 서비스 스크립트 - 필수 권한


가장 일반적으로 필요한 범위

다음 Microsoft Graph 범위는 툴킷 전체에서 가장 자주 필요합니다:


전체 툴킷을 위한 최소 권한 집합

모든 스크립트를 전체 기능으로 실행하려면 다음과 같은 통합 권한 집합이 권장됩니다:

Microsoft Graph (위임된 권한):``` Application.Read.All AuditLog.Read.All AdministrativeUnit.Read.All Device.Read.All DeviceManagementConfiguration.Read.All DeviceManagementManagedDevices.Read.All Directory.Read.All Group.Read.All GroupMember.Read.All IdentityRiskDetection.Read.All IdentityRiskySignIn.Read.All IdentityRiskyUser.Read.All Policy.Read.All PrivilegedAccess.Read.AzureAD Reports.Read.All RoleManagement.Read.Directory User.Read.All UserAuthenticationMethod.Read.All

root@kitploit:~
**Azure RBAC:**
- 구독 또는 관리 그룹 수준의 읽기 권한자 역할 (Azure 리소스 스크립트용)
- Key Vault 읽기 권한자 (비밀 열거를 통한 EntraKeyVaultCheck용)
- Storage Blob 데이터 읽기 권한자 (컨테이너 열거를 통한 EntraStorageAccountCheck용)

**Microsoft 365 관리자 역할:**
- Exchange 관리자 (EntraExchangeCheck용)
- SharePoint 관리자 (EntraSharePointCheck용)
- Teams 관리자 (EntraTeamsCheck용)

---

## 법적 고지

이 도구 키트는 승인된 보안 테스트 및 연구 목적으로만 사용됩니다. 사용자는 이 도구를 시스템에 사용하기 전에 적절한 승인을 받았는지 확인할 책임이 있습니다. 저자는 이 소프트웨어의 오용에 대해 어떠한 책임도 지지 않습니다.

---

## 라이선스

GNU General Public License v3.0 - 자세한 내용은 [LICENSE](https://github.com/logisek/evilmist/blob/HEAD/LICENSE) 파일을 참조하십시오.

**Copyright (C) 2025 Logisek**

---

## 기여

기여를 환영합니다! 버그 및 기능 요청에 대해 풀 리퀘스트를 제출하거나 이슈를 열어 주시기 바랍니다.

---

## 감사의 말

- [Microsoft Graph API](https://docs.microsoft.com/en-us/graph/) - 주요 데이터 소스
- [BloodHound](https://github.com/BloodHoundAD/BloodHound) - 공격 경로 분석 영감
- [AzureHound](https://github.com/BloodHoundAD/AzureHound) - Azure 데이터 수집 형식
- [microsoft-info](https://github.com/merill/microsoft-info) - Microsoft 자사 앱 이름 및 Graph 사용 권한

---
도구 다운로드
scripts/python/entra_recon.py
az login
Connect-AzAccount
  • 내보내기 옵션 — JSON 기준선 내보내기, 확장된 그룹 내보내기 및 세부 권장 사항이 포함된 JSON 드리프트 보고서
  • 스텔스 모드 — 탐지를 피하기 위해 구성 가능한 지연 및 지터
  • 문서설명
    EntraRecon-PS1.md모든 매개변수, 기능 및 사용 예제를 포함한 전체 PowerShell 스크립트 문서
    EntraRecon-PY.md인증 방법, 스텔스 구성 및 예제를 포함한 전체 Python 스크립트 문서
    EntraMFACheck-PS1.mdMFA 보안 점검 문서 - 공유 사서함 탐지, 로그인 추적 및 위험 평가 포함
    EntraGuestCheck-PS1.md게스트 계정 열거 문서 - 게스트 도메인 추출, 초대 추적 및 보안 분석 포함
    EntraAppAccess-PS1.mdPowerShell 및 Graph CLI 접근 권한 점검 문서 - 앱 접근 추적, 할당 날짜 및 권한 있는 접근 분석 포함
    EntraRoleCheck-PS1.md권한 있는 역할 점검 문서 - 역할 열거, PIM 할당 추적, 위험 평가 및 보안 분석 포함
    EntraServicePrincipalCheck-PS1.md서비스 주체 보안 점검 문서 - 자격 증명 열거, 만료 추적, 권한 분석, 소유자 보안 및 위험 평가 포함
    EntraConditionalAccessCheck-PS1.md조건부 액세스 정책 보안 점검 문서 - 정책 열거, 제외 탐지, MFA 시행 격차, 중요 앱 적용 범위 및 위험 평가 포함
    EntraStaleAccountCheck-PS1.md오래된 계정 점검 문서 - 오래된 계정 탐지, 미로그인 탐지, 라이선스 낭비 탐지, 비밀번호 만료 추적 및 계정 위생 분석 포함
    EntraDeviceCheck-PS1.md디바이스 신뢰 및 컴플라이언스 점검 문서 - 디바이스 열거, 컴플라이언스 상태 탐지, BYOD 탐지, 오래된 로그인 추적, Intune 컴플라이언스 정책 및 위험 평가 포함
    EntraSSPRCheck-PS1.md셀프 서비스 비밀번호 재설정 점검 문서 - SSPR 상태 탐지, 등록 방법 분석, 백업 방법 탐지, 강력한 방법 분류, MFA 상관관계 및 위험 평가 포함
    EntraPasswordPolicyCheck-PS1.md비밀번호 정책 보안 점검 문서 - 비밀번호 만료 분석, 만료 없음 탐지, 복잡성 요구 사항 확인, 취약한 정책 식별, 비밀번호 사용 기간 추적 및 위험 평가 포함
    EntraLegacyAuthCheck-PS1.md레거시 인증 점검 문서 - 레거시 프로토콜 탐지, 로그인 로그 분석, 마지막 사용 추적, 프로토콜 통계, MFA 상관관계 및 위험 평가 포함
    EntraLicenseCheck-PS1.md라이선스 및 SKU 분석 문서 - 테넌트 SKU 열거, 사용자 라이선스 할당 추적, 권한 있는 라이선스 탐지, 미사용 라이선스 식별 및 위험 평가 포함
    EntraAdminUnitCheck-PS1.md관리 단위 보안 점검 문서 - AU 열거, 범위 지정 역할 할당 분석, 구성원 열거, MFA 상태 탐지, 위험 평가 및 범위 지정 관리자 접근 분석 포함
    EntraDirectorySyncCheck-PS1.md디렉터리 동기화 상태 점검 문서 - 동기화 상태 분석, 동기화 오류 탐지, 오래된 동기화 탐지, 동기화 충돌 식별, 동기화 범위 분석 및 위험 평가 포함
    EntraPowerPlatformCheck-PS1.mdPower Platform 열거 문서 - Power Apps 열거, Power Automate 흐름 열거, 민감한 커넥터 탐지, 고위험 작업 식별, 커넥터 분석 및 위험 평가 포함
    EntraGroupCheck-PS1.md그룹 보안 분석 문서 - 그룹 열거, MFA 상태가 포함된 소유자 분석, 소유자 없음 탐지, 과도한 구성원 수 탐지, 역할 할당 가능 그룹 탐지 및 위험 평가 포함
    EntraApplicationCheck-PS1.md애플리케이션 등록 보안 점검 문서 - 애플리케이션 열거, 자격 증명 분석, 만료 추적, API 권한 분석, 소유자 보안 평가 및 위험 평가 포함
    EntraAttackPathCheck-PS1.md공격 경로 분석 문서 - 권한 상승 경로, 비밀번호 재설정 위임, 전이적 그룹 구성원, 공유 사서함 접근, 위험 평가 및 경로 복잡성 분석 포함
    EntraAzureRBACCheck-PS1.mdAzure RBAC 역할 할당 감사 및 드리프트 탐지 문서 - 기준선 내보내기, 드리프트 탐지, 다중 구독 지원, 다중 테넌트 지원, 실패한 테넌트 건너뛰기, 그룹 구성원 확장, 모든 사용자 권한 매트릭스, PIM/JIT 제외, ABAC 조건 불일치 탐지, 수정 지침(Terraform/CLI/PowerShell), 역할 할당 추적, 무단 변경 탐지 및 위험 평가 포함
    EntraOAuthConsentCheck-PS1.mdOAuth 동의 권한 부여 감사 문서 - OAuth2PermissionGrant 열거, 관리자 대 사용자 동의 탐지, 위험한 권한 식별, 오래된 동의 탐지, 타사 앱 분석, 로그인 활동 상관관계 및 불법 동의 권한 부여 탐지 위험 평가 포함
    EntraSignInRiskCheck-PS1.mdID 보호 분석 문서 - 위험한 사용자 열거, 위험 수준/상태 추적, 위험 탐지 분석, 불가능한 이동 탐지, 익명 IP 탐지, 암호 스프레이 탐지, 유출된 자격 증명 탐지, 패턴 분석, 타이밍 분석 및 수정 가이드 포함
    EntraPIMCheck-PS1.mdPIM(Privileged Identity Management) 구성 감사 문서 - JIT 접근 구성 격차, 승인 워크플로 분석, MFA 시행, 정당성 요구 사항, 알림 구성, 영구 할당 탐지, PIM for Groups, 액세스 검토 및 위험 평가 포함
    EntraKeyVaultCheck-PS1.mdAzure Key Vault 보안 감사 문서 - 접근 모델 분석(RBAC 대 액세스 정책), 일시 삭제 및 제거 보호 상태, 네트워크 보안 감사(퍼블릭 액세스, 방화벽, VNet), 프라이빗 엔드포인트 탐지, 과도한 권한 부여 탐지, 진단 로깅 확인, 비밀/인증서/키 만료 추적 및 위험 평가 포함
    EntraStorageAccountCheck-PS1.mdAzure 스토리지 계정 보안 감사 문서 - 퍼블릭 Blob 컨테이너 탐지, HTTPS 적용 확인, 공유 키 액세스 분석, 네트워크 보안 감사(퍼블릭 액세스, 방화벽, VNet, 프라이빗 엔드포인트), 데이터 보호 분석(일시 삭제, 버전 관리), 키 순환 추적, 교차 테넌트 복제 탐지, TLS 버전 확인, 인프라 암호화 확인, 진단 로깅 확인 및 위험 평가 포함
    EntraNetworkSecurityCheck-PS1.mdAzure 네트워크 보안 감사 문서 - NSG 규칙 분석, 과도한 허용 규칙 탐지(0.0.0.0/0, Any-Any), 열린 관리 포트 탐지(RDP, SSH, WinRM), Azure Bastion 사용 분석, DDoS 보호 상태, VNet 피어링 보안, 서브넷 NSG 적용 범위, NSG 흐름 로그 구성, VPN/ExpressRoute 게이트웨이 분석, 트래픽 분석 상태 및 위험 평가 포함
    EntraManagedIdentityCheck-PS1.mdAzure 관리 ID 보안 감사 문서 - 시스템 할당 대 사용자 할당 ID 인벤토리, 역할 할당 분석, 고권한 ID 탐지(Owner, Contributor, UAA), 중요 역할 탐지, 교차 구독 접근 탐지, 미사용 ID 식별, 리소스 적용 범위(VM, App Services, Function Apps), 범위 분석 및 위험 평가 포함
    EntraExchangeCheck-PS1.mdExchange Online 보안 감사 문서 - 받은 편지함 규칙 분석, 외부 전달 탐지, 전송 규칙 감사, 사서함 위임 분석, 감사 로깅 상태, OWA 정책 분석, 클라이언트 액세스 규칙, BEC 지표 탐지, 의심스러운 규칙 탐지 및 위험 평가 포함
    EntraSharePointCheck-PS1.mdSharePoint Online 보안 감사 문서 - 테넌트 공유 설정, 익명 링크 탐지, 사이트 수준 재정의 탐지, 게스트 접근 분석, OneDrive 공유 구성, 민감도 레이블 적용 범위, 기본 링크 분석, 링크 만료 정책 및 위험 평가 포함
    EntraTeamsCheck-PS1.mdMicrosoft Teams 보안 감사 문서 - 외부 접근(페더레이션) 설정, 게스트 접근 정책, 모임 정책 분석(익명 참가, 로비 우회), 앱 권한 정책, 메시징 정책, Teams 인벤토리 분석 및 위험 평가 포함
    EntraAzureAttackPathCheck-PS1.mdAzure 교차 서비스 공격 경로 분석 문서 - VM에서 Key Vault 경로, 관리 ID 권한 상승, 스토리지 측면 이동, 사용자 지정 역할 취약점, 교차 구독 경로, 관리 그룹 상속, 공격 내러티브 및 위험 평가 포함
    EntraReport-PS1.md통합 보안 보고서 생성기 문서 - 다중 검사 실행, HTML 경영진 대시보드, 보안 점수 계산, 수정 우선순위 매트릭스, 기준선 비교를 통한 추세 분석, 빠른 검사 및 종합 검사 모드, JSON 기준선 내보내기 포함
    EntraComplianceCheck-PS1.md컴플라이언스 평가 문서 - CIS Azure Benchmark 매핑, NIST 800-53 통제 매핑, SOC 2 신뢰 서비스 기준, ISO 27001 통제, GDPR 지표, 컴플라이언스 점수, 통제 계열 필터링 및 경영진 보고 포함
    SharePointEnum-PS1.mdSharePoint Online 열거 문서 - REST API 검색, FQL 쿼리, 정제 필터, 파일 다운로드(디스크 및 Base64), 자동 탐지, 스마트 인증 폴백(세션 토큰 유효성 검사, Azure CLI 폴백, MSAL 디바이스 코드 흐름), 스텔스 모드 및 내보내기 옵션 포함
    기능PowerShellPython
    사용자 열거(15개 이상의 방법)✅✅
    보안 평가✅✅
    자격 증명 공격 표면✅✅
    조건부 액세스 분석✅✅
    디바이스/Intune 열거✅✅
    공격 경로 분석✅✅
    Power Platform 열거✅✅
    측면 이동 분석✅✅
    BloodHound 내보내기✅✅
    HTML 보고서 생성✅✅
    스텔스 모드✅✅
    대화형 메뉴✅✅
    Azure CLI 토큰✅✅
    디바이스 코드 흐름✅✅
    리프레시 토큰 교환❌✅
    확장된 앱 ID 데이터베이스❌✅
    스텔스 사전 설정❌✅
    최적 용도
    매개변수방법설명
    (기본값)대화형Connect-MgGraph 대화형 OAuth 브라우저 프롬프트
    -UseAzCliTokenAzure CLI 토큰az account get-access-token --resource https://graph.microsoft.com 사용
    -UseAzPowerShellTokenAzure PowerShell 토큰Get-AzAccessToken -ResourceUrl "https://graph.microsoft.com" 사용
    매개변수방법설명
    (기본값)대화형대화형 브라우저 프롬프트로 Connect-AzAccount
    -UseAzCliTokenAzure CLI 토큰기존 az login 세션 사용
    -UseAzPowerShellTokenAzure PowerShell 토큰기존 Connect-AzAccount 세션 사용
    -UseDeviceCode디바이스 코드 흐름헤드리스 터미널용 Connect-AzAccount -UseDeviceAuthentication
    스크립트모듈인증
    EntraExchangeCheckExchangeOnlineManagementConnect-ExchangeOnline (Exchange 관리자 역할 필요)
    EntraSharePointCheckMicrosoft.Online.SharePoint.PowerShellSharePoint 관리 URL에 Connect-SPOService (SharePoint 관리자 역할 필요)
    SharePointEnumAz.Accounts (선택 사항)스마트 폴백: Azure 세션 토큰 → Azure CLI → MSAL 디바이스 코드 흐름 (Microsoft Office 클라이언트 ID)
    EntraTeamsCheckMicrosoftTeamsConnect-MicrosoftTeams (Teams 관리자 역할 필요)
    스크립트필수 범위폴백 범위
    Invoke-EntraApplicationCheckApplication.Read.All, Directory.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.AllApplication.Read.All, Directory.Read.All, User.ReadBasic.All
    Invoke-EntraRoleCheckDirectory.Read.All, RoleManagement.Read.Directory, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.AllDirectory.Read.All, RoleManagement.Read.Directory, User.ReadBasic.All
    Invoke-EntraMFACheckUser.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.AllUser.ReadBasic.All, UserAuthenticationMethod.Read.All
    Invoke-EntraGroupCheckDirectory.Read.All, Group.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.AllDirectory.Read.All, Group.Read.All, User.ReadBasic.All
    Invoke-EntraGuestCheckUser.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.AllUser.ReadBasic.All, UserAuthenticationMethod.Read.All
    Invoke-EntraAdminUnitCheckDirectory.Read.All, AdministrativeUnit.Read.All, RoleManagement.Read.Directory, User.Read.All, UserAuthenticationMethod.Read.AllDirectory.Read.All, AdministrativeUnit.Read.All, User.ReadBasic.All
    Invoke-EntraConditionalAccessCheckPolicy.Read.All, Directory.Read.All, Application.Read.All, User.Read.AllPolicy.Read.All, Directory.Read.All
    Invoke-EntraDeviceCheckDevice.Read.All, Directory.Read.All, DeviceManagementManagedDevices.Read.All, DeviceManagementConfiguration.Read.AllDevice.Read.All, Directory.Read.All
    Invoke-EntraDirectorySyncCheckDirectory.Read.All, User.Read.All, AuditLog.Read.AllDirectory.Read.All, User.ReadBasic.All
    Invoke-EntraAttackPathCheckDirectory.Read.All, Group.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, RoleManagement.Read.Directory, AuditLog.Read.AllDirectory.Read.All, Group.Read.All, User.ReadBasic.All
    Invoke-EntraServicePrincipalCheckApplication.Read.All, Directory.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.AllApplication.Read.All, Directory.Read.All, User.ReadBasic.All
    Invoke-EntraPasswordPolicyCheckUser.Read.All, Directory.Read.All, AuditLog.Read.AllUser.ReadBasic.All, Directory.Read.All
    Invoke-EntraLicenseCheckDirectory.Read.All, User.Read.AllUser.ReadBasic.All
    Invoke-EntraLegacyAuthCheckAuditLog.Read.All, Directory.Read.All, User.Read.All, UserAuthenticationMethod.Read.AllDirectory.Read.All, User.ReadBasic.All
    Invoke-EntraSSPRCheckUser.Read.All, UserAuthenticationMethod.Read.All, Reports.Read.All, AuditLog.Read.AllUser.ReadBasic.All, Reports.Read.All
    Invoke-EntraStaleAccountCheckUser.Read.All, Directory.Read.All, AuditLog.Read.AllUser.ReadBasic.All, Directory.Read.All
    Invoke-EntraAppAccessApplication.Read.All, Directory.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.AllApplication.Read.All, Directory.Read.All, User.ReadBasic.All
    Invoke-EntraPIMCheckDirectory.Read.All, User.Read.All, RoleManagement.Read.Directory, PrivilegedAccess.Read.AzureADDirectory.Read.All, User.ReadBasic.All
    Invoke-EntraOAuthConsentCheckApplication.Read.All, Directory.Read.All, User.Read.All, AuditLog.Read.AllApplication.Read.All, Directory.Read.All, User.ReadBasic.All
    Invoke-EntraSignInRiskCheckIdentityRiskyUser.Read.All, IdentityRiskySignIn.Read.All, IdentityRiskDetection.Read.All, AuditLog.Read.All, User.Read.All, Directory.Read.AllIdentityRiskyUser.Read.All, IdentityRiskySignIn.Read.All, IdentityRiskDetection.Read.All
    Invoke-EntraPowerPlatformCheckUser.Read.All, Directory.Read.All, Application.Read.All(사용자 컨텍스트를 통한 Power Platform API 권한)
    Invoke-EntraComplianceCheckDirectory.Read.All, Policy.Read.All, User.Read.All, Application.Read.All, AuditLog.Read.All, RoleManagement.Read.Directory, IdentityRiskyUser.Read.All, IdentityRiskEvent.Read.All, UserAuthenticationMethod.Read.AllDirectory.Read.All, Policy.Read.All, User.ReadBasic.All
    스크립트Azure RBAC 권한추가 Graph 범위
    Invoke-EntraAzureRBACCheck대상 구독에 대한 읽기 권한자 역할User.Read, Directory.Read.All, GroupMember.Read.All
    Invoke-EntraKeyVaultCheck구독에 대한 읽기 권한자, 비밀 열거를 위한 Key Vault 읽기 권한자-
    Invoke-EntraStorageAccountCheck구독에 대한 읽기 권한자, 컨테이너 열거를 위한 Storage Blob 데이터 읽기 권한자-
    Invoke-EntraManagedIdentityCheck구독에 대한 읽기 권한자Graph 쿼리를 위한 Directory.Read.All
    Invoke-EntraNetworkSecurityCheckNSG/VNet 열거를 위한 구독에 대한 읽기 권한자-
    Invoke-EntraAzureAttackPathCheck구독에 대한 읽기 권한자, 액세스 정책 열거를 위한 Key Vault 읽기 권한자-
    스크립트모듈필수 역할/권한
    Invoke-EntraExchangeCheckExchangeOnlineManagementExchange 관리자 또는 동등한 역할. 필요: Get-InboxRule, Get-TransportRule, Get-MailboxPermission, Get-Mailbox
    Invoke-EntraSharePointCheckMicrosoft.Online.SharePoint.PowerShellSharePoint 관리자 또는 동등한 역할. 필요: Get-SPOTenant, Get-SPOSite, 공유 구성 cmdlet
    Invoke-SharePointEnumAz.Accounts (선택 사항)SharePoint 액세스 권한이 있는 모든 사용자. Azure 세션, Azure CLI 또는 MSAL 디바이스 코드 흐름을 통해 위임된 권한으로 SharePoint REST Search API 사용
    Invoke-EntraTeamsCheckMicrosoftTeamsTeams 관리자 또는 동등한 역할. 필요: Get-CsTenantFederationConfiguration, Get-CsTeamsMeetingPolicy, Get-CsTeamsClientConfiguration, Get-Team
    범위사용 스크립트목적
    Directory.Read.All21개 이상디렉터리 개체(사용자, 그룹, 역할, 설정) 읽기
    User.Read.All19개 이상로그인 활동을 포함한 모든 사용자 속성 읽기
    AuditLog.Read.All16개 이상로그인 로그, 감사 로그, 활동 보고서 읽기
    UserAuthenticationMethod.Read.All13개 이상MFA 등록 및 인증 방법 확인
    Application.Read.All7개 스크립트앱 등록 및 서비스 주체 읽기
    Group.Read.All4개 스크립트그룹 멤버십 및 속성 읽기
    RoleManagement.Read.Directory5개 스크립트디렉터리 역할 할당 및 PIM 구성 읽기
    Policy.Read.All3개 스크립트조건부 액세스 정책 및 보안 기본값 읽기
    Device.Read.All1개 스크립트장치 등록 읽기
    AdministrativeUnit.Read.All1개 스크립트관리 단위 읽기
    PrivilegedAccess.Read.AzureAD1개 스크립트PIM 역할 설정 및 할당 읽기
    IdentityRiskyUser.Read.All2개 스크립트Identity Protection 위험 사용자 읽기
    IdentityRiskySignIn.Read.All1개 스크립트Identity Protection 위험 로그인 읽기
    IdentityRiskEvent.Read.All2개 스크립트Identity Protection 위험 이벤트 및 탐지 읽기
    Reports.Read.All1개 스크립트사용 보고서(SSPR) 읽기
    DeviceManagementManagedDevices.Read.All1개 스크립트Intune 관리 장치 읽기
    DeviceManagementConfiguration.Read.All1개 스크립트Intune 규정 준수 정책 읽기