Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Stormspotter — أداة فريق Red Team لـ Azure لإنشاء رسم بياني لكائنات Azure و Azure Active Directory | Kitploit
أدوات/GitHubGitHub/azure/stormspotter
الاستطلاعجمع المعلوماتاختبار الاختراقأمن السحابةالفريق الأحمر
GitHubazure/stormspotter

Stormspotter

أداة فريق Red Team لـ Azure لإنشاء رسم بياني لكائنات Azure و Azure Active Directory

عرض المستودع
1.7k212منذ 4 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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


يقوم Stormspotter بإنشاء "رسم بياني للهجوم" للموارد في اشتراك Azure. يمكّن الفرق الحمراء ومختبري الاختراق من تصور سطح الهجوم وفرص التنقل داخل المستأجر، ويدعم المدافعين لديك لترتيب أولويات أعمال الاستجابة للحوادث بسرعة.


التثبيت

باستخدام Docker

قد يجد معظم المستخدمين أنه من الأسهل تثبيت Stormspotter عبر Docker. هذه هي الطريقة الموصى بها.

root@kitploit:~
git clone https://github.com/Azure/Stormspotter
docker-compose up

سينشئ ملف docker-compose ثلاث حاويات:

  • واجهة Stormspotter الأمامية (Stormspotter Frontend)
  • الواجهة الخلفية لـ Stormspotter (Stormspotter Backend)
  • Neo4j v4

بشكل افتراضي، ستكشف حاوية Stormspotter عن واجهة المستخدم على المنفذ 9091. ستعرض حاوية neo4j واجهة neo4j على المنافذ 7474 (HTTP) و 7687 (Bolt). التكوين الافتراضي لـ Neo4j لا يتضمن SSL نشطًا، لذا يمكنك في البداية التفاعل مباشرة مع واجهة neo4j على المنفذ 7474.

ملاحظة: حاليًا، يدعم Stormspotter تشغيل هذه الحاويات محليًا فقط. محاولة الرفع إلى الواجهة الأمامية المستضافة عن بُعد ستكون غير ناجحة، لكن من المتوقع أن يتغير هذا السلوك في المستقبل.

بيانات الاعتماد الافتراضية لـ neo4j هي: neo4j/password. يمكنك تغيير ذلك في ملف docker-compose عبر متغير البيئة NEO4JAUTH.

بدون Docker

إذا اخترت تشغيل Stormspotter بدون Docker، يجب أن يكون لديك Python 3.8 و NodeJS/npm و Neo4j مثبتة. يمكنك أيضًا الحصول على أحدث إصدارات Stormspotter من هنا.

الواجهة الخلفية (Backend)

تم بناء الواجهة الخلفية التي تتولى تحليل البيانات إلى Neo4j باستخدام FastAPI. إذا كنت لا تخطط لرفع محتوى جديد لقاعدة البيانات، فقد لا تحتاج إلى تشغيل الواجهة الخلفية على الإطلاق. تم تكوين الواجهة الخلفية للعمل على المنفذ 9090. يمكنك تغيير ذلك بتغيير رقم المنفذ في السطر 5 من app.py. إذا قمت بذلك، يجب أيضًا تغيير المنفذ في مكون Q-Uploader في مكون عرض قاعدة البيانات ليتم إرسال الرفعات من الواجهة الأمامية إلى المنفذ الصحيح حيث توجد الواجهة الخلفية.

root@kitploit:~
cd backend
python3 ssbackend.pyz

تطبيق الويب (Web App)

تم تطوير تطبيق الويب باستخدام Vue و إطار Quasar. تم بناء التطبيق ذو الصفحة الواحدة (SPA) لك ويوجد في frontend/dist/spa. لخدمة هذا الدليل:

root@kitploit:~
npm install -g @quasar/cli
cd frontend/dist/spa
quasar serve -p 9091 --history

يمكنك بعد ذلك زيارة http://localhost:9091 في متصفحك.

تشغيل Stormspotter

Stormcollector

Stormcollector هو الجزء من Stormspotter الذي يتيح لك تعداد الاشتراكات التي يمكن لبيانات الاعتماد المقدمة الوصول إليها. الطريقة الموصى بها لاستخدام Stormcollector هي تشغيل حزمة sscollector.pyz الموجودة في ملف الإصدار الخاص بنظام تشغيلك. تم إنشاء هذا PYZ باستخدام Shiv ويأتي مع جميع الحزم مضغوطة مسبقًا! ستقوم التبعيات باستخراج نفسها إلى مجلد .shiv في دليل المستخدم الرئيسي.

root@kitploit:~
cd stormcollector
python3 sscollector.pyz -h

