Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ADOKit — أداة هجوم معيارية تستغل واجهة برمجة تطبيقات Azure DevOps REST للاستطلاع، تصعيد الامتيازات، والاستمرارية باستخدام ملفات تعريف الارتباط المسروقة أو PATs. | Kitploit
أدوات/GitHubGitHub/h4wkst3r/adokit
تصعيد الامتيازاتالاستطلاعآليات الاستمراريةاختبار الاختراقأمن السحابةالفريق الأحمر
GitHubh4wkst3r/adokit

ADOKit

أداة هجوم معيارية تستغل واجهة برمجة تطبيقات Azure DevOps REST للاستطلاع، تصعيد الامتيازات، والاستمرارية باستخدام ملفات تعريف الارتباط المسروقة أو PATs.

عرض المستودع
1556473منذ 3 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
# ADOKit

## الوصف

أداة هجوم خدمات Azure DevOps - ADOKit هي مجموعة أدوات يمكن استخدامها لمهاجمة خدمات Azure DevOps من خلال الاستفادة من واجهة برمجة التطبيقات REST المتاحة. تتيح الأداة للمستخدم تحديد وحدة هجوم، إلى جانب تحديد بيانات اعتماد صالحة (مفتاح API أو ملف تعريف مصادقة مسروق) لمثيل خدمات Azure DevOps المعني. تشمل وحدات الهجوم المدعومة الاستطلاع، وتصعيد الامتيازات، والثبات. تم بناء ADOKit بطريقة معيارية، بحيث يمكن إضافة وحدات جديدة في المستقبل من قبل مجتمع أمن المعلومات.

التفاصيل الكاملة حول التقنيات المستخدمة بواسطة ADOKit موجودة في الورقة البحثية لـ X-Force Red [whitepaper](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) في هذا المستودع.

## الإصدار
* يمكن العثور على الإصدار 1.4.1 من ADOKit في الإصدارات (Releases)

## جدول المحتويات

