Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
php-oom-longjmp — PHP 8.4.26 - حرجة - عن بُعد - OOM longjmp - CVE-2026-109618 PHP2Shell. طلب multipart مقسّم غير مُصادَق يتجاوز memory_limit قبل كود التطبيق على Apache mod_php. مخبر مقابل 8.4.27. استُنتج تنفيذ التعليمات عن بُعد (RCE) من الاستشارة الأمنية. | Kitploit
أدوات/GitHubGitHub/abraxas/php-oom-longjmp
تحليل الذاكرة الجنائيتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويبالتعلم والتعليممختبرات وتدريب عملي
GitHubabraxas/php-oom-longjmp

php-oom-longjmp

PHP 8.4.26 - حرجة - عن بُعد - OOM longjmp - CVE-2026-109618 PHP2Shell. طلب multipart مقسّم غير مُصادَق يتجاوز memory_limit قبل كود التطبيق على Apache mod_php. مخبر مقابل 8.4.27. استُنتج تنفيذ التعليمات عن بُعد (RCE) من الاستشارة الأمنية.

عرض المستودع
12منذ يوم واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

Abraxas Labs - php-oom-longjmp

php2shell - php-oom-longjmp

يمكن لأي شخص على الإنترنت التحدث إلى موقع PHP الخاص بك بالطريقة نفسها التي يتحدث بها المتصفح، دون كلمة مرور. على إصدار PHP الأخير المتأثر، يمكنه إرسال طلب رفع ملف مُصمَّم بعناية يجعل المحرك ينفد من الذاكرة أثناء قراءته للطلب، قبل أن يبدأ تطبيقك. عندها يخرج PHP من ذلك العمل بقفزة بينما الطلب نصف مبني فقط. أظهر فريق PHP أن تنظيف تلك الحالة نصف المبنية يمكن أن يتحول إلى تنفيذ شيفرة عن بُعد بصلاحيات عامل الويب. يثبت هذا المختبر قفزة نفاد الذاكرة على Apache mod_php 8.4.26 وأن 8.4.27 يُكمل الطلب نفسه بشكل نظيف.

الفئة: OOM longjmp / إجهاض بدء الطلب الوصول: عن بُعد

PHP 8.4.26 (php:8.4.26-apache) مقابل المُرقَّع 8.4.27 - php.net

يشغّل Apache mod_php دائمًا إغلاق الطلب، حتى عندما يفشل بدء الطلب. الثغرة CVE-2026-109618 هي longjmp() عند memory_limit أثناء تحليل rfc1867 بينما يكون دلو HashTable مرئيًا للتفكيك بالفعل. المختبر عبارة عن POST من نوع multipart/form-data مُجزَّأ بدون Content-Length صالح ومع ~3000 ترويسة جزء إضافية تحت memory_limit=8M. يُرجع 8.4.26 الخطأ Fatal error: Allowed memory size ... in Unknown on line 0. يُرجع 8.4.27 علامة البقاء على قيد الحياة ويشغّل index.php. طلب GET للعامل بعد المحفّز لا يزال يُرجع 200 على كلا الجانبين. تنفيذ الشيفرة عن بُعد بصلاحيات عامل Apache مُستنتَج من GHSA.

المعرّفCVE-2026-109618
الاستشارةGHSA-w8hw-w9fx-j79w
الفئةOOM longjmp / إجهاض بدء الطلب (تنفيذ الشيفرة عن بُعد مُستنتَج من الاستشارة)
الوصولعن بُعد (HTTP بدون مصادقة)
CWECWE-416 / CWE-824 / CWE-755
CVSSحرجة: 9.2 CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H (فريق PHP)
المنتجPHP
المتأثرPHP 8.2 قبل 8.2.35، و8.3 قبل 8.3.36، و8.4 قبل 8.4.27، و8.5 قبل 8.5.12 (تثبيت المختبر 8.4.26)
المُصلَح8.2.35 / 8.3.36 / 8.4.27 / 8.5.12 (21 أكتوبر 2026)
المصادقةلا شيء
الترخيصGNU Affero GPL v3.0
المختبر127.0.0.1 فقط

