Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ADOKit — モジュール式の攻撃ツールキットで、盗まれたCookieやPATを使用してAzure DevOps REST APIを悪用し、偵察、権限昇格、持続性を実現します。 | Kitploit
ツール/GitHubGitHub/h4wkst3r/adokit
特権昇格偵察永続化メカニズムペネトレーションテストクラウドセキュリティレッドチーミング
GitHubh4wkst3r/adokit

ADOKit

モジュール式の攻撃ツールキットで、盗まれたCookieやPATを使用してAzure DevOps REST APIを悪用し、偵察、権限昇格、持続性を実現します。

リポジトリを見る
15564733ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
# ADOKit

## 説明

Azure DevOps Services 攻撃ツールキット - ADOKit は、利用可能な REST API を活用して Azure DevOps Services を攻撃するために使用できるツールキットです。このツールは、攻撃モジュールを指定し、それぞれの Azure DevOps Services インスタンスの有効な資格情報(API キーまたは盗難された認証クッキー)を指定することができます。サポートされている攻撃モジュールには、偵察、権限昇格、永続化が含まれます。ADOKit はモジュール方式で構築されているため、情報セキュリティコミュニティが将来新しいモジュールを追加できるように設計されています。

ADOKit が使用する手法の詳細は、X-Force Red の[ホワイトペーパー](https://www.ibm.com/downloads/cas/5JKAPVYD)に記載されています。

### Black Hat USA Arsenal 2024

プレゼンテーションスライドとデモは、このリポジトリの [BHUSA Arsenal 2024](https://github.com/h4wkst3r/adokit/blob/main/BHUSA_Arsenal_2024) フォルダに含まれています。

## リリース
* ADOKit バージョン 1.4.1 はリリースページから入手できます。

## 目次

- [ADOKit](#adokit)
- [目次](#目次)
- [インストール/ビルド](#インストールビルド)
  - [使用ライブラリ](#使用ライブラリ)
  - [プリコンパイル済み](#プリコンパイル済み)
  - [自分でビルドする](#自分でビルドする)
- [コマンドモジュール](#コマンドモジュール)
- [引数/オプション](#引数オプション)
- [認証オプション](#認証オプション)
- [モジュール詳細表](#モジュール詳細表)
- [例](#例)
  - 偵察
    - [Azure DevOps アクセスの検証](#azure-devops-アクセスの検証)
    - [Whoami](#whoami)
    - [組織一覧](#組織一覧)
    - [リポジトリ一覧](#リポジトリ一覧)
    - [リポジトリ検索](#リポジトリ検索)
    - [プロジェクト一覧](#プロジェクト一覧)
    - [プロジェクト検索](#プロジェクト検索)
    - [コード検索](#コード検索)
    - [ファイル検索](#ファイル検索)
    - [ユーザー一覧](#ユーザー一覧)
    - [ユーザー検索](#ユーザー検索)
    - [チーム一覧](#チーム一覧)
    - [チーム検索](#チーム検索)
    - [チームメンバー取得](#チームメンバー取得)
    - [グループ一覧](#グループ一覧)
    - [グループ検索](#グループ検索)
    - [グループメンバー取得](#グループメンバー取得)
    - [プロジェクト権限取得](#プロジェクト権限取得)
    - [資格情報検索](#資格情報検索)
    - [ビルドログ取得](#ビルドログ取得)
    - [ビルドログ一覧](#ビルドログ一覧)
    - [ビルドログ検索](#ビルドログ検索)
  - 永続化
    - [PAT 作成](#pat-作成)
    - [PAT 一覧](#pat-一覧)
    - [PAT 削除](#pat-削除)
    - [SSH 鍵作成](#ssh-鍵作成)
    - [SSH 鍵一覧](#ssh-鍵一覧)
    - [SSH 鍵削除](#ssh-鍵削除)
  - 権限昇格
    - [プロジェクト管理者追加](#プロジェクト管理者追加)
    - [プロジェクト管理者削除](#プロジェクト管理者削除)
    - [ビルド管理者追加](#ビルド管理者追加)
    - [ビルド管理者削除](#ビルド管理者削除)
    - [コレクション管理者追加](#コレクション管理者追加)
    - [コレクション管理者削除](#コレクション管理者削除)
    - [コレクションビルド管理者追加](#コレクションビルド管理者追加)
    - [コレクションビルド管理者削除](#コレクションビルド管理者削除)
    - [コレクションビルドサービスアカウント追加](#コレクションビルドサービスアカウント追加)
    - [コレクションビルドサービスアカウント削除](#コレクションビルドサービスアカウント削除)
    - [コレクションサービスアカウント追加](#コレクションサービスアカウント追加)
    - [コレクションサービスアカウント削除](#コレクションサービスアカウント削除)
    - [パイプライン変数取得](#パイプライン変数取得)
    - [パイプラインシークレット取得](#パイプラインシークレット取得)
    - [変数グループ取得](#変数グループ取得)
    - [サービス接続取得](#サービス接続取得)
- [検出](#検出)
- [ロードマップ](#ロードマップ)
- [参考文献](#参考文献)

## インストール/ビルド

### 使用ライブラリ
このプロジェクトでは以下のサードパーティライブラリを使用しています。

| ライブラリ | URL | ライセンス |
| --- | --- | --- |
| Fody | [https://github.com/Fody/Fody](https://github.com/Fody/Fody) | MIT License |
| Newtonsoft.Json | [https://github.com/JamesNK/Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) | MIT License |

### プリコンパイル済み

* リリースページのプリコンパイル済みバイナリを使用してください。

### 自分でビルドする

以下の手順で Visual Studio を設定し、自分でプロジェクトをコンパイルします。これには NuGet パッケージマネージャーからインストールできる 2 つの .NET ライブラリが必要です。

* Visual Studio プロジェクトを開き、「ツール」→「NuGet パッケージマネージャー」→「パッケージマネージャーの設定」に移動します。
* 「NuGet パッケージマネージャー」→「パッケージソース」に移動します。
* URL `https://api.nuget.org/v3/index.json` でパッケージソースを追加します。
* Costura.Fody NuGet パッケージをインストールします。
  * `Install-Package Costura.Fody -Version 3.3.3`
* Newtonsoft.Json パッケージをインストールします。
  * `Install-Package Newtonsoft.Json`
* これでプロジェクトを自分でビルドできます!

## コマンドモジュール

* 偵察
  * <b>check</b> - 組織が Azure DevOps を使用しているか、および資格情報が有効かを確認します。
  * <b>whoami</b> - 現在のユーザーとそのグループメンバーシップを表示します。
  * <b>listorgs</b> - Azure DevOps 内のアクセス可能なすべての組織を一覧表示します。
  * <b>listrepo</b> - すべてのリポジトリを一覧表示します。
  * <b>searchrepo</b> - 指定されたリポジトリを検索します。
  * <b>listproject</b> - すべてのプロジェクトを一覧表示します。
  * <b>searchproject</b> - 指定されたプロジェクトを検索します。
  * <b>searchcode</b> - 検索語を含むコードを検索します。
  * <b>searchfile</b> - 検索語に基づいてファイルを検索します。
  * <b>listuser</b> - ユーザーを一覧表示します。
  * <b>searchuser</b> - 指定されたユーザーを検索します。
  * <b>listteam</b> - チームを一覧表示します。
  * <b>searchteam</b> - 指定されたチームを検索します。
  * <b>getteammembers</b> - 指定されたチームのチームメンバーを取得します。
  * <b>listgroup</b> - グループを一覧表示します。
  * <b>searchgroup</b> - 指定されたグループを検索します。
  * <b>getgroupmembers</b> - 指定されたグループのすべてのグループメンバーを一覧表示します。
  * <b>getpermissions</b> - 指定されたプロジェクトにアクセスできるユーザーの権限を取得します。
  * <b>creds</b> - コード内の資格情報を検索します(キーワードは以下にリスト)。
    * ``` "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" ```
  * <b>getbuildlogs</b> - 1つまたはすべてのプロジェクトのビルドログをダウンロードします。
  * <b>listbuildlogs</b> - 1つまたはすべてのプロジェクトのビルドログを一覧表示します。
  * <b>searchbuildlogs</b> - 指定された検索語でビルドログを検索します。
* 永続化
  * <b>createpat</b> - ユーザーの個人用アクセストークンを作成します。
  * <b>listpat</b> - ユーザーの個人用アクセストークンを一覧表示します。
  * <b>removepat</b> - ユーザーの個人用アクセストークンを削除します。
  * <b>createsshkey</b> - ユーザーの公開 SSH 鍵を作成します。
  * <b>listsshkey</b> - ユーザーの公開 SSH 鍵を一覧表示します。
  * <b>removesshkey</b> - ユーザーの公開 SSH 鍵を削除します。
* 権限昇格
  * <b>addprojectadmin</b> - 指定されたプロジェクトの「プロジェクト管理者」グループにユーザーを追加します。
  * <b>removeprojectadmin</b> - 指定されたプロジェクトの「プロジェクト管理者」グループからユーザーを削除します。
  * <b>addbuildadmin</b> - 指定されたプロジェクトの「ビルド管理者」グループにユーザーを追加します。
  * <b>removebuildadmin</b> - 指定されたプロジェクトの「ビルド管理者」グループからユーザーを削除します。
  * <b>addcollectionadmin</b> - 「プロジェクトコレクション管理者」グループにユーザーを追加します。
  * <b>removecollectionadmin</b> - 「プロジェクトコレクション管理者」グループからユーザーを削除します。
  * <b>addcollectionbuildadmin</b> - 「プロジェクトコレクションビルド管理者」グループにユーザーを追加します。
  * <b>removecollectionbuildadmin</b> - 「プロジェクトコレクションビルド管理者」グループからユーザーを削除します。
  * <b>addcollectionbuildsvc</b> - 「プロジェクトコレクションビルドサービスアカウント」グループにユーザーを追加します。
  * <b>removecollectionbuildsvc</b> - 「プロジェクトコレクションビルドサービスアカウント」グループからユーザーを削除します。
  * <b>addcollectionsvc</b> - 「プロジェクトコレクションサービスアカウント」グループにユーザーを追加します。
  * <b>removecollectionsvc</b> - 「プロジェクトコレクションサービスアカウント」グループからユーザーを削除します。
  * <b>getpipelinevars</b> - 指定されたプロジェクトで使用されているすべてのパイプライン変数を取得します。
  * <b>getpipelinesecrets</b> - 指定されたプロジェクトで使用されているすべてのパイプラインシークレットの名前を取得します。
  * <b>getvariablegroups</b> - 指定されたプロジェクトで使用されている変数グループと対応する変数を取得します。
  * <b>getserviceconnections</b> - 指定されたプロジェクトで使用されているサービス接続を取得します。


## 引数/オプション

* <b>/credential:</b> - 認証用の資格情報(PAT または Cookie)。すべてのモジュールに適用可能。
* <b>/url:</b> - Azure DevOps URL。すべてのモジュールに適用可能。
* <b>/search:</b> - 検索キーワード。すべてのモジュールに適用可能ではありません。
* <b>/project:</b> - アクションを実行するプロジェクト。すべてのモジュールに適用可能ではありません。
* <b>/user:</b> - 特定のユーザーに対するアクションを実行。すべてのモジュールに適用可能ではありません。
* <b>/id:</b> - 永続化モジュールで使用され、特定のトークン ID に対するアクションを実行。すべてのモジュールに適用可能ではありません。
* <b>/group:</b> - 特定のグループに対するアクションを実行。すべてのモジュールに適用可能ではありません。

## 認証オプション

ADOKit を使用して Azure DevOps インスタンスに認証する場合の認証オプションは以下のとおりです。

* **盗難された Cookie - UserAuthentication** - これは、ユーザーのマシン上の `.dev.azure.com` ドメインの `UserAuthentication` Cookie です。
  * `/credential:UserAuthentication=ABC123`
* **盗難された Cookie - AadAuthentication** - これは、ユーザーのマシン上の `.dev.azure.com` ドメインの `AadAuthentication` Cookie です。
  * `/credential:eyJ0...`
* **個人用アクセストークン (PAT)** - これは、単一の文字列となるアクセストークン/API キーです。
  * `/credential:apiToken`
* **盗難されたアクセストークン** - 適切なアクセストークンを盗んだり更新したりできる場合、それも使用できます。アクセストークンを使用する場合、Azure Resource Manager (ARM) リソース (`"aud":"https://management.core.windows.net/"`) または Azure DevOps (`"aud":"499b84ac-1321-427f-aa17-267ca6975798"`) に対して有効である必要があります。
  * `/credential:eyJ0..`

## モジュール詳細表
以下の表は、各モジュールに必要な権限を示しています。

攻撃シナリオ | モジュール | 特別な権限が必要か? | 備考
--- |--- | --- | ---
偵察 | `check` | いいえ |
偵察 | `whoami` | いいえ |
偵察 | `listorgs` | いいえ |
偵察 | `listrepo` | いいえ |
偵察 | `searchrepo` | いいえ |
偵察 | `listproject` | いいえ |
偵察 | `searchproject` | いいえ |
偵察 | `searchcode` | いいえ |
偵察 | `searchfile` | いいえ |
偵察 | `listuser` | いいえ |
偵察 | `searchuser` | いいえ |
偵察 | `listteam` | いいえ |
偵察 | `searchteam` | いいえ |
偵察 | `getteammembers` | いいえ |
偵察 | `listgroup` | いいえ |
偵察 | `searchgroup` | いいえ |
偵察 | `getgroupmembers` | いいえ |
偵察 | `getpermissions` | いいえ |
偵察 | `creds` | いいえ |
偵察 | `getbuildlogs` | はい - `Contributors` または `Readers` または `Build Administrators` または `Project Administrators` または `Project Team Member` または `Project Collection Test Service Accounts` または `Project Collection Build Service Accounts` または `Project Collection Build Administrators` または `Project Collection Service Accounts` または `Project Collection Administrators` |
偵察 | `listbuildlogs` | はい - `Contributors` または `Readers` または `Build Administrators` または `Project Administrators` または `Project Team Member` または `Project Collection Test Service Accounts` または `Project Collection Build Service Accounts` または `Project Collection Build Administrators` または `Project Collection Service Accounts` または `Project Collection Administrators` |
偵察 | `searchbuildlogs` | はい - `Contributors` または `Readers` または `Build Administrators` または `Project Administrators` または `Project Team Member` または `Project Collection Test Service Accounts` または `Project Collection Build Service Accounts` または `Project Collection Build Administrators` または `Project Collection Service Accounts` または `Project Collection Administrators` |
永続化 | `createpat` | いいえ |
永続化 | `listpat` | いいえ |
永続化 | `removepat` | いいえ |
永続化 | `createsshkey` | いいえ |
永続化 | `listsshkey` | いいえ |
永続化 | `removesshkey` | いいえ |
権限昇格 | `addprojectadmin` | はい - `Project Administrator`、`Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `removeprojectadmin` | はい - `Project Administrator`、`Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `addbuildadmin` | はい - `Project Administrator`、`Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `removebuildadmin` | はい - `Project Administrator`、`Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `addcollectionadmin` | はい - `Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `removecollectionadmin` | はい - `Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `addcollectionbuildadmin` | はい - `Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `removecollectionbuildadmin` | はい - `Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `addcollectionbuildsvc` | はい - `Project Collection Administrator`、`Project Colection Build Administrators` または `Project Collection Service Accounts` |
権限昇格 | `removecollectionbuildsvc` | はい - `Project Collection Administrator`、`Project Colection Build Administrators` または `Project Collection Service Accounts` |
権限昇格 | `addcollectionsvc` | はい - `Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `removecollectionsvc` | はい - `Project Collection Administrator` または `Project Collection Service Accounts` |
権限昇格 | `getpipelinevars` | はい - `Contributors` または `Readers` または `Build Administrators` または `Project Administrators` または `Project Team Member` または `Project Collection Test Service Accounts` または `Project Collection Build Service Accounts` または `Project Collection Build Administrators` または `Project Collection Service Accounts` または `Project Collection Administrators` |
権限昇格 | `getpipelinesecrets` | はい - `Contributors` または `Readers` または `Build Administrators` または `Project Administrators` または `Project Team Member` または `Project Collection Test Service Accounts` または `Project Collection Build Service Accounts` または `Project Collection Build Administrators` または `Project Collection Service Accounts` または `Project Collection Administrators` |
権限昇格 | `getvariablegroups` | はい - `Contributors` または `Readers` または `Build Administrators` または `Project Administrators` または `Project Team Member` または `Project Collection Test Service Accounts` または `Project Collection Build Service Accounts` または `Project Collection Build Administrators` または `Project Collection Service Accounts` または `Project Collection Administrators` |
権限昇格 | `getserviceconnections` | はい - `Project Administrator`、`Project Collection Administrator` または `Project Collection Service Accounts` |


## 例

### Azure DevOps アクセスの検証

#### ユースケース

> *認証チェックを実行し、組織が Azure DevOps を使用していることと、提供された資格情報が有効であることを確認します。*

#### 構文

`check` モジュールを、関連する認証情報と URL とともに指定します。これにより、提供された組織が Azure DevOps を使用しているかどうかが出力され、使用している場合は提供された資格情報の検証が試行されます。

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

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

#### 出力例```
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
```
### Whoami

#### ユースケース

> *現在のユーザーとそのユーザーのグループメンバーシップを取得する*

#### 構文

認証情報とURLとともに、`whoami` モジュールを指定します。これにより、現在のユーザーとそのすべてのグループメンバーシップが出力されます。

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

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

#### 出力例```
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

```
### 組織一覧

#### ユースケース

> *指定されたアクセストークンを使用して組織を取得します。*

#### 構文

`listorgs` モジュールに必要な認証情報を提供します。デフォルトでは、このコマンドは提供されたアクセストークンでアクセス可能な組織のみを一覧表示します。

- `/mode:aad` を使用すると、直接アクセス権の有無にかかわらず、Azure AD テナント内の **すべての** DevOps 組織を列挙します。
- `/endpoint:ENDPOINT_NAME` を使用して、カスタム AEX エンドポイントを指定します。
  - 追加のエンドポイントは、`aex.dev.azure.com` の `"X-VSS-DeploymentAffinity"` クッキーを調べることで特定できます。

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

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

#### 出力例```
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.

                         Organization ID |                        Organization Name
-----------------------------------------------------------------------------------
    390a7474-e2f2-4b98-b538-4a547fa9f5e3 |                             solar-devops
    b63b999f-43f2-48c5-998d-b31cbf4c2f8e |                             lunar-devops

```
### リポジトリ一覧

#### ユースケース

> *Azure DevOpsインスタンスで使用されているリポジトリを発見する*

#### 構文

`listrepo`モジュールを、関連する認証情報とURLとともに指定します。これにより、リポジトリ名とURLが出力されます。

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

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

#### 出力例```
C:\>ADOKit.exe listrepo /credential:UserAuthentication=ABC123 /url:https://dev.azure.com/YourOrganization

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

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


[*] INFO: Checking credentials provided

[+] SUCCESS: Credentials provided are VALID.

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

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

```
### Search Repos

#### ユースケース

> *Azure DevOpsインスタンス内でリポジトリ名でリポジトリを検索します*

#### 構文

`searchrepo`モジュールと検索条件を`/search:`コマンドライン引数で指定し、関連する認証情報とURLを付与します。これにより、一致するリポジトリ名とURLが出力されます。

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

#### 出力例```
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.

                          Name |                                                URL
-----------------------------------------------------------------------------------
                  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

```
### プロジェクト一覧

#### ユースケース

> *Azure DevOps インスタンスで使用されているプロジェクトを検出する*

#### 構文

`listproject` モジュールを、関連する認証情報とURLとともに指定します。これにより、プロジェクト名、可視性(パブリックまたはプライベート)、およびURLが出力されます。

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

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

#### 出力例```
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

```
### プロジェクトの検索

#### ユースケース

> *Azure DevOps インスタンス内のプロジェクト名でプロジェクトを検索します。*

#### 構文

`searchproject` モジュールと検索条件を `/search:` コマンドライン引数に、関連する認証情報と URL と共に指定します。これにより、一致するプロジェクト名、可視性(公開またはプライベート)、および 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`

#### 出力例```
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.

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

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

```
### コードの検索

#### ユースケース

> *Azure DevOps インスタンス内で指定されたキーワードを含むコードを検索します*

#### 構文

`searchcode` モジュールと検索条件を `/search:` コマンドライン引数に指定し、関連する認証情報と URL を合わせて指定します。これにより、一致したコード行と共に、該当するコードファイルの URL が出力されます。

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

#### 出力例```
```

---

[Read more](https://github.com/h4wkst3r/adokit)
ツールをダウンロード