
إطار عمل C2 PowerShell للقيادة والتحكم مع أوامر مدمجة
Author: @r00t-3xp10it
إصدار الإصدار: v2.10.14
التوزيعات المدعومة: Windows (x86|x64), Linux
مستوحى من عمل: '@ZHacker13 - ReverseTCPShell'

يبدأ هذا السكريبت PS1 خادم استماع على جهاز المهاجم (ويندوز|لينكس) ويُولّد حمولات عكسية من سطر واحد لـ PS مشوشة باستخدام BXOR مع مفتاح سري عشوائي وطبقة أخرى من تشويش الأحرف/المتغيرات ليتم تنفيذها على الجهاز الضحية (ستقوم الحمولة أيضًا بتنفيذ تجاوز لـ AMSI reflection في الجلسة الحالية لتجنب كشف AMSI أثناء العمل). يمكنك أيضًا استقبال اتصال الحمولة العكسية المُولدة عبر netcat. (في هذه الحالة ستفقد وظائف C2 مثل لقطة الشاشة، الرفع، التنزيل، مسجل المفاتيح، AdvInfo، PostExploit، إلخ).
يمكن تنفيذ حمولات/meterpeter droppers باستخدام صلاحيات المستخدم أو المسؤول حسب السيناريو (تنفيذ العميل كمسؤول سيفتح جميع وحدات الخادم، تجاوزات AMSI، إلخ.). تحاكي الـ droppers تحديثًا أمنيًا وهميًا لـ KB بينما تقوم في الخلفية بتنزيل\تنفيذ العميل في الموقع الموثوق '$Env:TMP'، بهدف تجنب Windows Defender Exploit Guard. حمولات|droppers meterpeter هي FUD (يرجى عدم اختبار العينات على VirusTotal).
تحت لينكس، يُطلب من المستخدمين تثبيت powershell وخادم الويب apache2، بينما تحت ويندوز، تثبيت python3 http.server اختياري لتوصيل الحمولات عبر شبكات LAN. إذا لم يتم استيفاء هذه المتطلبات، سيتم كتابة العميل (Update-KB4524147.ps1) في دليل عمل meterpeter للتوصيل اليدوي.

تحذير: powershell تحت توزيعات لينكس متاح فقط لمعماريات x64 بت..

apt-get update && apt-get install -y powershell
apt-get install Apache2
service apache2 start
cd meterpeter
pwsh -File meterpeter.ps1
استخدم 'رابط هجوم متجه' لتوصيل 'Update-KB4524147.zip' (dropper) إلى الهدف..
قم بفك الضغط (على سطح المكتب) وتنفيذ 'Update-KB4524147.bat' (تشغيل كمسؤول)..
إذا تم تنفيذ dropper.bat: سيستخدم العميل $env:tmp كدليل عمل له ('موصى به')..
إذا قرر المهاجم تنفيذ العميل يدويًا: سيتم استخدام موقع العميل البعيد (pwd) كدليل عمل.

قم بتثبيت Python3 (http.Server) لتوصيل الحمولات تحت شبكات LAN..
https://www.python.org/downloads/release/python-381/
تحقق من تثبيت http.server الخاص بـ python
$Local_Host = ((ipconfig | findstr [0-9].\.)[0]).Split()[-1]
python -m http.server 8080 --bind $Local_Host
CTRL+C # الخروج من وحدة تحكم خادم الويب
cd meterpeter
powershell Set-ExecutionPolicy Unrestricted -Scope CurrentUser
powershell -File meterpeter.ps1
ملاحظة
يقوم meterpeter.ps1 بتوصيل Dropper/الحمولة باستخدام python3 http.server. إذا كان المهاجم قد قام بتثبيت python3.
'إذا لم يكن مثبتًا، فسيتم كتابة الحمولة (العميل) في دليل الخادم المحلي دليل العمل ليتم توصيلها يدويًا' ..
تذكر إغلاق محطة http.server بعد أن يستقبل الهدف الملفين (Dropper والعميل)
'وبعد أن نستقبل الاتصال في خادم meterpeter الخاص بنا { لمنع أخطاء اتصال الخادم|العميل }'
قم بتوصيل 'Update-KB4524147' (.ps1=يدويًا) OR (.zip=تلقائي|تنفيذ صامت) إلى الهدف..
إذا تم تنفيذ dropper.bat: سيستخدم العميل $env:tmp كدليل عمل له ('موصى به')..
إذا قرر المهاجم تنفيذ العميل يدويًا: سيتم استخدام موقع العميل البعيد (pwd) كدليل عمل.
meterpeter تحت توزيعات ويندوز: https://www.youtube.com/watch?v=d2npuCXsMvE
meterpeter تحت توزيعات لينكس: https://www.youtube.com/watch?v=CmMbWmN246E
@ZHacker13 (شل عكسية أصلية) | @tedburke (ملف CommandCam.exe الثنائي)
@codings9 (تصحيح الوحدات) | @ShantyDamayanti (تصحيح الوحدات)
@AHLASaad (تصحيح الوحدات) | @gtworek (تمكين جميع صلاحيات الوالد)