
🔍 سكربت Bash بسيط لكشف الويب شيلات JSP الخبيثة، بما في ذلك تلك المستخدمة في استغلالات SAP NetWeaver CVE-2025-31324.
سكربت خفيف الوزن لفحص ملفات .jsp و .jspx بحثًا عن أنماط مشبوهة ترتبط عادةً بالويب شيلات المبنية على JSP، بما في ذلك تلك التي شوهدت في الهجمات التي تستغل SAP NetWeaver CVE-2025-31324.
تم توسيع هذا الماسح أيضًا ليشمل فحوصات فرز لمؤشرات Oracle PeopleSoft / ShinyHunters / UNC6240 المرتبطة بـ CVE-2026-35273، بما في ذلك مسارات PeopleSoft المشبوهة وأسماء الملفات والتجزئات وسلاسل C2.
هذه أداة فرز أولي. صُممت لمساعدة المدافعين على التحديد السريع للملفات والمسارات والسلاسل المشبوهة التي تستدعي مراجعة لاحقة.
يبحث الماسح عن ملفات JSP/JSPX وأصناف ذات صلة من الطبقة الشبكية تحتوي على أنماط مثل:
Runtime.getRuntime()request.getParameter()exec( و cmd= و command= و ProcessBuildernew File() و FileWriter و PrintWriter و FileOutputStreamresponse.getWriter() و out.println()cmd.exe و powershell و /bin/sh و /bin/bashيفحص محتويات الملفات، وليس أسماءها فقط، مما يجعله مناسبًا لكشف الويب شيلات المعاد تسميتها أو الخفية.
يتضمن الماسح أيضًا فحوصات فرز لمؤشرات Oracle PeopleSoft المرتبطة بحملة ShinyHunters / UNC6240 في يونيو 2026 والتي تتضمن CVE-2026-35273.
تشمل هذه الفحوصات:
/PSEMHUB/hub/PSIGW/HttpListeningConnector/PSEMHUB/.jsp أو .jspx غير متوقعة داخل PSEMHUB.warPSEMHUB.war/envmetadata/transactionslogs أو persistantstorage أو persistentstorage أو scratchpad مشبوهة تحت مسارات PSEMHUBenvmetadata/data/environmentREADME-IF-YOU-SEE-THIS-YOUVE-BEEN-HACKED.TXT*_fanout.shpsappsrv.cfg و ps_config و config.xml142.11.200.186
142.11.200.187
142.11.200.188
142.11.200.189
142.11.200.190
108.174.202.99
176.120.22.24
azurenetfiles.net
wss://azurenetfiles.net:443/agent.ashx
README-IF-YOU-SEE-THIS-YOUVE-BEEN-HACKED.TXT
*_fanout.sh
meshagent
meshagent.exe
meshagent32-azure-ops.exe
meshagent64-azure-ops.exe
meshagent64-v2.exe
meshctrl.js
.bash_history
2ab684d93c1553fad87041b4dea97188a97e78589deee2a7bacff905564f3a35
f02a924c9ff92a8780ce812511341182c6b509d45bc59f3f7b522e37225d24fc
d83fdb9e53c5ff03c4cb0451ea1bebd79b53f29eadc1e2fa394c7af13a86ce2f
c7e9332731b06644fc73e0046a2a89eaa59b09f54250e9bd622467187351711f
68257a6f9ff196179ec03624e849927f26599eb180a7c82e14ef5bc4e93bc309
استنسخ المستودع أو حمّل سكربت Bash:
chmod +x detect_webshells.sh
./detect_webshells.sh /path/to/scan
مثال:
./detect_webshells.sh .
مثال لمسار SAP:
./detect_webshells.sh /usr/sap
أمثلة لمسارات PeopleSoft:
./detect_webshells.sh /u01/app/psoft
./detect_webshells.sh /u01/app/psoft/ps_config_homes
./detect_webshells.sh /opt/oracle/psft
استنسخ المستودع أو حمّل سكربت PowerShell:
.\detect_webshells.ps1 -Path .
مثال:
.\detect_webshells.ps1 -Path C:\inetpub\wwwroot
أمثلة لمسارات PeopleSoft:
.\detect_webshells.ps1 -Path D:\PeopleSoft
.\detect_webshells.ps1 -Path D:\Oracle\PeopleSoft
.\detect_webshells.ps1 -Path C:\Oracle\Middleware
إذا قام PowerShell بحظر تنفيذ السكربت، شغّل:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\detect_webshells.ps1 -Path .
يغيّر هذا سياسة التنفيذ لجلسة PowerShell الحالية فقط.
==== 1. Suspicious JSP code patterns ====
[HIT] Suspicious JSP pattern: Runtime\.getRuntime\(
/usr/sap/OP1/J31/work/suspicious.jsp:13: out.println(Runtime.getRuntime().exec(cmd));
[HIT] Suspicious JSP pattern: request\.getParameter\(
/usr/sap/OP1/J31/work/shell.jsp:9: String cmd = request.getParameter("cmd");
==== 2. PeopleSoft / ShinyHunters HTTP path indicators ====
[HIT] HTTP/path indicator: POST /PSEMHUB/hub
/u01/app/psoft/logs/access.log:1042: 142.11.200.186 - - "POST /PSEMHUB/hub HTTP/1.1" 200
==== 4. Filename indicators ====
[HIT] Suspicious filename: /u01/app/psoft/README-IF-YOU-SEE-THIS-YOUVE-BEEN-HACKED.TXT
==== 1. Suspicious JSP code patterns ====
[HIT] Suspicious JSP pattern in C:\PeopleSoft\webserv\shell.jsp:9: String cmd = request.getParameter("cmd");
==== 5. Network/C2 indicators in files and logs ====
[HIT] Network/C2 IOC 'azurenetfiles.net' in C:\PeopleSoft\logs\access.log:522: connection to azurenetfiles.net
يجب التعامل مع نتيجة الماسح كدليل يُستدعى للتحقيق، وليس كإثبات قاطع للاختراق.
بالنسبة لبيئات SAP NetWeaver، راجع:
بالنسبة لبيئات PeopleSoft، راجع:
/PSEMHUB/hub/PSIGW/HttpListeningConnectorPSEMHUB.warيُوفَّر هذا السكربت كما هو، دون أي ضمانات أو تعهدات أو مسؤولية من أي نوع.
صُمم ليكون أداة فرز أولي سريعة للمساعدة في التحديد الأولي لملفات .jsp و .jspx المشبوهة، خاصة تلك التي قد تشبه ويب شيلات مرتبطة بثغرات مثل SAP NetWeaver CVE-2025-31324.
كما يتضمن فحوصات فرز لمؤشرات مختارة من Oracle PeopleSoft / ShinyHunters / UNC6240، لكنه ليس ماسحًا شاملاً للطب الشرعي في PeopleSoft.
هذه الأداة ليست بديلاً عن الاستجابة الكاملة للحوادث، أو المراجعة الجنائية، أو التحقق من تصحيحات البائع، أو بيانات تتبع EDR، أو تحليل السجلات.
أنت وحدك المسؤول عن كيفية تفسير النتائج والتصرف بناءً عليها. هذا المشروع مشارَك بحسن نية ولصالح المجتمع، لكن الاستخدام يتم بالكامل على مسؤوليتك الخاصة.
المساهمات مرحّب بها ومقدَّرة.
إذا كنت ترغب في تحسين هذه الأداة — سواء بإضافة أنماط كشف جديدة، أو تحسين منطق الفحص، أو تحسين تغطية مؤشرات الاختراق، أو تقليل النتائج الإيجابية الكاذبة — لا تتردد في فتح issue أو إرسال طلب سحب.
قبل إرسال طلب سحب: