Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/f-bader/tokentacticsv2
Phishing ToolsPenetration TestingCloud SecurityIdentity & Access Management (IAM)AuthenticationRed Teaming
GitHubf-bader/tokentacticsv2

TokenTacticsV2

CAE 및 토큰 엔드포인트 v2를 지원하는 훌륭한 TokenTactics의 포크입니다.

저장소 보기
444516417일 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
  ______      __                 __             __  _                     ___ 
 /_  __/___  / /_____  ____     / /_____ ______/ /_(_)_________   _   __ |__ \
  / / / __ \/ //_/ _ \/ __ \   / __/ __ `/ ___/ __/ / ___/ ___/  | | / / __/ /
 / / / /_/ / ,< /  __/ / / /  / /_/ /_/ / /__/ /_/ / /__(__  )   | |/ / / __/ 
/_/  \____/_/|_|\___/_/ /_/   \__/\__,_/\___/\__/_/\___/____/    |___(_)____/     

TokenTactics v2

이것은 원래 Stephan Borosh @rvrsh3ll와 Bobby Cooke @0xBoku가 작성한 TokenTactics의 업데이트된 버전입니다.

Azure JSON Web Token("JWT") 조작 도구 세트

Azure 액세스 토큰을 사용하면 디바이스 코드로 로그인한 사용자로 특정 엔드포인트에 인증할 수 있습니다. FOCI(클라이언트 ID 패밀리) 지원 갱신 토큰을 보유하고 있다면 이를 사용하여 알려진 FOCI 지원 엔드포인트 모두에 대한 액세스 토큰을 얻을 수 있습니다. 갱신 토큰에는 사용자가 다단계 인증을 수행했는지 여부에 대한 정보도 포함되어 있으므로 이를 활용할 수 있습니다. 사용자의 액세스 토큰을 확보하면 Outlook, SharePoint, OneDrive, MSTeams 등과 같은 특정 앱에 액세스할 수 있습니다.

예를 들어, Graph 또는 MSGraph 갱신 토큰을 보유한 경우 Azure에 연결하여 사용자, 그룹 등을 덤프할 수 있습니다. 그런 다음 조건부 액세스 정책에 따라 Azure Core Management 토큰으로 전환하고 AzureHound를 실행할 수 있습니다. 그런 다음 Outlook 액세스 토큰을 얻어 이메일을 읽거나 보내거나, MS Teams 액세스 토큰을 얻어 Teams 메시지를 읽거나 보낼 수 있습니다!

Azure 토큰 유형에 대한 자세한 내용은 Microsoft ID 플랫폼 액세스 토큰을 참조하세요.

리소스 폴더에는 엔드포인트에 대한 예시 요청이 몇 개 있습니다. 또한 디바이스 코드 피싱을 위한 예시 피싱 템플릿도 있습니다.

이러한 토큰을 AAD Internals와 함께 사용할 수도 있습니다. 이 훌륭한 도구를 확인해 보시길 적극 권장합니다.

설치 및 사용법

Import-Module .\TokenTactics.psd1
Get-Help Get-EntraIDToken
Invoke-RefreshToSubstrateToken -Domain "myclient.org"

테스트

테스트 스위트는 PowerShell 7과 Pester 5.7.1이 필요합니다. 모의 HTTP 응답을 사용하며 Entra ID 자격 증명이나 네트워크 액세스가 필요하지 않습니다.

Install-Module Pester -RequiredVersion 5.7.1 -Scope CurrentUser
pwsh ./tests/Invoke-Tests.ps1

동일한 스위트가 모든 풀 리퀘스트에 대해 Linux, macOS 및 Windows에서 실행됩니다.

디바이스 코드 흐름을 사용하여 갱신 토큰 가져오기

Get-EntraIDToken -Client MSGraph

사용자가 로그인하면 JWT가 표시되고 $response 변수에 저장됩니다. 액세스 토큰에 접근하려면 PowerShell 창에서 $response.access_token을 사용하여 토큰을 표시합니다. 또한 $response.refresh_token을 사용하여 갱신 토큰을 표시할 수도 있습니다. 힌트: 새 토큰으로 계속 갱신하려면 갱신 토큰이 필요합니다!

