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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
icebreaker — يحصل على بيانات اعتماد Active Directory بنص عادي إذا كنت على الشبكة الداخلية ولكن خارج بيئة AD. | Kitploit
أدوات/GitHubGitHub/danmcinerney/icebreaker
كسر كلمات المرورالاستطلاعتحليل الثغرات الأمنيةما بعد الاستغلالاختبار الاختراقالفريق الأحمر
GitHubdanmcinerney/icebreaker

icebreaker

يحصل على بيانات اعتماد Active Directory بنص عادي إذا كنت على الشبكة الداخلية ولكن خارج بيئة AD.

عرض المستودع
1.2k159منذ 7 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

icebreaker

اختَرِق الجليد في بيئة Active Directory الجميلة تلك. عندما تكون باردًا ووحيدًا تتطلع إلى حفلة Active Directory ولكن لا تملك حتى بيانات اعتماد واحدة للانضمام إلى المرح، هذه الأداة لك.

يقوم بتشغيل 5 هجمات شبكة داخلية ضد Active Directory بشكل متسلسل لتزويدك ببيانات اعتماد نصية عادية. استخدم الخيار --auto للحصول تلقائيًا على صلاحيات مسؤول المجال بعد الحصول على موطئ قدم.

ملخص التفاصيل

يتم تنفيذ الهجمات التالية بشكل متسلسل حتى الهجوم الرابع والخامس اللذين يعملان بالتوازي وإلى أجل غير مسمى.

  • الهجوم العكسي بالقوة الغاشمة
    • يحصل تلقائيًا على قائمة بأسماء المستخدمين ويختبر كلًا منهم باستخدام اثنتين من أكثر كلمات مرور AD شيوعًا (أكثر من محاولتين قد تؤديان إلى تفعيل سياسات قفل الحساب)
  • الرفع إلى المشاركات الشبكية
    • التقاط كلمات مرور المستخدمين من خلال رفع ملفات ضارة إلى المشاركات الشبكية المتاحة
  • تسميم بروتوكولات الشبكة البثية
    • استخدام بروتوكولات شبكة شائعة لخداع أجهزة المستخدمين وإرسال كلمات المرور إليك
  • التوسط في اتصالات SMB
    • تنفيذ أوامر عن بعد على أجهزة AD لجمع كلمات المرور
  • تسميم DNS الخاص بـ IPv6
    • استغلال DNS لخداع أجهزة AD لإرسال كلمات مرور مستخدميها إليك

التفاصيل الفنية

جميع تجزئات NetNTLMv2 التي يتم التقاطها في التقنيات أدناه يتم فك تشفيرها تلقائيًا باستخدام JohnTheRipper وقائمة كلمات مرور خاصة بـ AD بطول مليون كلمة.

  • الهجوم العكسي بالقوة الغاشمة
    • يستخدم rpcclient للعثور على المضيفين الذين يقبلون جلسات SMB فارغة
    • يستخدم ridenum للعثور على أسماء مستخدمين صالحة عبر تدوير RID على مضيفات SMB الفارغة
    • يمكن استخدام theHarvester لجمع أسماء مستخدمين محتملة إضافية من نطاق إنترنت محدد
    • يقوم بهجوم عكسي بقوة غاشمة بكلمتين مرور لأسماء المستخدمين الموجودة أو يمكنك تحديد قائمة كلمات مرور لاستخدامها
    • كلمات المرور الافتراضية المختبرة: P@ssw0rd و <الموسم_الحالي><السنة>، على سبيل المثال Spring2018
  • رفع SCF
    • يستخدم Nmap للعثور على مشاركات شبكية قابلة للكتابة مجهولة الهوية عبر سكريبت NSE smb-enum-shares
    • يكتب ملف SCF إلى المشاركة بمسار أيقونة ملف يشير إلى جهازك
    • عندما يفتح مستخدم AD المشاركة في مستكشف الملفات، يتم إرسال تجزئة NetNTLMv2 الخاصة به إليك
  • تسميم LLMNR/NBTNS/mDNS
    • يستخدم Responder.py لتسميم بروتوكولات شبكة الطبقة الثانية (البث/المتعدد) (LLMNR, NBT-NS, mDNS) والتقاط تجزئات NetNTLMv2
  • ترحيل SMB
    • يستخدم ntlmrelayx.py و Responder.py لترحيل تجزئات SMB
    • يستخدم Nmap لتحديد أهداف الترحيل الضعيفة عبر سكريبت NSE smb-security-mode
    • الأهداف الضعيفة ستكون ممكّنة لـ SMBv1 ومعطلة لتوقيع SMB
    • الترحيل الناجح لتجزئة سيؤدي إلى التقاط تجزئة NetNTLMv2 للمستخدم والتي سيتم فك تشفيرها تلقائيًا
    • إذا تم ترحيل تجزئة مستخدم إلى جهاز وكان هذا المستخدم مسؤولًا محليًا، سيحدث تنفيذ أمر وسيتم تنفيذ ما يلي عن بعد:
      • إضافة مستخدم إداري - icebreaker:P@ssword123456
      • تشغيل نسخة مشوشة وتتجاوز AMSI من Mimikatz
      • يتم تحليل مخرجات Mimikatz للحصول على تجزئات NTLM وكلمات مرور نصية عادية
      • تشغيل نسخة مشوشة وتتجاوز AMSI من Invoke-PowerDump لتجزئات SAM
      • يتم تحليل المخرجات للحصول على تجزئات NTLM
  • تسميم DNS لـ IPv6
    • يستخدم mitm6 و ntlmrelayx.py لتسميم DNS لـ IPv6 بهدف التقاط تجزئات مستخدم NetNTLMv2
    • إنشاء خادم WPAD وهمي مع المصادقة
    • تم تمكين IPv6 DNS افتراضيًا في بيئات Active Directory
    • ملاحظة: قد يتسبب ذلك في مشاكل اتصال شبكة للمستخدمين

