
🔍 मैलिशियस JSP वेबशेल्स का पता लगाने के लिए एक सरल Bash स्क्रिप्ट, जिसमें SAP NetWeaver CVE-2025-31324 के शोषण में उपयोग किए जाने वाले शामिल हैं।
SAP NetWeaver CVE-2025-31324 का शोषण करने वाले हमलों में देखे गए JSP-आधारित वेबशेल से जुड़े संदिग्ध पैटर्न के लिए .jsp और .jspx फ़ाइलों को स्कैन करने वाली एक हल्की-फुल्की स्क्रिप्ट।
इस स्कैनर को CVE-2026-35273 से जुड़े Oracle PeopleSoft / ShinyHunters / UNC6240 संकेतकों के लिए ट्राइएज जाँच के साथ भी विस्तारित किया गया है, जिसमें संदिग्ध 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यह फ़ाइल सामग्री की जाँच करता है, केवल फ़ाइलनामों की नहीं, जिससे यह नाम बदले गए या छिपे हुए वेबशेल का पता लगाने के लिए उपयुक्त है।
स्कैनर में CVE-2026-35273 से जुड़े जून 2026 के ShinyHunters / UNC6240 अभियान से संबंधित Oracle PeopleSoft संकेतकों के लिए ट्राइएज जाँच भी शामिल है।
इन जाँचों में शामिल हैं:
/PSEMHUB/hub पर संदिग्ध अनुरोध/PSIGW/HttpListeningConnector पर संदिग्ध अनुरोध/PSEMHUB/ के संदर्भPSEMHUB.war के अंतर्गत अप्रत्याशित .jsp या .jspx फ़ाइलेंPSEMHUB.war/envmetadata/transactions के अंतर्गत फ़ाइलें या निर्देशिकाएँlogs, persistantstorage, persistentstorage, या scratchpad निर्देशिकाएँenvmetadata/data/environment के अंतर्गत हाल की XML फ़ाइलेंREADME-IF-YOU-SEE-THIS-YOUVE-BEEN-HACKED.TXT142.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/HttpListeningConnector पर अनुरोधPSEMHUB.war के अंतर्गत अप्रत्याशित JSP/JSPX फ़ाइलेंयह स्क्रिप्ट जैसी है वैसी ही प्रदान की जाती है, बिना किसी प्रकार की वारंटी, गारंटी या देयता के।
इसका उद्देश्य एक त्वरित ट्राइएज टूल के रूप में कार्य करना है ताकि संदिग्ध .jsp और .jspx फ़ाइलों की प्रारंभिक पहचान में सहायता मिल सके, विशेष रूप से वे जो SAP NetWeaver CVE-2025-31324 जैसी कमजोरियों से संबंधित वेबशेल जैसी दिख सकती हैं।
इसमें चुनिंदा Oracle PeopleSoft / ShinyHunters / UNC6240 संकेतकों के लिए ट्राइएज जाँच भी शामिल है, लेकिन यह एक व्यापक PeopleSoft फोरेंसिक स्कैनर नहीं है।
यह उपकरण पूर्ण घटना प्रतिक्रिया, फोरेंसिक समीक्षा, विक्रेता पैच सत्यापन, EDR टेलीमेट्री, या लॉग विश्लेषण का विकल्प नहीं है।
आप पूरी तरह से जिम्मेदार हैं कि आप निष्कर्षों की व्याख्या कैसे करते हैं और उन पर कैसे कार्य करते हैं। यह परियोजना सद्भावना और सामुदायिक लाभ के लिए साझा की गई है, लेकिन उपयोग पूरी तरह से आपके अपने जोखिम पर है।
योगदान का स्वागत है और सराहना की जाती है।
यदि आप इस उपकरण को बेहतर बनाना चाहते हैं — चाहे नए पहचान पैटर्न जोड़कर, स्कैनिंग लॉजिक को अनुकूलित करके, IOC कवरेज में सुधार करके, या गलत सकारात्मक को कम करके — तो बेझिझक एक issue खोलें या pull request जमा करें।
pull request जमा करने से पहले:
ओपन-सोर्स सुरक्षा टूलिंग का समर्थन करने के लिए धन्यवाद।
*_fanout.sh से मेल खाने वाली संभावित फैनआउट स्क्रिप्टpsappsrv.cfg, ps_config, और config.xml जैसी PeopleSoft टोही स्ट्रिंग्स