
CVE-2026-41940 (SessionScribe) के लिए पता लगाने, शमन और रिवर्स-इंजीनियरिंग टूलिंग: 2026-04-28 को खुलासा हुई cPanel/WHM अनप्रमाणित सत्र-जालसाजी भेद्यता। गहराई से बचाव सक्रिय शमन शिम, ModSec नियम पैक, रिमोट प्रोब, ऑन-होस्ट IOC स्कैनर, और प्रति-स्तर RE स्नैपशॉट कलेक्टर। GPL v2।
cPanel और WHM में गंभीर अप्रमाणित RCE। चार HTTP अनुरोध CRLF इंजेक्शन के माध्यम से रूट सत्र बनाते हैं प्रीऑथ सत्र के पासवर्ड फ़ील्ड में। कोई प्रमाणीकरण नहीं, कोई पूर्व शर्त नहीं, सभी समर्थित टियर प्रभावित हैं। 2026-04-28 को Sina Kheirkhah / watchTowr Labs द्वारा प्रकट किया गया।
त्वरित आरंभ · ioc-scan · mitigate · remote-probe · प्रभावित बिल्ड · प्राथमिकता क्रम
[!IMPORTANT] टियर्स 112, 114, 116, 120, 122, 128 के पास विक्रेता पैच नहीं है। हर उन टियर्स पर बिल्ड कमजोर हैं; अपग्रेड या माइग्रेट ही एकमात्र स्थायी समाधान है। तब तक: फायरवॉल TCP/2082, 2083, 2086, 2087, 2095, 2096 प्रबंधन CIDRs पर (
mitigate.sh --applyऐसा करता है) और शेष सतह को ModSec नियम पैक के साथ सुरक्षित करें।
तीन वन-लाइनर्स, ऑपरेटर प्राथमिकता क्रम में:```bash
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-ioc-scan.sh | bash
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-mitigate.sh | bash -s -- --apply
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-remote-probe.sh | bash -s -- --target HOST
एक्ज़िट कोड फ्लीट ऑटोमेशन के लिए डिज़ाइन किए गए हैं: `ioc-scan` COMPROMISED पर `4`, VULNERABLE पर `1` एक्ज़िट करता है; `mitigate` `0` साफ / `1` लागू / `2` मैनुअल / `3` टूल त्रुटि पर एक्ज़िट करता है; `remote-probe` किसी भी लक्ष्य के VULN होने पर `2` एक्ज़िट करता है।
---
## Tools
परिचालन प्राथमिकता के क्रम में। प्रत्येक आर्टिफैक्ट फ्लीट रोल-अप के लिए `host`, `os`, `cpanel_version`, `ts` पर की गई संरचित आउटपुट (`--json` / `--jsonl` / `--csv`) उत्सर्जित करता है।
| उपकरण | भूमिका | कहाँ चलता है |
|---|---|---|
| **[`sessionscribe-ioc-scan.sh`](#sessionscribe-ioc-scansh---ioc-ladder--kill-chain)** | प्रथम श्रेणी ट्राइएज। IOC सीढ़ी, कोड-स्टेट + होस्ट-स्टेट निर्णय, किल-चेन पुनर्निर्माण, IR बंडल। | cPanel होस्ट पर |
| **[`sessionscribe-mitigate.sh`](#sessionscribe-mitigatesh---mitigation-orchestrator)** | खिड़की बंद करें। चरणबद्ध शमन: पैच जाँच, फ़ायरवॉल, प्रॉक्सीसब, ModSec। | cPanel होस्ट पर |
| **[`sessionscribe-remote-probe.sh`](#sessionscribe-remote-probesh---non-destructive-fleet-probe)** | सहायक संपार्श्विक। गैर-विनाशकारी 4-चरणीय जांच → प्रति होस्ट VULN/SAFE। | `curl` के साथ कहीं भी |
| [`modsec-sessionscribe.conf`](#supporting-collateral) | `mitigate` द्वारा तैनात ModSec नियम पैक। | Apache फ्रंट-एंड |
| [`sessionscribe-revsnap.sh`](#supporting-collateral) | बाइनरी डिफिंग के लिए प्रति-टियर RE स्नैपशॉट संग्राहक। | cPanel होस्ट पर, `upcp` के आसपास |
GPL v2. सभी आर्टिफैक्ट ऊपर दिए गए रॉ URL के माध्यम से `curl`-रेडी हैं।
---
## `sessionscribe-ioc-scan.sh` - IOC सीढ़ी + किल-चेन
**इसे पहले चलाएँ।** डिफ़ॉल्ट रूप से केवल डिटेक्शन (तेज़, फ्लीट-अनुकूल); फोरेंसिक चरणों को इनलाइन चलाने के लिए `--full` जोड़ें (defense timeline, offense ingest, reconcile, kill-chain renderer, IR बंडल)।```bash
# fast triage (detection only)
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-ioc-scan.sh | bash
# full kill-chain reconstruction inline
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-ioc-scan.sh | bash -s -- --full
# full + ship IR bundle to intake
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-ioc-scan.sh | bash -s -- --full --upload
# JSONL for SIEM ingest
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-ioc-scan.sh | bash -s -- --jsonl --quiet > host.jsonl
# host IOCs only - periodic post-patch sweep, last 7 days
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-ioc-scan.sh | bash -s -- --ioc-only --since 7
# replay forensic phases against a saved envelope (no re-scan)
curl -fsSL https://raw.githubusercontent.com/rfxn/cpanel-sessionscribe/main/sessionscribe-ioc-scan.sh | bash -s -- --replay /var/cpanel/sessionscribe-ioc/<run_id>.json
दो अक्ष स्वतंत्र रूप से रिपोर्ट करते हैं। code_verdict (PATCHED / VULNERABLE / INCONCLUSIVE) संस्करण, Perl स्रोत पैटर्न और cpsrvd बाइनरी फ़िंगरप्रिंट से आता है। host_verdict (CLEAN / SUSPICIOUS / COMPROMISED) सेशन-फ़ाइल IOC सीढ़ी, एक्सेस-लॉग स्कैन और पैटर्न A–G विनाश जांच से आता है। एक पैच किया गया होस्ट अभी भी 4 कोड के साथ बाहर निकल सकता है यदि पिछले शोषण ने डिस्क पर IOC छोड़े हों।
| Exit | Code-state | Host-state | Triage कार्रवाई |
|---|---|---|---|
| 0 | CLEAN/PATCHED | CLEAN | कोई नहीं |
| 1 | VULNERABLE | (कोई भी) | cpsrvd पैच करें |
| 2 | INCONCLUSIVE | (कोई भी) | मैन्युअल कोड-स्टेट समीक्षा (साथ ही: टूल त्रुटि) |
| 3 | (कोई भी) | SUSPICIOUS | सेशन/एक्सेस लॉग समीक्षा करें |
| 4 | (कोई भी) | COMPROMISED | पूर्ण IR; बंडल + अपलोड |
nxesec_canary_<nonce> (रिमोट प्रोब द्वारा छोड़ा गया) से टैग किए गए सत्र PROBE_ARTIFACT के रूप में वर्गीकृत होते हैं और COMPROMISED में नहीं बढ़ते।
--full प्रत्येक IOC को रक्षा सक्रियणों के विरुद्ध संकलित करता है और प्रत्येक को PRE-DEFENSE, POST-DEFENSE, POST-PARTIAL, या UNDEFENDED के रूप में वर्गीकृत करता है, फिर निर्णय + रक्षा-अंतराल शीर्षक के साथ सारांश प्रस्तुत करता है।
PRE-DEFENSE = जब संकेतक आया तब होस्ट शोषण के लिए खुला था;
POST-DEFENSE = संपार्श्विक या पूर्व-शमन शोर।```
+-- CVE-2026-41940 / IC-5790 --------------------------------------------
| host cpanel.example.com ()
| cpanel unknown os unknown
| verdict COMPROMISED score 315 ioc-scan v2.5.0
| defenses patch x absent modsec + up csf + clean mitigate + ran
+------------------------------------------------------------------------
| -- PRE-DEFENSE (32 events) -- | 2026-03-25T09:43:19Z ! pattern X ioc_attacker_ip_2xx_on_cpsess 57 hit(s) (last 90d) from IC-5790 IPs returned 2xx on /cpsess/ paths - real exploitation | 2026-04-28T14:35:56Z ! pattern X ioc_cve_2026_41940_crlf_access_chain 15 CRLF-bypass chain(s) — POST /login 401 then GET /cpsess 2xx as root within 2s | 2026-04-28T16:38:45Z ! pattern E ioc_pattern_e_websocket_shell_hits 45 external IP(s) reached /cpsess*/websocket/Shell with 2xx | 2026-04-29T08:41:22Z ! pattern F ioc_pattern_f_smark_envelope S_MARK/E_MARK harvester envelope in /root/.bash_history | 2026-04-29T16:41:24Z ! pattern A ioc_pattern_a_ransom_readme /home/user1/README.md | … (22 more Pattern A ransom_readme events across customer homedirs) | 2026-04-29T16:42:09Z ! pattern A ioc_pattern_a_sorry_files_present 608 .sorry-encrypted files present | 2026-04-29T17:52:58Z ! pattern D ioc_pattern_d_acctlog_encrypted /var/cpanel/accounting.log.sorry