كيف يعمل

سيقوم بتنفيذ الهجمات الشبكية الخمسة أعلاه بالترتيب. عادةً ما يكون الهجوم العكسي بالقوة الغاشمة ورفع ملفات SCF سريعين، ثم يبقى في الهجوم الثالث، Responder.py، لمدة 10 دقائق افتراضيًا. بعد ذلك الوقت، أو الوقت المحدد من قبل المستخدم، ينتقل إلى الهجومين الأخيرين اللذين يعملان بالتوازي وإلى أجل غير مسمى.

إذا تم اكتشاف أي مضيفات تسمح بجلسات SMB فارغة، سيستخدم icebreaker أداة ridenum لتدوير RID للحصول على أسماء مستخدمين صالحة. إذا استخدمت الخيار "-d <somedomain.com>"، سيقوم theHarvester بجمع أي عناوين بريد إلكتروني من الموقع المحدد. ستتم إضافة أي أسماء مستخدمين بريد إلكتروني متوافقة مع AD إلى قائمة أسماء المستخدمين للهجوم العكسي بالقوة الغاشمة. يستخدم Icebreaker مكتبة asyncio لتنفيذ الهجوم العكسي بالقوة الغاشمة باستخدام أداة Linux rpcclient مع 10 عمال غير متزامنين.

يستغل هجوم رفع SCF ملفات أوامر الصدفة (Shell Command Files) ضد المشاركات الشبكية القابلة للكتابة مجهولة الهوية. ملفات SCF هي ملفات يمكنها تنفيذ إجراءات أساسية مثل عرض سطح المكتب أو فتح نافذة مستكشف الملفات. لديها خاصية غريبة تسمح لك بتعيين أيقونة ملفها إلى مسار شبكة. إذا قمت بتعيين هذا المسار الشبكي إلى جهازك، فإن المستخدمين الذين يفتحون مشاركة الملفات في مستكشف الملفات سيرسلون تلقائيًا تجزئة كلمة مرور NetNTLMv2 الخاصة بهم إليك. يستخدم Icebreaker سكريبت Nmap smb-enum-shares للعثور على مشاركات قابلة للكتابة مجهولة الهوية ثم يقوم تلقائيًا بإنشاء ورفع SCF المحمل.

الهجوم 3 يستخدم Responder.py لتسميم بروتوكولات البث/المتعدد LLMNR و NBT-NS و mDNS. عندما يتنقل المستخدمون إلى مسار شبكة غير موجود، سيقول لهم Responder أن جهازك المهاجم هو المسار الصحيح. تجزئة كلمة مرور NetNTLMv2 للمستخدم أصبحت لك الآن. سيلتقط Responder التجزئات المرسلة عبر هجوم SCF، لكن الهجوم التالي عادة ما يكون أكثر فائدة لالتقاط تجزئات SCF لأنه لديه القدرة على استخدام التجزئة لتنفيذ الأوامر.

