Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Ferramentas/GitHubGitHub/f-bader/tokentacticsv2
Ferramentas de PhishingTestes de PenetraçãoSegurança na NuvemGerenciamento de Identidade e Acesso (IAM)AutenticaçãoRed Teaming
GitHubf-bader/tokentacticsv2

TokenTacticsV2

Um fork do excelente TokenTactics com suporte para CAE e token endpoint v2

Ver Repositório
444516há 23 diasRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
root@kitploit:~
  ______      __                 __             __  _                     ___ 
 /_  __/___  / /_____  ____     / /_____ ______/ /_(_)_________   _   __ |__ \
  / / / __ \/ //_/ _ \/ __ \   / __/ __ `/ ___/ __/ / ___/ ___/  | | / / __/ /
 / / / /_/ / /,< /  __/ / / /  / /_/ /_/ / /__/ /_/ / /__(__  )   | |/ / / __/ 
/_/  \____/_/|_|\___/_/ /_/   \__/\__,_/\___/\__/_/\___/____/    |___(_)____/     

TokenTactics v2

Esta é uma versão atualizada do TokenTactics originalmente escrito por Stephan Borosh @rvrsh3ll e Bobby Cooke @0xBoku.

Conjunto de Ferramentas de Manipulação de JSON Web Token ("JWT") do Azure

Os tokens de acesso do Azure permitem autenticar-se em determinados endpoints como um utilizador que inicia sessão com um código de dispositivo. Se possuir um token de atualização compatível com FOCI (Family of Client IDs), pode usá-lo para obter tokens de acesso para todos os endpoints compatíveis com FOCI conhecidos. Uma vez que o token de atualização também contém a informação se o utilizador realizou autenticação multifator, pode usar isso. Depois de ter o token de acesso de um utilizador, pode ser possível aceder a determinadas aplicações como Outlook, SharePoint, OneDrive, MSTeams e outras.

Por exemplo, se tiver um token de atualização do Graph ou MSGraph, pode conectar-se ao Azure e listar utilizadores, grupos, etc. Dependendo das políticas de acesso condicional, pode depois mudar para um token do Azure Core Management e executar o AzureHound. Depois, obter um token de acesso do Outlook e ler/enviar e-mails ou do MS Teams e ler/enviar mensagens de equipa!

Para mais informações sobre tipos de tokens do Azure: Microsoft identity platform access tokens

Existem alguns exemplos de pedidos a endpoints na pasta resources. Há também um modelo de phishing de exemplo para phishing de código de dispositivo.

Pode também usar estes tokens com o AAD Internals. Recomendamos vivamente que verifique esta excelente ferramenta.

Instalação e Utilização

root@kitploit:~
Import-Module .\TokenTactics.psd1
Get-Help Get-EntraIDToken
Invoke-RefreshToSubstrateToken -Domain "myclient.org"

Testes

O conjunto de testes requer o PowerShell 7 e o Pester 5.7.1. Utiliza respostas HTTP simuladas e não necessita de credenciais do Entra ID ou acesso à rede.

root@kitploit:~
Install-Module Pester -RequiredVersion 5.7.1 -Scope CurrentUser
pwsh ./tests/Invoke-Tests.ps1

O mesmo conjunto é executado em Linux, macOS e Windows para cada pull request.

Obter token de atualização usando o fluxo de Código de Dispositivo

root@kitploit:~
Get-EntraIDToken -Client MSGraph

Depois de o utilizador iniciar sessão, será apresentado o JWT e este será guardado na variável $response. Para aceder ao token de acesso, use $response.access_token na sua janela do PowerShell para exibir o token. Pode também exibir o token de atualização com $response.refresh_token. Dica: vai querer o token de atualização para continuar a atualizar para novos tokens!

DOD/Mil Device Code

root@kitploit:~
Get-EntraIDToken -Client DODMSGraph

Iniciar sessão usando uma chave de acesso (passkey)

[!IMPORTANT] Esta funcionalidade foi introduzida na v0.2.20 e requer o PowerShell 7.0

Se criou uma chave de acesso num fornecedor terceiro como KeePassXC, Bitwarden, 1Password ou similar, pode exportar o material da chave privada.

[!CAUTION] Exportar o material da sua chave privada é extremamente perigoso. Certifique-se de que compreende o risco antes de prosseguir.

