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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
jetty-line-check — CVE-2026-2332 و4 ثغرات Jetty أخرى لعام 2026: أيّها يصيب إصدار Jetty (أو Spring Boot) لديك، وهل النسخة المُصلَّحة التي تسمّيها Jetty موجودة أصلًا على Maven Central؟ بالنسبة لخطوط 9.4/10/11 التي انتهى دعمها، الجواب هو 'راجع التفاصيل للتوفّر' = 404. | Kitploit
أدوات/GitHubGitHub/xiaoqimikko/jetty-line-check
أدوات دفاعيةالتحليل الثابتماسحات الثغرات الأمنيةتحليل الثغرات الأمنيةتدقيق التكوينأمن الويبأمن سلسلة التوريد
GitHubxiaoqimikko/jetty-line-check

jetty-line-check

CVE-2026-2332 و4 ثغرات Jetty أخرى لعام 2026: أيّها يصيب إصدار Jetty (أو Spring Boot) لديك، وهل النسخة المُصلَّحة التي تسمّيها Jetty موجودة أصلًا على Maven Central؟ بالنسبة لخطوط 9.4/10/11 التي انتهى دعمها، الجواب هو 'راجع التفاصيل للتوفّر' = 404.

عرض المستودع
83منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

jetty-line-check

أي من هذه الثغرات الست لعام 2026 أصابت نسختك من Jetty (أو Jetty المُضمَّن مع Spring Boot) — وهل النسخة التي يطلب منك المسؤولون الترقية إليها موجودة فعلاً على Maven Central؟

المحور الأساسي هو CVE-2026-2332 (GHSA-355h-qmc2-wpwf، high / CVSS v3 7.4): تهريب الطلبات المُجزَّأة (chunked request smuggling) في jetty-http. في 2026-09-17 أصدر المسؤولون أيضاً الثغرة CVE-2026-19203 من العائلة نفسها (تهريب LF EXT.TERM، high / CVSS v4 8.3): تغطيتها على خط 9.4 تمتد حتى 9.4.63، ويطلب منك المسؤولون الترقية إلى 9.4.64 — لكن 9.4.64 أيضاً 404 على Central. أقوى حقيقة: النسخ المُصلَحة العلنية للخطوط القديمة الثلاثة 9.4 / 10 / 11 غير موجودة إطلاقاً — فصفحة الأمان الرسمية تكتب بجانب كل منها see details for availability (= دعم تجاري)، وتلك الأرقام من الإصدارات كلها 404 عند اختبارها فعلياً على Maven Central.

java -jar jetty-line-check.jar /path/to/jetty         # 解压部署的 Jetty(扫 lib/*.jar)
java -jar jetty-line-check.jar app.war                # war
java -jar jetty-line-check.jar app.jar                # Spring Boot fat jar
java -jar jetty-line-check.jar --table                # 只看六条 CVE × 模块 × 版本线的判定表
java -jar jetty-line-check.jar --utf8 ...             # Windows 控制台中文乱码时加

المعيار: الإحداثيات + خط الإصدار → جدول الحكم + فحص jar الحقيقي على Central

معيار المشروع الشقيق tomcat-line-check هو «هل يوجد في الـ jar صنف إصلاح معيّن»، لأن إصلاح Tomcat ذاك أضاف صنفًا جديدًا.

بنود Jetty هذه لا تصلح لذلك. الثغرة الرئيسية CVE-2026-2332، إصلاحها عدّل جسم الدالة في HttpParser ولم يضف أي صنف (تم التأكد قبل البناء عبر gh api compare + javap). لذا لا يمكن أن يكون المعيار إلا:

إحداثياتك الكاملة + خط إصدارك، أي ثغرات CVE تصيبها؛ وهل الإصدار المُصلح الذي سمّته الجهة الرسمية موجود فعلًا على Maven Central.