- [ADOKit](#ADOKit)
- [جدول المحتويات](#table-of-contents)
- [التثبيت/البناء](#installationbuilding)
  - [المكتبات المستخدمة](#libraries-used)
  - [مُجمّع مُسبقًا](#pre-compiled)
  - [البناء بنفسك](#building-yourself)
- [وحدات الأوامر](#command-modules)
- [الوسائط/الخيارات](#argumentsoptions)
- [خيارات المصادقة](#authentication-options)
- [جدول تفاصيل الوحدة](#module-details-table)
- [أمثلة](#examples)
  - استطلاع
    - [التحقق من الوصول إلى Azure DevOps](#validate-azure-devops-access)
    - [Whoami](#whoami)
    - [سرد المؤسسات](#List-orgs)
    - [سرد المستودعات](#List-repos)
    - [البحث في المستودعات](#Search-repos)
    - [سرد المشاريع](#list-projects)
    - [البحث عن المشاريع](#search-projects)
    - [البحث في الكود](#Search-code)
    - [البحث عن الملفات](#Search-files)
    - [سرد المستخدمين](#list-users)
    - [البحث عن مستخدم](#search-user)
    - [سرد الفرق](#list-teams)
    - [البحث عن فريق](#search-team)
    - [الحصول على أعضاء الفريق](#get-team-members)
    - [سرد المجموعات](#list-groups)
    - [البحث عن مجموعات](#search-groups)
    - [الحصول على أعضاء المجموعة](#get-group-members)
    - [الحصول على صلاحيات المشروع](#get-project-permissions)
    - [البحث عن بيانات الاعتماد](#creds-search)
    - [الحصول على سجلات البناء](#get-build-logs)
    - [سرد سجلات البناء](#list-build-logs)
    - [البحث في سجلات البناء](#search-build-logs)
  - الثبات
    - [إنشاء PAT](#create-pat)
    - [سرد PATs](#list-pats)
    - [إزالة PAT](#remove-pat)
    - [إنشاء مفتاح SSH](#create-ssh-key)
    - [سرد مفاتيح SSH](#list-ssh-keys)
    - [إزالة مفتاح SSH](#remove-ssh-key)
  - تصعيد الامتيازات
    - [إضافة مسؤول مشروع](#add-project-admin)
    - [إزالة مسؤول مشروع](#remove-project-admin)
    - [إضافة مسؤول بناء](#add-build-admin)
    - [إزالة مسؤول بناء](#remove-build-admin)
    - [إضافة مسؤول مجموعة](#add-collection-admin)
    - [إزالة مسؤول مجموعة](#remove-collection-admin)
    - [إضافة مسؤول بناء مجموعة](#add-collection-build-admin)
    - [إزالة مسؤول بناء مجموعة](#remove-collection-build-admin)
    - [إضافة حساب خدمة بناء مجموعة](#add-collection-build-service-account)
    - [إزالة حساب خدمة بناء مجموعة](#remove-collection-build-service-account)
    - [إضافة حساب خدمة مجموعة](#add-collection-service-account)
    - [إزالة حساب خدمة مجموعة](#remove-collection-service-account)
    - [الحصول على متغيرات خط الأنابيب](#get-pipeline-variables)
    - [الحصول على أسرار خط الأنابيب](#get-pipeline-secrets)
    - [الحصول على مجموعات المتغيرات](#get-variable-groups)
    - [الحصول على اتصالات الخدمة](#get-service-connections)
- [الاكتشاف](#detection)
- [خريطة الطريق](#roadmap)
- [المراجع](#references)

## التثبيت/البناء

### المكتبات المستخدمة
تم استخدام المكتبات الخارجية التالية في هذا المشروع.

| المكتبة | الرابط | الترخيص |
| ------------- | ------------- | ------------- |
| Fody  | [https://github.com/Fody/Fody](https://github.com/Fody/Fody) | رخصة MIT  |
| Newtonsoft.Json  | [https://github.com/JamesNK/Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) | رخصة MIT  |

### مُجمّع مُسبقًا 

* استخدم الملف الثنائي المُجمّع مسبقًا في الإصدارات (Releases)

### البناء بنفسك

اتبع الخطوات أدناه لإعداد Visual Studio لتجميع المشروع بنفسك. يتطلب ذلك مكتبتين .NET يمكن تثبيتهما من مدير حزم NuGet.

* قم بتحميل مشروع Visual Studio واذهب إلى "Tools" --> "NuGet Package Manager" --> "Package Manager Settings"
* اذهب إلى "NuGet Package Manager" --> "Package Sources"
* أضف مصدر حزمة بعنوان URL `https://api.nuget.org/v3/index.json`
* قم بتثبيت حزمة NuGet الخاصة بـ Costura.Fody.
  *  `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> - تنزيل سجلات البناء لمشروع واحد أو جميع المشاريع
  * <b>listbuildlogs</b> - سرد سجلات البناء لمشروع واحد أو جميع المشاريع
  * <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. ينطبق على جميع الوحدات.
* <b>/search:</b> - الكلمة المفتاحية للبحث عنها. لا ينطبق على جميع الوحدات.
* <b>/project:</b> - المشروع الذي سيتم تنفيذ إجراء له. لا ينطبق على جميع الوحدات.
* <b>/user:</b> - تنفيذ إجراء ضد مستخدم معين. لا ينطبق على جميع الوحدات.
* <b>/id:</b> - يُستخدم مع وحدات الثبات لتنفيذ إجراء ضد معرف رمز مميز معين. لا ينطبق على جميع الوحدات.
* <b>/group:</b> - تنفيذ إجراء ضد مجموعة معينة. لا ينطبق على جميع الوحدات.

## خيارات المصادقة

فيما يلي خيارات المصادقة المتاحة لك مع ADOKit عند المصادقة على مثيل Azure DevOps.

* **Cookie مسروقة - UserAuthentication** - سيكون هذا هو ملف تعريف `UserAuthentication` على جهاز المستخدم لنطاق `.dev.azure.com`.
  * `/credential:UserAuthentication=ABC123`
* **Cookie مسروقة - AadAuthentication** - سيكون هذا هو ملف تعريف `AadAuthentication` على جهاز المستخدم لنطاق `.dev.azure.com`.
  * `/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

#### حالة الاستخدام

> *احصل على المستخدم الحالي وعضويات المجموعة الخاصة بالمستخدم*

#### الصيغة

قم بتوفير الوحدة `whoami`، إلى جانب أي معلومات مصادقة ذات صلة وعنوان URL. سيقوم هذا بإخراج المستخدم الحالي وجميع عضويات مجموعته.

`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`** لتعداد **جميع** منظمات DevOps داخل مستأجر Azure AD، بغض النظر عن الوصول المباشر.
- استخدم **`/endpoint:ENDPOINT_NAME`** لتحديد نقطة نهاية AEX مخصصة.  
  - يمكن تحديد نقاط النهاية الإضافية من خلال فحص ملف تعريف الارتباط `"X-VSS-DeploymentAffinity"` من `aex.dev.azure.com`.

`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

```
### البحث عن المستودعات

#### حالة الاستخدام

> *البحث عن المستودعات حسب اسم المستودع في مثيل 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*

#### الصيغة
```

---

[Read more](https://github.com/h4wkst3r/adokit)
تنزيل الأداة