O formato de ficheiro de chave de acesso do KeePassXC é suportado nativamente e pode apontar o cmdlet diretamente para o ficheiro. O procedimento de início de sessão inicial apenas obterá o cookie ESTSAUTH necessário e terá de usar Get-EntraIDTokenFromESTSCookie para trocar este cookie por um token Bearer (token de acesso, token de atualização e token de ID).

root@kitploit:~
# Obter o valor do cookie ESTSAUTH
Invoke-EntraIDPasskeyLogin -Verbose -KeyFilePath "C:\Users\Fabian\Microsoft.passkey"
# Trocar o cookie ESTSAUTH por tokens Bearer
Get-EntraIDTokenFromESTSCookie -CookieValue $Global:ESTSAUTH

Se tiver um formato de ficheiro não suportado, pode especificar manualmente os valores necessários e alcançar o mesmo objetivo.

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

Obter tokens de acesso usando o cookie SCCAUTH

Se obteve um cookie sccauth de uma sessão autenticada em security.microsoft.com (por exemplo, através do Evilginx ou das DevTools do navegador), pode usá-lo para recuperar tokens de acesso do Entra ID para um vasto conjunto de recursos através do portal Microsoft Defender XDR.

root@kitploit:~
# Obter um token do Microsoft Graph usando o cookie sccauth
Get-EntraIDTokenFromSCCAUTHCookie -SCCAuth "your_sccauth_value" -ResourceName MicrosoftGraph

# Fornecer um token XSRF explicitamente para evitar o pedido de bootstrap
Get-EntraIDTokenFromSCCAUTHCookie -SCCAuth "your_sccauth_value" -XSRF "your_xsrf_value" -ResourceName Azure

# Usar um URL de recurso personalizado
Get-EntraIDTokenFromSCCAUTHCookie -SCCAuth "your_sccauth_value" -Resource "https://management.core.windows.net/"

Valores suportados para -ResourceName: Azure, LogAnalytics, MATP, MCAS, MicrosoftGraph, MicrosoftOffice, Purview, PurviewACC, ThreatIntelligencePortal.

Obter um Token de Atualização a partir do Cookie ESTSAuth*

root@kitploit:~
Get-EntraIDTokenFromESTSCookie -ESTSAuthCookie "0.AbcApTk..."

Este módulo utiliza o fluxo de código de autorização para obter um token de acesso e um token de atualização usando o cookie ESTSAuth (ou ESTSAuthPersistent). Útil se tiver pescado uma sessão através do Evilginx ou obtido este cookie de outra forma.

Certifique-se de que usa o cookie correto! ESTSAuthPersistent só é útil quando uma política de CA concede efetivamente uma sessão persistente. Caso contrário, deve usar ESTSAuth. Normalmente, pode saber qual usar pelo comprimento: o cookie mais longo é o que deve usar :)

Nota: Isto pode não funcionar em todos os casos, pois pode exigir interação do utilizador. Se for o caso, use o fluxo de Código de Dispositivo acima ou tente roadtx interactiveauth --estscookie

Esta funcionalidade foi portada do pull request por rotarydrone no repositório original.

Obter um token de atualização usando o fluxo de código de autorização

Um dos exemplos mais proeminentes deste fluxo oauth2 (pelo menos no início de 2025) é o Intune Company Portal, que permite, para alguns recursos, contornar os requisitos de conformidade do dispositivo.

Esta informação foi publicada pela primeira vez por @dirkjan e depois divulgada na Black Hat Europe para um público mais vasto por @TEMP43487580

A JumpsecLabs publicou um artigo de blogue e um POC sob a forma de TokenSmith pouco depois.

Agora as mesmas capacidades estão disponíveis no TokenTacticsV2.

Get-AzureAuthorizationCode criará um URL que pode usar para se autenticar.

Get-EntraIDTokenFromAuthorizationCode usa ou o URL completo ou pode ser usado com os parâmetros AuthorizationCode e RedirectUrl para trocar o código de autorização por um token de acesso e de atualização. Depois disso, pode tentar obter acesso a outros recursos como sempre.

Como usar os novos cmdlets

Atualizar para um novo token de acesso

Se não especificar um token de atualização, os cmdlets usarão $response.refresh_token como padrão.

root@kitploit:~
Invoke-RefreshToOutlookToken -domain "myclient.org"

$OutlookToken.access_token

Ligar ao AzureAD usando o token de acesso