يُولَّد جدول الحكم بواسطة tools/gen_table.py من حقل vulnerabilities[] في ست نشرات GitHub الأمنية + فحص HEAD لـ jar الحقيقي على Maven Central، ويرفض إخراج الجدول إن لم تجتز سبع مجموعات من التأكيدات (الضابط الموجب / الادعاء الجوهري / الإصدار الأخير للخط القديم / الحارس / البنية الرئيسية / الوحدات المنفصلة / التصنيف).

الحالات الثلاث لإتاحة الإصدار المُصلح (جوهر هذه الأداة)

الحالة الثلاثيةالمعنى
PUBLICسمّت النشرة الأمنية إصدارًا مُصلحًا، وهو موجود فعلًا على Maven Central —— قابل للترقية علنًا
404سمّت النشرة الأمنية إصدارًا مُصلحًا، لكنه يعطي 404 على Central —— صفحة الأمان الرسمية تكتب see details for availability (دعم تجاري)
无النشرة الأمنية لم تقدّم إطلاقًا إصدارًا مُصلحًا لهذا الخط (first_patched_version فارغ) —— إصلاح هذا الخط يتطلب ترقية عبر إصدار رئيسي

تلك الكتلة الكاملة من 404 و无 في الخطوط القديمة (9.4 / 10.0 / 11.0) هي جوهر قيمة هذه الأداة. شغّل --table لرؤية الصورة الكاملة.

الست المشمولة (كلها نشرات أمنية مُراجعة لـ org.eclipse.jetty، سنة 2026)

CVEالوحدةالتقييمبجملة واحدة
CVE-2026-2332jetty-httphigh / v3 7.4⭐ الرئيسي: يُعامَل \r\n داخل quoted-string في chunked كأنه نهاية ترويسة المقطع → تهريب الطلبات (CWE-444)
CVE-2026-19203jetty-httphigh / v4 8.3⭐ تكملة من نفس عائلة 2332 (09-17): يُعامَل \n (LF) داخل امتداد المقطع كأنه نهاية ترويسة المقطع → تهريب (LF EXT.TERM)؛ خط 9.4 يغطي حتى 9.4.63
CVE-2026-5795jaspi (انقسم 12.x إلى ee8/9/10/11-jaspi)high / v3 7.4ThreadLocal في JASPI لم يُنظَّف → تجاوز الصلاحيات
CVE-2026-6790jetty-servermedium / v3 5.3التباس بين Host و:authority في HTTP/2·3
CVE-2026-10050jetty-security (أُضيف ee8/9-security في 12.x)high / v4 8.7معالجة ISO-8859-1 في مصادقة Digest
CVE-2025-11143jetty-httplow / v3 3.7اختلاف في تحليل URI

🔴 سطح التأثر في ثغرتي التهريب (2332 و19203) يصمد (كلتاهما تقع على المسار الرئيسي للمعالجة الافتراضية ServerConnector / HttpParser، ولا تتطلب تفعيل أي ميزة محددة). أما الأربع الأخرى فتُعامل كسطر واحد في جدول الحكم فقط:

  • ⚠️ خط 12.1 في 19203 استثناء: إصدارات 12.1.x في وضع الامتثال الافتراضي RFC9110 غير متأثرة، ولا تُصاب إلا عند الضبط الصريح لـ RFC7230 / RFC2616 —— هذه الأداة تُبرز هذا الشرط المسبق لـ 12.1.x (في --table وفي مخرجات الفحص)، فلا تُطلق إنذارًا كاذبًا على النشر الافتراضي. أما خطوط 9.4 / 10 / 11 / 12.0 فتُصاب افتراضيًا.
  • CVE-2026-10050 (Digest) سطح تأثرها ضيق جدًا —— لا تُمسّ إلا بتفعيل مصادقة Digest صراحةً، فلا تجعلها نقطة البيع الرئيسية.
  • CVE-2026-6790 هي medium وCVE-2025-11143 هي low —— لا يجوز وصفهما عمومًا بـ«عالية الخطورة».