DOD/Mil 디바이스 코드

Get-EntraIDToken -Client DODMSGraph

패스키를 사용하여 로그인

[!IMPORTANT] 이 기능은 v0.2.20에서 도입되었으며 PowerShell 7.0이 필요합니다.

KeePassXC, Bitwarden, 1Password 또는 이와 유사한 타사 제공업체에서 패스키를 생성한 경우 개인 키 자료를 내보낼 수 있습니다.

[!CAUTION] 개인 키 자료를 내보내는 것은 매우 위험합니다. 진행하기 전에 위험을 충분히 이해했는지 확인하세요.

KeePassXC 패스키 파일 형식이 기본적으로 지원되며 cmdlet이 파일을 직접 가리킬 수 있습니다. 초기 로그인 절차는 필요한 ESTSAUTH 쿠키만 가져오며, Get-EntraIDTokenFromESTSCookie를 사용하여 이 쿠키를 베어러 토큰(액세스 토큰, 갱신 토큰 및 ID 토큰)으로 교환해야 합니다.

# ESTSAUTH 쿠키 값 검색
Invoke-EntraIDPasskeyLogin -Verbose -KeyFilePath "C:\Users\Fabian\Microsoft.passkey"
# ESTSAUTH 쿠키를 베어러 토큰으로 교환
Get-EntraIDTokenFromESTSCookie -CookieValue $Global:ESTSAUTH

지원되지 않는 파일 형식인 경우 필요한 값을 수동으로 지정하여 동일한 목표를 달성할 수 있습니다.

Invoke-EntraIDPasskeyLogin -Verbose -UserPrincipalName "[email protected]" -UserHandle "XYZ" -CredentialId "9e9c8297-0cde-4726-8852-16c141e15bd3" -PrivateKey $PrivateKey
Get-EntraIDTokenFromESTSCookie -CookieValue $Global:ESTSAUTH

SCCAUTH 쿠키를 사용하여 액세스 토큰 가져오기

security.microsoft.com에 대한 인증된 세션(예: Evilginx 또는 브라우저 DevTools를 통해)에서 sccauth 쿠키를 획득한 경우, Microsoft Defender XDR 포털을 통해 다양한 리소스에 대한 Entra ID 액세스 토큰을 검색하는 데 사용할 수 있습니다.

# sccauth 쿠키를 사용하여 Microsoft Graph 토큰 검색
Get-EntraIDTokenFromSCCAUTHCookie -SCCAuth "your_sccauth_value" -ResourceName MicrosoftGraph

# 부트스트래핑 요청을 건너뛰기 위해 XSRF 토큰을 명시적으로 제공
Get-EntraIDTokenFromSCCAUTHCookie -SCCAuth "your_sccauth_value" -XSRF "your_xsrf_value" -ResourceName Azure

# 사용자 지정 리소스 URL 사용
Get-EntraIDTokenFromSCCAUTHCookie -SCCAuth "your_sccauth_value" -Resource "https://management.core.windows.net/"

지원되는 -ResourceName 값: Azure, LogAnalytics, MATP, MCAS, MicrosoftGraph, MicrosoftOffice, Purview, PurviewACC, ThreatIntelligencePortal.

ESTSAuth* 쿠키에서 갱신 토큰 가져오기

Get-EntraIDTokenFromESTSCookie -ESTSAuthCookie "0.AbcApTk..."

이 모듈은 인증 코드 흐름을 사용하여 ESTSAuth(또는 ESTSAuthPersistent) 쿠키에서 액세스 토큰과 갱신 토큰을 얻습니다. Evilginx를 통해 세션을 피싱했거나 다른 방법으로 이 쿠키를 획득한 경우 유용합니다.

올바른 쿠키를 사용해야 합니다! ESTSAuthPersistent는 CA 정책이 실제로 영구 세션을 부여하는 경우에만 유용합니다. 그렇지 않으면 ESTSAuth를 사용해야 합니다. 일반적으로 길이를 기준으로 어느 것을 사용할지 알 수 있습니다. 더 긴 쿠키가 사용하려는 쿠키입니다 :)