root@kitploit:~
Connect-AzureAD -AadAccessToken $response.access_token -AccountId [email protected]

Ligar ao MgGraph usando o token de acesso

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

Limpar tokens

Isto removerá quaisquer variáveis de token.

root@kitploit:~
Clear-Token -Token All

Avaliação Contínua de Acesso (CAE)

Com a avaliação contínua de acesso, a Microsoft implementa medidas de segurança adicionais, mas também prolonga o tempo máximo de vida de um token de acesso para 24 horas. Certos serviços compatíveis com CAE, como MSGraph, Exchange, Teams e SharePoint, podem bloquear tokens de acesso com base em determinados eventos acionados pelo Azure AD. Atualmente, esses eventos críticos são:

  • A conta do utilizador é eliminada ou desativada
  • A palavra-passe de um utilizador é alterada ou redefinida
  • A autenticação multifator é ativada para o utilizador
  • O administrador revoga explicitamente todos os tokens de atualização para um utilizador
  • Risco elevado do utilizador detetado pelo Azure AD Identity Protection (não no Teams e SharePoint Online)
root@kitploit:~
Invoke-RefreshToMSGraphToken -Domain "myclient.org" -UseCAE
if ((Parse-JWTtoken $MSGraphToken.access_token).ValidForHours -gt 23) { "O token MSGraph é compatível com CAE" }

Usar com AAD Internals

Se tiver o AADInternals instalado, também pode usar os tokens de acesso criados.

root@kitploit:~
Invoke-RefreshToMSTeamsToken -UseCAE -Domain "myclient.org"
Set-AADIntTeamsStatusMessage -Message "A minha mensagem de estado fixe" -AccessToken $MSTeamsToken.access_token -Verbose

Comandos

root@kitploit:~
Get-Command -Module TokenTactics

Apenas os comandos suportados para o utilizador são exportados; os helpers de análise, PKCE, atualização genérica e criptografia FIDO permanecem como detalhes de implementação privados.

Autores e contribuidores

  • @rvrsh3ll Autor do TokenTactics (original)
  • @0xBoku coautor do TokenTactics (original) e investigador.
  • @f-bader atualizou o TokenTactics para suportar o endpoint V2 e funcionalidades adicionais como CAE. Mantenedor do TokenTacticsV2
  • @Pri3st adicionou funções para obter tokens de acesso a Storage e Key Vault e um user agent personalizado

Os métodos do TokenTactics são fortemente influenciados pela excelente investigação do Dr. Nestori Syynimaa em https://o365blog.com/.

Registo de alterações

0.3.0 (2026-07-13)

  • Adicionar um executor de testes Pester 5 fixo, verificações GitHub Actions multiplataforma, relatórios de teste e uma linha de base de cobertura imposta.
  • Adicionar cobertura simulada determinística para fluxos de código de dispositivo, cookie, código de autorização, SCCAUTH, atualização e chave de acesso.
  • Corrigir limpeza de tokens, descodificação de URL, timestamps JWT UTC, validação PEM, âmbito Yammer, suporte de cookie CAE, cabeçalhos de inquilino PurviewACC e construção de asserção de chave de acesso.
  • Exportar apenas comandos suportados para o utilizador e aliases de compatibilidade. Os helpers de implementação anteriormente expostos pela exportação wildcard são agora privados; os scripts devem usar os comandos públicos correspondentes.

0.2.22 (2026-04-03)

  • Adicionar Get-EntraIDTokenFromSCCAUTHCookie para recuperar tokens de acesso do Entra ID para vários recursos (Azure, MicrosoftGraph, MATP, MCAS, Purview, etc.) usando um cookie sccauth de security.microsoft.com. Aceita opcionalmente um token XSRF; se omitido, faz bootstrap automaticamente. Suporta um parâmetro opcional TenantId para injeção de cabeçalho e construção do recurso PurviewACC.

0.2.20 (2026-01-01)

  • Renomear todos os cmdlets Get-Azure para Get-EntraID
  • Adicionar aliases para retrocompatibilidade
  • Adicionar tratamento de erros melhorado para interrupções ConvergedSignIn
  • Adicionar Invoke-EntraIDPasskeyLogin para automatizar fluxos de início de sessão com chave de acesso. Isto irá guardar o cookie ESTSAUTH e a sessão web como variáveis globais para reutilização noutros cmdlets como Get-EntraIDTokenFromESTSCookie
  • Adicionar suporte de proxy para Invoke-EntraIDPasskeyLogin, Get-EntraIDTokenFromCookie, Get-EntraIDTokenFromRefreshTokenCredentialCookie e Get-EntraIDTokenFromESTSCookie