ترحيل SMB هو هجوم شبكي قديم حيث يضع المهاجمون أنفسهم بين عميل SMB وخادم SMB. يتيح ذلك للمهاجمين التقاط وترحيل تجزئات NetNTLMv2 إلى المضيفين الذين لديهم SMBv1 ممكّن وتوقيع SMB معطل. يتم استخدام ntlmrelayx.py من مكتبة Impacket للترحيل بينما يتم استخدام Responder.py للتوسط في اتصالات SMB. إذا كان مستخدم عميل SMB لديه حقوق إدارية لأي مضيف على الشبكة معطل توقيع SMB، فسينفذ ntlmrelayx.py تنفيذ أوامر على ذلك المضيف.

بمجرد أن يقوم ntlmrelayx بترحيل تجزئة تم التقاطها، سيقوم بتشغيل أمر powershell مشفر بـ base64 يضيف أولاً مستخدمًا إداريًا (icebreaker:P@ssword123456) ثم يشغل نسخة مشوشة وتتجاوز AMSI من Mimikatz، متبوعة بنسخة مشوشة وتتجاوز AMSI من Invoke-PowerDump. يتم تحليل مخرجات Invoke-Mimikatz و Invoke-PowerDump للحصول على كلمات مرور نصية عادية أو تجزئات NTLM ويتم تقديمها للمستخدم في المخرجات القياسية وكذلك في ملف found-passwords.txt. تجزئات NTLM، على عكس تجزئات NetNTLMv2، يمكن استخدامها تمامًا مثل كلمة مرور نصية عادية للمصادقة على مضيفات AD الأخرى. التحذير الوحيد هو أنه منذ تصحيح Microsoft KB2871997، يمكن فقط استخدام حساب المسؤول المحلي المدمج RID 500 في هجمات pass-the-hash.

يستخدم الهجوم الأخير أداة mitm6 لتنفيذ هجوم DNS لـ IPv6 بالتوسط ضد الشبكة بأكملها. وهذا يجبر المضيفات على الشبكة على استخدام جهاز المهاجم كخادم DNS الخاص بهم. بمجرد تعيينهم كخادم DNS، يخدم المهاجم ملفات إعدادات وكيل WPAD ضارة للضحايا ويجمع تجزئات NetNTLMv2 الخاصة بهم. يتم ترحيل هذه التجزئات باستخدام ntlmrelayx.py لمزيد من إمكانيات تنفيذ الأوامر عن بعد. شيء يجب ملاحظته هو أن هذا الهجوم عرضة للتسبب في مشاكل على الشبكة. غالبًا ما يتسبب في أخطاء شهادة على أجهزة العميل في المتصفح. كما أنه من المحتمل أن يبطئ الشبكة. جمال هذا الهجوم، مع ذلك، هو أن بيئات Windows AD عرضة للخطر افتراضيًا.

إذا تم تشغيل icebreaker مع علامة --auto [tmux/xterm]، فعند الوصول إلى الهجوم 4، سيقوم icebreaker بتشغيل Empire و DeathStar إما في جلسة tmux أو نوافذ xterm. مع هذا الخيار، بدلاً من تشغيل mimikatz على المضيف البعيد الذي قمنا بترحيل التجزئة إليه، سيقوم icebreaker بإضافة مستخدم إداري ثم تشغيل كود مشغل powershell الخاص بـ Empire للحصول على وكيل على الجهاز البعيد. سيستخدم DeathStar هذا الوكيل لأتمتة عملية تحقيق مسؤول المجال. لن يتم إغلاق Empire و DeathStar عند الخروج من icebreaker.

يتم فك تشفير كلمات المرور باستخدام JohnTheRipper وقائمة كلمات مخصصة. أصل هذه القائمة هو من merged.txt والتي تمثل كل كلمة مرور من حساب SecLists على GitHub مجمعة. تم تقليم قائمة الكلمات ولا تتضمن كلمات مرور بها: جميع الأحرف الصغيرة، جميع الأحرف الكبيرة، جميع الرموز، أقل من 7 أحرف، أكثر من 32 حرفًا. تتوافق هذه القواعد مع متطلبات كلمة مرور Active Directory الافتراضية وخفضت القائمة من 20 مليون إلى ما يزيد قليلاً عن مليون مما يجعل فك تشفير كلمات المرور سريعًا للغاية.