الشقيقة: CVE-2026-109619 استخدام-بعد-تحرير (UAF) لعامل عام قديم (زوج PHP2Shell).

ما يمكن للمهاجم فعله

الطريقةالمَصبّالصلاحية
POST غير مُصادَق من نوع multipart/form-data مع Transfer-Encoding: chunked، وترويسات أجزاء إضافية كثيرة، وmemory_limit محدودتحليل rfc1867 / longjmp عبر zend_bailout أثناء php_request_startupالتوافر (مُثبَت في المختبر): إجهاض بدء الطلب قبل index.php على 8.4.26 (Unknown on line 0). السلامة (مُستنتَج): يمرّ الإغلاق على $_POST/$_FILES نصف المُهيَّأة؛ أظهر المورّد تنفيذ الشيفرة عن بُعد بصلاحيات عامل Apache (www-data في الصورة الرسمية). الاستطلاع (مُستنتَج): كشف بقايا كومة الطلب.
المحفّز نفسه على 8.4.27OOM ناعم مؤجَّلمُغلق (مُثبَت في المختبر): علامة البقاء على قيد الحياة HTTP 200، files=1، يبقى العامل قائمًا.
GET بعد المحفّزالعامل لا يزال حيًّامُثبَت في المختبر: لم يتلقَّ هذا التثبيت SIGSEGV ولم يسجّل zend_mm_heap corrupted.
تسجيل الدخول، مسار التطبيق، .so مخصص، صدفة عكسيةلا ينطبقمُغلق. لم تُجرَّب السيطرة على RIP.

مُثبَت في المختبر مقابل مُستنتَج: الفرق في OOM-longjmp بين 8.4.26 و8.4.27 مُثبَت في المختبر. موت العامل عبر UAF وتنفيذ الشيفرة عن بُعد مُستنتَجان من GHSA-w8hw-w9fx-j79w. عادةً ما يُنهي FPM العملية الفرعية عند فشل البدء؛ ولم يعرض المورّد استغلالًا كاملًا لـ FPM لهذه الثغرة.

المتطلبات: Apache apache2handler. memory_limit محدود (لا تضبطه على -1؛ فذلك هو التخفيف). تحليل multipart مُفعَّل. الصورة الرسمية php:8.4.26-apache مقابل php:8.4.27-apache.

المختبر

python3 php-oom-longjmp-Abraxas-Labs.py

أو cd lab && ./run.sh. Loopback 127.0.0.1:18220 (8.4.26) مقابل 127.0.0.1:18221 (8.4.27). مشروع Compose cve-2026-109618. الشاهد CVE-2026-109618-OOM-WITNESS. السطر الأخير:

SUCCESS CVE-2026-109618 vuln-crash=yes patched-ok=yes sapi=apache2handler vuln-image=php:8.4.26-apache patched-image=php:8.4.27-apache how=oom-longjmp-startup-fatal trigger=header-bomb-chunked asan=no CVE-2026-109618-OOM-WITNESS

مختبر مُصرَّح به فقط. يتواصل عبر loopback.

الإصلاح

حدِّث إلى PHP 8.4.27 (أو 8.2.35 / 8.3.36 / 8.5.12). تستبدل الرقعة longjmp() الخاص بـ OOM بـ soft OOM مؤجَّل عند نقطة أمان VM التالية و_exit() صارم بعد عتبة أعلى (31c0ea7). حتى ذلك الحين: اضبط memory_limit=-1 للمدير بحيث لا تستطيع التطبيقات تجاوزه؛ أبقِ post_max_size منخفضًا؛ حدِّد أجزاء multipart والترويسات. لا تستخدم RLIMIT_AS أو RLIMIT_DATA.

المراجع

  • إصدار php.net الأمني في 21 أكتوبر 2026
  • GHSA-w8hw-w9fx-j79w
  • CVE-2026-109618
  • php/php-src وسم php-8.4.26 مقابل php-8.4.27
  • الرقعة 31c0ea7 Avoid state corruption via bailout
  • الشقيق GHSA-6wmf-4rv5-p3rp CVE-2026-109619
  • الشكر: Calif، Wiz، OpenAI، فريق أمان PHP

مختبرات أبراكساس [email protected]

تنزيل الأداة