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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
PXEThief — PXEThief هي مجموعة أدوات يمكنها استخراج كلمات المرور من وظيفة نشر نظام التشغيل في Microsoft Endpoint Configuration Manager | Kitploit
أدوات/GitHubGitHub/mwr-cybersec/pxethief
تصعيد الامتيازاتالاستطلاعهجمات كلمات المرورالاستغلالجمع المعلوماتما بعد الاستغلالاختبار الاختراقالفريق الأحمر
GitHubmwr-cybersec/pxethief

PXEThief

PXEThief هي مجموعة أدوات يمكنها استخراج كلمات المرور من وظيفة نشر نظام التشغيل في Microsoft Endpoint Configuration Manager

عرض المستودع
43471منذ 2 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

PXEThief

PXEThief هي مجموعة من الأدوات التي تنفذ مسارات الهجوم التي تمت مناقشتها في محاضرة DEF CON 30 بعنوان Pulling Passwords out of Configuration Manager (https://forum.defcon.org/node/241925) ضد وظيفة نشر نظام التشغيل في Microsoft Endpoint Configuration Manager (أو ConfigMgr، التي لا تزال تُعرف باسم SCCM). يسمح بجمع بيانات الاعتماد من حسابات الوصول إلى الشبكة المُهيأة (https://docs.microsoft.com/en-us/mem/configmgr/core/plan-design/hierarchy/accounts#network-access-account) وأي حسابات تسلسل المهام أو بيانات الاعتماد المخزنة داخل متغيرات مجموعة ConfigMgr التي تم تكوينها لمجموعة "All Unknown Computers". هذه الحسابات من Active Directory عادةً ما تكون ذات صلاحيات زائدة وتسمح بتصعيد الامتيازات إلى وصول إداري في مكان ما من المجال، على الأقل بناءً على تجربتي الشخصية.

من المحتمل أن أخطر هجوم يمكن تنفيذه بهذه الأدوات هو عندما يتم دعم النشر المُبدَأ عبر PXE لـ "all unknown computers" على نقطة توزيع بدون كلمة مرور، أو بكلمة مرور ضعيفة. الصلاحيات الزائدة لحسابات ConfigMgr المكشوفة لـ OSD المذكورة سابقاً يمكن أن تسمح بعد ذلك بتنفيذ سلسلة هجوم كاملة ضد Active Directory بمجرد الوصول الشبكي إلى البيئة المستهدفة.

تعليمات الاستخدام

root@kitploit:~
python pxethief.py -h 
pxethief.py 1 - Automatically identify and download encrypted media file using DHCP PXE boot request. Additionally, attempt exploitation of blank media password when auto_exploit_blank_password is set to 1 in 'settings.ini'
pxethief.py 2 <IP Address of DP Server> - Coerce PXE Boot against a specific MECM Distribution Point server designated by IP address
pxethief.py 3 <variables-file-name> <Password-guess> - Attempt to decrypt a saved media variables file (obtained from PXE, bootable or prestaged media) and retrieve sensitive data from MECM DP
pxethief.py 4 <variables-file-name> <policy-file-path> <password> - Attempt to decrypt a saved media variables file and Policy XML file retrieved from a stand-alone TS media
pxethief.py 5 <variables-file-name> - Print the hash corresponding to a specified media variables file for cracking in Hashcat
pxethief.py 6 <identityguid> <identitycert-file-name> - Retrieve task sequences using the values obtained from registry keys on a DP
pxethief.py 7 <Reserved1-value> - Decrypt stored PXE password from SCCM DP registry key (reg query HKLM\software\microsoft\sms\dp /v Reserved1)
pxethief.py 8 - Write new default 'settings.ini' file in PXEThief directory
pxethief.py 10 - Print Scapy interface table to identify interface indexes for use in 'settings.ini'
pxethief.py -h - Print PXEThief help text

يجب استخدام pxethief.py 5 <variables-file-name> لإنشاء "تجزئة" لملف متغيرات الوسائط يمكن استخدامها لهجمات تخمين كلمات المرور باستخدام وحدة Hashcat المنشورة على https://github.com/MWR-CyberSec/configmgr-cryptderivekey-hashcat-module.

خيارات التكوين

يتم استخدام ملف موجود في المجلد الرئيسي لـ PXEThief لتعيين خيارات تكوين أكثر ثباتاً. وهي كالتالي:

root@kitploit:~
[SCAPY SETTINGS]
automatic_interface_selection_mode = 1
manual_interface_selection_by_id = 

[HTTP CONNECTION SETTINGS]
use_proxy = 0
use_tls = 0

[GENERAL SETTINGS]
sccm_base_url = 
auto_exploit_blank_password = 1

إعدادات Scapy

  • automatic_interface_selection_mode سيحاول تحديد أفضل واجهة لاستخدامها من قبل Scapy تلقائياً، للراحة. يفعل ذلك باستخدام تقنيتين رئيسيتين. إذا تم ضبطه على 1 فسيحاول استخدام الواجهة التي يمكنها الوصول إلى البوابة الافتراضية للجهاز كواجهة إخراج. إذا تم ضبطه على 2، فسيبحث عن أول واجهة يجدها ذات عنوان IP ليس عنواناً للتكوين التلقائي أو عنوان localhost. سيفشل هذا في تحديد الواجهة المناسبة في بعض السيناريوهات، وهذا هو السبب في أنه يمكنك فرض استخدام واجهة محددة باستخدام 'manual_interface_selection_by_id'.
  • manual_interface_selection_by_id يسمح لك بتحديد الفهرس الصحيح للواجهة التي تريد أن يستخدمها Scapy. يجب الحصول على المعرف الذي سيستخدم في هذا الملف من تشغيل pxethief.py 10.

الإعدادات العامة

  • sccm_base_url مفيد لتجاوز نقطة الإدارة التي ستتحدث إليها الأداة. هذا مفيد إذا كان DNS لا يحل الاسم (وبالتالي لا يمكن استخدام القيمة المقروءة من ملف متغيرات الوسائط) أو إذا كنت قد حددت نقاط إدارة متعددة وتريد إرسال حركة المرور الخاصة بك إلى نقطة معينة. يجب تقديم هذا على شكل عنوان URL أساسي مثل http://mp.configmgr.com بدلاً من mp.configmgr.com أو http://mp.configmgr.com/stuff.
  • auto_exploit_blank_password يغير سلوك pxethief 1 ليحاول تلقائياً استغلال نقطة توزيع PXE غير محمية بكلمة مرور. ضبط هذه على 1 سيمكن الاستغلال التلقائي، بينما ضبطها على 0 سيطبع سلسلة عميل tftp التي يجب استخدامها لتنزيل ملف متغيرات الوسائط. لاحظ أنه في كل مرة تقريباً سترغب في ضبط هذه على 1، لأن PXE غير المحمي بكلمة مرور يستخدم مفتاحاً ثنائياً يُرسل في استجابة DHCP التي تتلقاها عندما تطلب من نقطة التوزيع تنفيذ إقلاع PXE.

إعدادات اتصال HTTP

غير مطبقة في هذا الإصدار

تعليمات الإعداد

  1. قم بإنشاء جهاز VM جديد بنظام Windows
  2. قم بتثبيت بايثون (من https://www.python.org/ أو من خلال المتجر، كلاهما سيعمل بشكل جيد)
  3. قم بتثبيت جميع المتطلبات من خلال pip (pip install -r requirements.txt)
  4. قم بتثبيت Npcap (https://npcap.com/#download) (أو Wireshark، الذي يأتي معها مدمجة) من أجل Scapy
  5. قم بتوصيل VM بشبكة تعمل على نقطة توزيع ConfigMgr مهيأة لـ PXE/OSD
  6. إذا كنت تستخدم pxethief.py 1 أو pxethief.py 2 لتحديد وإنشاء ملف متغيرات الوسائط، تأكد من أن الواجهة التي تستخدمها الأداة مضبوطة على الواجهة الصحيحة؛ إذا لم تكن صحيحة، فقم بضبطها يدوياً في 'settings.ini' عن طريق تحديد معرف الفهرس الصحيح من pxethief.py 10

القيود

  • دعم الوكيل لطلبات HTTP - حالياً قابل للتكوين فقط في الكود. يمكن تمكين دعم الوكيل في السطر 35 من pxethief.py وتعيين عنوان الوكيل في السطر 693. أخطط لنقل هذه الميزة لتكون قابلة للتكوين في 'settings.ini' في التحديث القادم لقاعدة الكود
  • دمج HTTPS و TLS المتبادل - غير مطبق حالياً. يمكن استخدام وكيل اعتراض للتعامل مع هذا رغم ذلك، وهو يعمل بشكل جيد في تجربتي؛ للقيام بذلك، ستحتاج إلى تكوين وكيل كما ذكر أعلاه
  • دعم Linux - PXEThief يستخدم حالياً pywin32 من أجل استخدام بعض وظائف التشفير المضمنة في Windows. هذا غير متوفر على Linux، لأن واجهات برمجة التطبيقات للتشفير في Windows غير متوفرة على Linux :P كود Scapy في pxethief.py مع ذلك يعمل بكامل طاقته على Linux، لكنك ستحتاج إلى إزالة (على الأقل) تضمين win32crypt لتشغيله تحت Linux

ملاحظة حول إثبات المفهوم

توقع مواجهة مشاكل مع معالجة الأخطاء في هذه الأداة؛ هناك تفاصيل دقيقة مع كل شيء في ConfigMgr، وعلى الرغم من أنني قمت بتحسين معالجة الأخطاء بشكل كبير استعداداً لإصدار الأداة، إلا أن هذا ليس كاملاً بأي حال. إذا كانت هناك حالات حافة تفشل، قم بإنشاء مشكلة مفصلة أو قم بإصلاحها وإنشاء طلب سحب :) سأراجعها لأرى أين يمكن إجراء تحسينات معقولة. اقرأ الكود/شاهد المحاضرة وافهم ما يحدث إذا كنت ستشغلها في بيئة إنتاج. ضع في اعتبارك شروط الترخيص - أي استخدام للأداة يكون على مسؤوليتك الخاصة.

أعمال ذات صلة

Identifying and retrieving credentials from SCCM/MECM Task Sequences - في هذا المنشور، أشرح التدفق الكامل لكيفية العثور على سياسات ConfigMgr وتنزيلها وفك تشفيرها بعد الحصول على شهادة OSD صالحة. أود أيضاً تسليط الضوء على أول مرجعين في هذا المنشور حيث يظهران أبحاث SCCM هجومية مثيرة للاهتمام جارية حالياً.

شرائح DEF CON 30 - رابط لشرائح المحاضرة

إسناد المؤلف

حقوق النشر (C) 2022 Christopher Panayi, MWR CyberSec

تنزيل الأداة