
Sharpyshell عبارة عن WebShell صغير ومثير للملفات ASP.NET التي تنفذ الأوامر التي تتلقاها قناة مشفرة تجمعها في الذاكرة في وقت التشغيل.
يدعم Sharpyshell تطبيقات الويب C# فقط التي تعمل على .NET Framework> = 2.0
VB غير مدعوم أجهزة الصراف الآلي.
python3 SharPyShell.py generate -p somepassword
python3 SharPyShell.py interact -u http://target.url/sharpyshell.aspx -p somepassword
نسخة بيثون> = 3.6
و
pip3 install -r requirements.txt
Sharpyshell هو إطار ما بعد الاستغلال مكتوب في بيثون قادر على:
الهدف الرئيسي من هذا الإطار هو تزويد اختبار الاختراق سلسلة من الأدوات لتخفيف مرحلة ما بعد الاستغلال بمجرد أن يكون الاستغلال ناجحًا ضد خادم الويب IIS.
لا يتم تهدف هذه الأداة إلى استبدال الأطر لخادم C2 (أي Meterpreter ، Empire ، ECC ..) ولكن يجب استخدام هذا عندما تهبط إلى خادم مقيد بالكامل حيث تكون الاتصالات الواردة والخارجية محدودة للغاية.
في هذا الإطار ، سيكون لديك جميع الأدوات اللازمة لـ PrivesC و NetDissovery والحركة الجانبية وأنت تكتب خلف CMD للخادم الهدف.
علاوة على ذلك ، فإن هذا الإطار يهدف إلى أن يكون خلسة قدر الإمكان التنفيذ في تنفيذ الذاكرة للحصول على وحدات C# و PowerShell.
تهدف التغلب المنفذ في Sharpyshell إلى التهرب من توقيعات الملفات ومعرفات توقيعات الشبكة.
بالنسبة لتوقيعات الشبكة ، تم تطوير قناة مشفرة بالكامل لإرسال الأوامر وتلقي المخرجات.
تم تحقيق التهرب لتوقيعات الملفات باستخدام انعكاس على DLL مسبق المسؤول عن رمز تجميع وقت التشغيل C#.
تم إنشاؤه مع Asciiflow.com
+-------------------------------------------+ +--------------------------------------------+
| SharPyShell Client (Local) | | Target Server (Remote) |
+-------------------------------------------+ +--------------+ +--------------------------------------------+
| | | Encrypted | | |
| +--------+-----------------^-----------<----> HTTP <---->-----------+-----------------^--------+ |
| | | | | Channel | | | | |
| |4-Receive |1-Send | +--------------+ | |2-Receive |3-Send |
| | | | | | | |
| +--------v-----------------+--------+ | | +--------v-----------------+--------+ |
| | Module | | | | Webshell URL | |
| +--------+-----------------^--------+ | | +--------+-----------------^--------+ |
| | |Parse |Generate| | | | |Parse |Generate| |
| | +------v------+ +------+------+ | | | | +------v------+ +------+------+ | |
| | |Base64 Resp | |Base64 Req | | | | | |Base64 Req | |Base64 Resp | | |
| | +------+------+ +------^------+ | | | | +------+------+ +------^------+ | |
| | |Decode |Encode | | | | |Decode |Encode | |
| | +------v------+ +------+------+ | | | | +------v------+ +------+------+ | |
| | |Xor/Aes Data | |Xor/Aes Data | | | | | |Xor/Aes Data | |Xor/Aes Data | | |
| | +------+------+ +------^------+ | | | | +------+------+ +------^------+ | |
| | |Decrypt |Encrypt | | | | |Decrypt |Encrypt | |
| | +------v------+ +------+------+ | | | | +------v------+ +------+------+ | |
| | |Response | |C# Code | | | | | |C# Code | |Output | | |
| | +------+------+ +------+------+ | | | | +------+------+ +------+------+ | |
| | | ^ | | | | | ^ | |
| | v | | | | | v | | |
| | +--------+--------+ | | | | +--------+--------+ | |
| | | | | | | | | |
| +---------------- ^ ----------------+ | | +---------------- ^ ----------------+ |
| | | | | |
| |Run&Parse | | |Compile&Run |
| | | | | |
| +------ v ------+ | | +------ v ------+ |
| |Terminal | | | |csc.exe | |
| +---------------+ | | +---------------+ |
| |Modules: | | | |System.dll | |
| |#exec_cmd | | | |Compile in Mem | |
| |#exec_ps | | | |No exe output | |
| |#runas | | | | | |
| |..... | | | | | |
| | | | | | | |
| +---------------+ | | +---------------+ |
| | | |
+-------------------------------------------+ +--------------------------------------------+
#download Download a file from the server
#exec_cmd Run a cmd.exe /c command on the server
#exec_ps Run a powershell.exe -nop -noni -enc 'base64command' on the server
#inject_dll_reflective Inject a reflective DLL in a new (or existing) process
#inject_dll_srdi Inject a generic DLL in a new (or existing) process
#inject_shellcode Inject shellcode in a new (or existing) process
#invoke_ps_module Run a ps1 script on the target server
#invoke_ps_module_as Run a ps1 script on the target server as a specific user
#lateral_psexec Run psexec binary to move laterally
#lateral_wmi Run builtin WMI command to move laterally
#mimikatz Run an offline version of mimikatz directly in memory
#net_portscan Run a port scan using regular sockets, based (pretty) loosely on nmap
#privesc_juicy_potato Launch InMem Juicy Potato attack trying to impersonate NT AUTHORITYSYSTEM
#privesc_powerup Run Powerup module to assess all misconfiguration for privesc
#runas Run a cmd.exe /c command spawning a new process as a specific user
#runas_ps Run a powershell.exe -enc spawning a new process as a specific user
#upload Upload a file to the server
Windows Server> = 2008 قياسي X64