حدود الكلام (هذه الأداة لا تتجاوزها، وأنت أيضًا لا تتجاوزها)

  • «الإصابة بنطاق التأثر» حقيقة تخص المكوّن؛ أما «ستُهاجَم» فأمر آخر. صياغة هذه الأداة هي الأولى دائمًا.
  • الثغرتان الرئيسيتان (CVE-2026-2332 / CVE-2026-19203) كلتاهما تهريب طلبات: لا بد من وجود وكيل أمامي / موازن حمل في المقدمة، وأن يختلف الطرفان في تفسير الطلب نفسه، حتى يصبح للخطر معنى. لا يمكن سرد قصة هجوم على Jetty تعمل عارية —— درجتا CVSS لهما v3 7.4 / v4 8.3، وليستا «من ثبّتها انتهى أمره».
  • «قاعدة الثغرات العالمية لا تعطي النطاق» أمر مُقاس (حتى يوم النشر): النشرة العالمية vulnerabilities الخاصة بها فارغة، وDependabot يُبلّغ «توجد هذه الثغرة» لكنه لا يعطي «إلى أي إصدار ترفع»؛ النطاق موجود فقط في النشرة على مستوى المستودع. بمجرد أن تُكمِل القاعدة العالمية هذا النقص، يجب تعديل هذه العبارة.
  • «404 على Central» حقيقة مُقاسة؛ أما «الجهة الرسمية تخفي التصحيح لتبيعه» فكلام لا تقله نيابةً عن الجهة الرسمية. الصفحة الرسمية نفسها تكتب see details for availability، وانتهى الأمر عند هذا الحد.
  • وليس الأمر «Jetty توقفت عن الإصدار» —— خطّا 12.0 / 12.1 ما زالا يُحدَّثان، والإصداران المُصلحان العلنيان لهذين الخطين موجودان على Central.

المصادر الأولية

  • التنبيه الرئيسي:https://github.com/advisories/GHSA-355h-qmc2-wpwf(2332، يتضمن PoC قابلًا للتشغيل ورابط بحث Funky Chunks)
  • 19203 (تكملة من نفس عائلة 2332، LF EXT.TERM): على مستوى المستودع https://github.com/jetty/jetty.project/security/advisories/GHSA-xc35-c22g-239h (النطاق وPoC موجودان هنا؛ حقل vulnerabilities في GHSA-p2j5-5566-vpv9 العام فارغ)
  • أربعة أخرى:GHSA-r7p8-xq5m-436c · GHSA-7p3p-8qv8-m2vh · GHSA-2fvj-hgj9-j2gr · GHSA-wjpw-4j6x-6rwh
  • صفحة الأمان الرسمية (مصدر see details for availability):https://jetty.org/security.html
  • خط الإصدارات EOL:https://jetty.org/download.html

إعادة التوليد / المراجعة قبل النشر

python tools/gen_table.py --dry              # 只跑断言,不写文件
python tools/gen_table.py                    # 断言全过才写 CveTable.java
python tools/recheck_before_publish.py       # 发文当天重跑,主张失效就改文案别改判据

البناء

mvn package      # 需要 JDK 17;运行时零依赖(JUnit 仅测试期)

رموز الخروج

الرمزالمعنى
0اكتمل الفحص، وتمت قراءة كل ملف فعليًا
2خطأ في الاستخدام (لم يتم إعطاء مسار)
4هناك ملف تعذّرت قراءته —— ليس ملف zip، أو المحتوى مقتطع، أو فشلت القراءة

🔴 سبب وجود 4: الأثر المكتوب موجّه للبشر، بينما تنظر CI والسكربتات إلى رمز الخروج. من دونه، سيتحول ملف jar تالف / مشفّر / غير مكتمل التنزيل بصمت إلى عبارة «لم يتم العثور على مشاكل» —— «لا أستطيع قراءته» و«أنت آمن» يجب أن تكونا جملتين منفصلتين. ⚠️ ملف jar فارغ صالح (سجل EOCD بحجم 22 بايت) لا يُعدّ غير قابل للقراءة، ولن يؤدي إلى تفعيل 4.

License

MIT

تنزيل الأداة