참고: 일부 경우 사용자 상호 작용이 필요할 수 있으므로 항상 작동하지 않을 수 있습니다. 이런 경우 위의 디바이스 코드 흐름을 사용하거나 roadtx interactiveauth --estscookie를 시도하세요.

이 기능은 원래 저장소의 rotarydrone이 pull request에서 백포트했습니다.

인증 코드 흐름을 사용하여 갱신 토큰 가져오기

이 oauth2 흐름의 가장 대표적인 예시(적어도 2025년 초 기준) 중 하나는 Intune 회사 포털로, 일부 리소스에 대해 디바이스 준수 요구 사항을 우회할 수 있습니다.

이 정보는 @dirkjan이 처음 공개했으며, 이후 Black Hat Europe에서 @TEMP43487580이 더 넓은 청중에게 공개했습니다.

JumpsecLabs는 블로그 게시물과 TokenSmith 형태의 POC를 얼마 지나지 않아 게시했습니다.

이제 TokenTacticsV2에서도 동일한 기능을 사용할 수 있습니다.

Get-AzureAuthorizationCode는 인증에 사용할 수 있는 URL을 생성합니다.

Get-EntraIDTokenFromAuthorizationCode는 전체 URL을 사용하거나 AuthorizationCode 및 RedirectUrl 매개변수와 함께 사용하여 인증 코드를 액세스 토큰 및 갱신 토큰으로 교환합니다. 그 후에는 항상 그렇듯이 다른 리소스에 대한 액세스를 시도할 수 있습니다.

새 cmdlet 사용 방법

새 액세스 토큰으로 갱신

갱신 토큰을 지정하지 않으면 cmdlet은 기본적으로 $response.refresh_token을 사용합니다.

Invoke-RefreshToOutlookToken -domain "myclient.org"

$OutlookToken.access_token

액세스 토큰을 사용하여 AzureAD에 연결

Connect-AzureAD -AadAccessToken $response.access_token -AccountId [email protected]

액세스 토큰을 사용하여 MgGraph에 연결

Invoke-RefreshToMSGraphToken -Domain "myclient.org"
Connect-MgGraph -AccessToken $MSGraphToken.access_token -Scopes "User.Read.All","Group.ReadWrite.All"

토큰 지우기

이 명령은 모든 토큰 변수를 제거합니다.

Clear-Token -Token All

연속 액세스 평가

연속 액세스 평가를 통해 Microsoft는 추가 보안 조치를 구현하면서도 액세스 토큰의 최대 수명을 24시간으로 연장합니다. MSGraph, Exchange, Teams 및 SharePoint와 같은 특정 CAE 지원 서비스는 Azure AD에서 트리거된 특정 이벤트를 기반으로 액세스 토큰을 차단할 수 있습니다. 현재 이러한 중요 이벤트는 다음과 같습니다.

  • 사용자 계정이 삭제되거나 비활성화됨
  • 사용자의 암호가 변경되거나 재설정됨
  • 사용자에 대해 다단계 인증이 활성화됨
  • 관리자가 사용자의 모든 갱신 토큰을 명시적으로 해지함
  • Azure AD ID 보호에서 높은 사용자 위험이 감지됨(Teams 및 SharePoint Online 제외)
Invoke-RefreshToMSGraphToken -Domain "myclient.org" -UseCAE
if ((Parse-JWTtoken $MSGraphToken.access_token).ValidForHours -gt 23) { "MSGraph token is CAE capable" }

AAD Internals와 함께 사용

AADInternals도 설치되어 있는 경우 생성된 액세스 토큰을 사용할 수 있습니다.

Invoke-RefreshToMSTeamsToken -UseCAE -Domain "myclient.org"
Set-AADIntTeamsStatusMessage -Message "My cool status message" -AccessToken $MSTeamsToken.access_token -Verbose

명령어

Get-Command -Module TokenTactics

지원되는 사용자 대상 명령어만 내보내집니다. 구문 분석, PKCE, 일반 갱신 및 FIDO 암호화 헬퍼는 비공개 구현 세부 사항으로 남아 있습니다.

도구 다운로드