التثبيت

كجذر:

root@kitploit:~
./setup.sh
pipenv install --three
pipenv shell

قد تحصل على خطأ بعد تشغيل pipenv install. قم بالتحديث إلى إصدار من pipenv أعلى من 11.9.0 إذا كان الأمر كذلك. يمكنك استنساخ pipenv من GitHub وتشغيل apt-get remove python-pipenv && python setup.py install داخل المجلد.

استخدام Docker

لا تزال هناك بعض الأخطاء التي يجب حلها مع صورة Docker لذا من المحتمل أن تحدث أخطاء لك لكنها تقترب من الاكتمال. من مستودع Git:

root@kitploit:~
docker build --rm -t danmcinerney/icebreaker .
docker run danmcinery/icebreaker

أو ألحق الأوامر التي تضيفها عادةً إلى icebreaker (لا تنسى تعيين وحدات التخزين):

root@kitploit:~
docker run -v $(pwd)/logs:/icebreaker/logs -v $(pwd)/hashes:/icebreaker/hashes -v $(pwd)/icebreaker-scan.xml:/icebreaker/icebreaker-scan.xml -v $(pwd)/submodules:/icebreaker/submodules -e PYTHONUNBUFFERED=0 danmcinerney/icebreaker -x icebreaker-scan.xml

**ملاحظة: ستحتاج إلى تعيين المنافذ للمستمعين باستخدام علامة -p <host>:<container> الخاصة بـ docker.

الاستخدام

شغّل كجذر. اقرأ من قائمة بعناوين IP مفصولة بسطر جديد (عناوين IP مفردة أو نطاقات CIDR) وبدلاً من أن يقوم ntlmrelayx بإضافة مستخدم وتشغيل mimikatz على الضحية عند ترحيل التجزئة، قم بتنفيذ أمر مخصص على جهاز الضحية. في هذا المثال نعطيه أمرًا مشابهًا لما قد يعطينا إياه Empire لسطر واحد من مشغل powershell.

./icebreaker -l targets.txt -c "powershell -nop -w hidden -exec bypass -enc WwFk..."

اقرأ من قائمة مضيفات، أخبر Responder باستخدام واجهة eth0 بدلاً من واجهة البوابة الافتراضية، دع Responder يعمل لمدة 30 دقيقة بدلاً من 10 دقائق المعتادة، وشغّل أوامر ntlmrelayx التالية للترحيل الافتراضية لتفريغ SAM من خادم الضحية.

./icebreaker -l targets.txt -i eth0 -t 30 -c default

استخدم ملف مخرجات Nmap XML، تخطَّ جميع الهجمات الخمسة بالإضافة إلى عدم فك تشفير التجزئات تلقائيًا، واستخدم قائمة كلمات مرور مخصصة لهجوم القوة الغاشمة العكسي (لاحظ أنه بما أن هذا المثال يتخطى الهجوم 1 عبر '-s rid'، فإن قائمة كلمات المرور المحددة لن تُستخدم حتى؛ هذا مجرد مثال)

./icebreaker.py -x nmapscan.xml -s rid,scf,llmnr,relay,dns,crack -p /home/user/password-list.txt

الاستخدام بنمط "أطلق وانسى": أدخل ملف الأهداف، امسح companydomain.com بحثًا عن أسماء مستخدمين بريد إلكتروني ليتم إضافتهم إلى هجوم القوة الغاشمة العكسي، تخطَّ تسميم DNS لـ IPv6 من mitm6، وشغّل Empire و DeathStar في إما tmux أو xterm بمجرد بدء الهجوم 4 للحصول على مسؤول مجال آلي. الهدف من هذا الاستخدام هو إطلاق الأمر يوم الاثنين في الساعة 9 صباحًا ثم الذهاب في استراحة قصيرة غير متقطعة حتى يوم الجمعة الساعة 4:30 مساءً حيث نعود لنجد شيل مسؤول المجال ينتظرنا. نتخطى الهجوم 5 (mitm6) لأنه قد يسبب مشاكل شبكية أحيانًا ولا نريد عملاء غاضبين يقطعون استراحتنا المستحقة.

./icebreaker.py -l targets.txt -d companydomain.com -s dns --auto [tmux/xterm]

تنزيل الأداة