
# CVE-2026-23918 (Apache mod_http2 double-free) के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट इसमें मल्टी-मोड DoS (Rapid-RST, Slow-Drip) और Apache 2.4.66 के लिए निष्क्रिय RCE/भेद्यता पहचान की सुविधाएँ शामिल हैं।
यह Apache के mod_http2 (CVE-2026-23918) में डबल-फ्री कमजोरी के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट है। यह एक गंभीर बग है जो h2_mplx.c स्ट्रीम क्लीनअप पथ को प्रभावित करता है।
मूल रूप से, यदि आप सही समय पर हमला करते हैं, तो आप सर्वर को एक ही स्ट्रीम को दो बार क्लीनअप करने के लिए मजबूर कर सकते हैं, जो आमतौर पर SIGSEGV और वर्कर क्रैश का कारण बनता है।

मूर्ख मत बनो। इसका उपयोग केवल अधिकृत परीक्षण के लिए करें। यदि आप इसे किसी ऐसी चीज़ पर उपयोग करते हैं जो आपकी नहीं है, तो आप स्वयं जिम्मेदार हैं। मैं आपके कार्यों के लिए उत्तरदायी नहीं हूँ।
CVE-2026-23918 Apache 2.4.66 को प्रभावित करता है। इसे इस महीने (मई 2026) की शुरुआत में 2.4.67 में पैच किया गया था।
यह एक रेस कंडीशन है जो Apache द्वारा प्रारंभिक RST_STREAM फ्रेम्स को संभालने के तरीके में होती है। यदि कोई क्लाइंट HEADERS फ्रेम भेजता है और मल्टीप्लेक्सर द्वारा स्ट्रीम को पंजीकृत करने से पहले तुरंत RST_STREAM भेजता है, तो दो अलग-अलग कॉलबैक क्लीनअप करने का प्रयास करते हैं।
एक कॉलबैक रीसेट को संभालता है, दूसरा स्ट्रीम क्लोजर को। दोनों m_stream_cleanup() को कॉल करते हैं, जो क्लीनअप ऐरे पर समान पॉइंटर को पुश करता है। जब Apache अंततः उन स्ट्रीम्स को नष्ट करने का प्रयास करता है, तो दूसरा प्रयास पहले से मुक्त की गई मेमोरी को हिट करता है।
DoS: अत्यंत आसान। एक कनेक्शन वर्कर्स को क्रैश कर सकता है। चूंकि Apache उन्हें फिर से स्पॉन करता है, आप बहुत कम बैंडविड्थ के साथ सर्वर को निरंतर दबाव में रख सकते हैं। यही इस PoC का प्रदर्शन है - और इसे Apache 2.4.66 पर परीक्षण किया गया है और कार्यशील पुष्टि की गई है।
RCE: सैद्धांतिक रूप से संभव है लेकिन अधिकांश हमलावरों के लिए व्यावहारिक नहीं। इसके लिए आवश्यक है:
mmap, Debian/Ubuntu/Docker पर डिफ़ॉल्ट)कोई सार्वजनिक RCE एक्सप्लॉइट मौजूद नहीं है, और इसे बनाना एक गैर-तुच्छ इंजीनियरिंग प्रयास है। अधिकांश संगठनों के लिए वास्तविक दुनिया का प्रभाव विश्वसनीय DoS है, RCE नहीं।

आपको Python 3.9+ और h2 लाइब्रेरी की आवश्यकता होगी।
git clone https://github.com/xeloxa/CVE-2026-23918-Apache-H2-PoC.git
cd CVE-2026-23918-Apache-H2-PoC
pip install -r requirements.txt
स्थानीय लैब को क्रैश करना:
# आक्रामक DoS
python3 cve-2026-23918.py --target 127.0.0.1 --port 8443 --mode dos
जाँचना कि क्या कोई लक्ष्य कमजोर हो सकता है:
# यह निष्क्रिय है, यह केवल हेडर्स और H2 समर्थन की जाँच करता है
python3 cve-2026-23918.py --target example.com --mode rce-detect
निरंतर दबाव:
# कम बैंडविड्थ, लंबी अवधि
python3 cve-2026-23918.py --target 10.0.0.50 --mode slow-drip -d 60
यदि आप 2.4.66 चला रहे हैं, तो आपको 2.4.67 पर जाना होगा।
यदि आप अभी अपडेट नहीं कर सकते हैं, तो आप अपने कॉन्फ़िग में Protocols http/1.1 जोड़कर HTTP/2 को अक्षम कर सकते हैं (या सूची से h2 हटा दें)। यह प्रदर्शन के लिए आदर्श नहीं है, लेकिन यह क्रैश को रोकता है।
मैंने इसे कुछ अलग Debian और Ubuntu बिल्ड्स पर परीक्षण किया है। DoS बहुत विश्वसनीय है। RCE बहुत अधिक "नाजुक" है और मैं वास्तविक दुनिया के परिदृश्य में इस पर भरोसा नहीं करूंगा जब तक कि लक्ष्य में बहुत अनुमानित हीप स्थिति न हो।