0.2.14 (2025-09-11)

  • Adicionar parâmetro -Username para preencher o parâmetro login_hint no cmdlet Get-AzureAuthorizationCode
  • Adicionar parâmetro -CopyToClipboard no cmdlet Get-AzureAuthorizationCode

0.2.13 (2025-07-29)

  • Corrigir para o parâmetro Custom User Agent

0.2.12 (2025-06-22)

  • Adicionar consciência para o runspace atual e minimizar a saída se executado como PSTask (por exemplo, se executado em Foreach-Object -parallel)

0.2.11 (2025-06-08)

  • Adicionar a capacidade de definir livremente qualquer UserAgent usando a nova propriedade -CustomUserAgent. Graças a Pri3st

0.2.10 (2025-02-25)

  • Correção de bug: Inicialização de tipo incorreta

0.2.9 (2025-02-17)

  • Adicionar ResourceTenant para Get-EntraIDToken para suportar phishing de código de dispositivo B2B
  • Substituir o id do cliente Azure Management
  • Adicionar UseCodeVerifier para suportar Proof Key for Code Exchange (PKCE)
  • Adicionar UseV1Endpoint a algumas funções para suportar uma variedade mais ampla de testes de endpoints

0.2.8 (2025-01-18)

  • Adicionar Get-AzureTokenFromRefreshTokenCredentialCookie ("x-ms-RefreshTokenCredential") e adicionar Get-AzureTokenFromCookie modularizado
  • Adicionar parâmetro para escolher o tipo de cookie (ESTSAuth, ESTSAUTHPERSISTENT) a Get-AzureTokenFromESTSCookie
  • Adicionar saída de exemplo para Get-AzureTokenFromAuthorizationCode à saída de Get-AzureAuthorizationCode
  • Saída melhorada e tratamento de erros mais detalhado

0.2.7 (2025-01-08)

  • Expandir Get-AzureTokenFromESTSCookie para suportar o endpoint appverify
  • Melhorar a gestão de cookies de Get-AzureTokenFromESTSCookie

0.2.6 (2025-01-04)

  • Corrigir bug de âmbitos personalizados em Get-AzureAuthorizationCode e Get-AzureTokenFromAuthorizationCode
  • Alterar o URI de redirecionamento padrão para Get-AzureAuthorizationCode

0.2.5 (2025-01-04)

  • Adicionados novos cmdlets Get-AzureAuthorizationCode e Get-AzureTokenFromAuthorizationCode
    Estes cmdlets são fortemente inspirados pelo TokenSmith mantido por @gladstomych
  • Adicionado novo cmdlet Invoke-RefreshToDeviceRegistrationToken que é uma versão TokenTactics do cmdlet AADInternals Get-AccessTokenForAADJoin
  • Adicionado suporte para endpoint v1 em Invoke-RefreshToToken com UseV1Endpoint. Isto foi necessário para adicionar Invoke-RefreshToDeviceRegistrationToken
  • Adicionado suporte a pipeline para ConvertFrom-JWTtoken
  • Adicionar valores padrão a Get-ForgedUserAgent

0.2.1 (2023-07-21)

  • Suporte para Linux como plataforma de dispositivo
  • Suporte para OS/2 como plataforma de dispositivo 😁

0.2.2 (2023-07-22)

  • Portado suporte de token Yammer
  • Portado mudança para verbos PowerShell permitidos, adicionado alias para retrocompatibilidade

0.2.3 (2023-07-23)

  • Portado pull request por rotarydrone para converter ESTSAuth em token de acesso

Novas Funcionalidades na v2

  • Mudado para v2.0 do endpoint OAuth2 do Azure AD
  • Suporte para avaliação contínua de acesso usando o novo parâmetro -UseCAE
  • Transformado ClientId num parâmetro
  • Alterado client_id para MSTeams
  • Adicionado suporte para OneDrive e SharePoint
  • Adicionado IssuedAt, NotBefore, ExpirationDate e ValidForHours na saída de ConvertFrom-JWTtoken em formato legível por humanos
  • Suporte para início de sessão com chave de acesso
  • Refatorado a base de código para facilitar a manutenção
Baixar ferramenta