إذا كان هناك سبب يمنعك من استخدام الحزمة المقدمة، يمكنك تثبيت الحزم المطلوبة باستخدام pip أو pipenv. مع هذا الأسلوب، يُوصى بشدة بتثبيت Stormcollector في بيئة افتراضية لمنع تعارض الحزم. إذا كانت لديك مشكلات في إدارة البيئات الافتراضية، يجب استخدام الطريقة الموصى بها أعلاه.

root@kitploit:~
cd stormcollector
python3 -m pip install pipenv
pipenv install .
python3 ./sscollector.py

أنواع تسجيل الدخول المدعومة حاليًا:

  • واجهة سطر أوامر Azure (Azure CLI) (يجب استخدام az login أولاً)
  • معرف العميل / السر لكيان الخدمة (Service Principal Client ID/Secret)

يمكنك الاطلاع على جميع الخيارات التي يقدمها Stormcollector باستخدام المفتاح -h كما هو موضح أعلاه. الاستخدامات الأساسية لـ Stormcollector هي:

root@kitploit:~
python3 sscollector.pyz cli
python3 sscollector.pyz spn -t <tenant> -c <clientID> -s <clientSecret>

الخيارات الشائعة لجميع أنواع المصادقة

  • --cloud: تحديد سحابة Azure مختلفة (GERMAN, CHINA, USGOV)
  • --config: تحديد تكوين مخصص لبيئات السحابة
  • --azure: تعداد موارد Azure Resource Manager فقط
  • --aad: تعداد Azure Active Directory فقط
  • --subs: الاشتراكات التي ترغب في مسحها. يمكن إضافة عدة اشتراكات كقائمة مفصولة بمسافات.
  • --nosubs: الاشتراكات التي ترغب في استبعادها. يمكن استبعاد عدة اشتراكات كقائمة مفصولة بمسافات.
  • --json: تحويل مخرجات SQLite إلى JSON (تحذير: STORMSPOTTER يوزع تنسيق SQLITE فقط)
    • هذا الخيار مفيد إذا كنت تريد تحليل المخرجات لأغراض أخرى غير Stormspotter.
  • --ssl-cert: تحديد شهادة SSL لاستخدامها من قبل Stormcollector للطلبات. خيار غير شائع
  • --backfill: إجراء تعداد AAD فقط لمعرفات الكائنات المرتبطة بتعداد RBAC. ينطبق فقط عند تحديد --azure.

رفع النتائج

بمجرد بدء تشغيل واجهة المستخدم، سترى قسمًا في علامة تبويب قاعدة البيانات بعنوان "Stormcollector Upload". أضف ملفك إلى أداة الرفع هذه وستبدأ المعالجة. أثناء معالجة النتائج، يمكنك التحقق من سجلات الواجهة الخلفية لعرض التقدم، ويجب أن تنعكس النتائج أيضًا في نفس علامة تبويب عرض قاعدة البيانات.

ملاحظات

  • مع وجود Stormspotter حاليًا في مرحلة بيتا، لم يتم تنفيذ جميع أنواع الموارد للعرض. قد ترى تسميات برموز مفقودة و/أو تعرض ببساطة حقلي "الاسم" و "المعرف". بمرور الوقت، سيتم تنفيذ المزيد من الموارد بشكل صحيح.

المشكلات المعروفة

  • تحقق من المشكلات المعروفة قبل تقديم مشكلة جديدة.

لقطات الشاشة

  • عرض الأذونات على KeyVault Screenshot1

  • عرض أعضاء دور Azure AD Screenshot2

  • عرض العلاقات الواردة والصادرة Screenshot3

المساهمة

يرحب هذا المشروع بالمساهمات والاقتراحات. تتطلب معظم المساهمات موافقتك على اتفاقية ترخيص المساهم (CLA) التي تعلن أن لديك الحق في، وتقوم بالفعل بمنحنا الحقوق لاستخدام مساهمتك. للتفاصيل، قم بزيارة https://cla.opensource.microsoft.com.

عند تقديم طلب سحب (pull request)، سيحدد روبوت CLA تلقائيًا ما إذا كنت بحاجة إلى تقديم CLA وسيزين PR بشكل مناسب (على سبيل المثال، فحص الحالة، تعليق). ما عليك سوى اتباع التعليمات المقدمة من الروبوت. ستحتاج فقط إلى القيام بذلك مرة واحدة عبر جميع المستودعات التي تستخدم CLA الخاص بنا.

اعتمد هذا المشروع مدونة قواعد السلوك مفتوحة المصدر من Microsoft. لمزيد من المعلومات، راجع الأسئلة الشائعة حول مدونة قواعد السلوك أو اتصل على [email protected] مع أي أسئلة أو تعليقات إضافية.

تنزيل الأداة