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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2024-3094-One-Liner — نصوص برمجية أحادية السطر لفحص الخوادم وصور Docker بحثًا عن CVE-2024-3094 (ثغرة xz الخلفية). تتضمن فحصًا قائمًا على Trivy للبيئات المحتوية على حاويات وفحوصات قائمة على grep لمستودعات التعليمات البرمجية للكشف عن مراجع المكتبات المعرضة للخطر. | Kitploit
أدوات/GitHubGitHub/brinhosa/cve-2024-3094-one-liner
ماسحات الثغرات الأمنيةأمن الحاوياتتحليل الثغرات الأمنيةأمن السحابةDevSecOpsأمن سلسلة التوريد
GitHubbrinhosa/cve-2024-3094-one-liner

CVE-2024-3094-One-Liner

نصوص برمجية أحادية السطر لفحص الخوادم وصور Docker بحثًا عن CVE-2024-3094 (ثغرة xz الخلفية). تتضمن فحصًا قائمًا على Trivy للبيئات المحتوية على حاويات وفحوصات قائمة على grep لمستودعات التعليمات البرمجية للكشف عن مراجع المكتبات المعرضة للخطر.

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
1منذ 2 سنواتلم تتم المراجعة بعد

CVE-2024-3094 - أداة فحص الثغرات بسطر واحد

يوفر هذا المستودع نصوصًا بسيطة لكنها قوية مكونة من سطر واحد مصممة لمساعدتك في تحديد ما إذا كان خادمك عرضة للثغرة CVE-2024-3094، وهي ثغرة أمنية حرجة موجودة في إصدارات معينة من أداة xz. بالإضافة إلى ذلك، نقدم طريقة ملائمة لفحص مستودعات الكود بحثًا عن مراجع لمكتبة xz، والتي قد تشير إلى ثغرات غير مباشرة محتملة.

التحقق من ثغرات الخادم

لمعرفة ما إذا كان خادمك عرضة للثغرة CVE-2024-3094، قم بتنفيذ الأمر التالي في الطرفية:

root@kitploit:~
(type dpkg &>/dev/null && dpkg -l xz 2>/dev/null | awk '/^ii/{print $3}' | grep -qE '^(5.6.0|5.6.1)$' && echo "Vulnerable: CVE-2024-3094" || echo "Not vulnerable or xz not installed") || (type rpm &>/dev/null && rpm -q --qf "%{VERSION}\n" xz 2>/dev/null | grep -qE '^(5.6.0|5.6.1)$' && echo "Vulnerable: CVE-2024-3094" || echo "Not vulnerable or xz not installed")

الأمر أعلاه سيتحقق من الحزم في توزيعة لينكس.

أو جرب هذا الخيار الآخر حيث يتم تنفيذ أمر xz، وهذا غير موصى به عادةً:

root@kitploit:~
command -v xz &>/dev/null && { xz_version=$(xz --version | head -n 1 | awk '{print $4}'); [[ $xz_version == "5.6.0" || $xz_version == "5.6.1" ]] && echo "Vulnerable: CVE-2024-3094" || echo "Not vulnerable: CVE-2024-3094"; } || echo "xz not installed"

يقوم هذا البرنامج النصي بالإجراءات التالية:

  • يتحقق مما إذا كانت أداة xz مثبتة.
  • يحدد الإصدار المثبت من xz.
  • يقارن الإصدار بالإصدارات المعروفة بأنها عرضة للثغرة (5.6.0 و5.6.1).
  • يخرج بحالة الثغرة لخادمك.

فحص متقدم للثغرات في صور Docker

للفرق التي تستخدم Docker وتهتم بالثغرات داخل حاوياتها، نقدم مثالًا متطورًا باستخدام Trivy، ماسح الثغرات مفتوح المصدر من Aqua Security. تقوم هذه الطريقة بفحص صور Docker بحثًا عن الثغرات، بما في ذلك CVE-2024-3094، وتوفر مخرجات واضحة حول الحالة الأمنية للصورة.

فحص صور Docker باستخدام Trivy

يستخدم الأمر التالي Trivy لفحص صورة Docker (debian:experimental-20240311) بحثًا عن الثغرات ويصفي النتائج للثغرة CVE-2024-3094 المتعلقة بـ liblzma5:

root@kitploit:~
docker run --rm -v $('pwd'):/project -w /project aquasec/trivy:latest image --format cyclonedx --scanners vuln --output /project/result.json debian:experimental-20240311@sha256:16cc2b09c44d991d36f63153f13a7c98fb7da6bd2ba9d7cc0f48baacb7484970 && jq -r '.components[] | .properties[] | select(.name == "aquasecurity:trivy:PkgID" and (.value | tostring | test("liblzma5@(5\\.6\\.0|5\\.6\\.1)"))) | .value' result.json | grep -qE '5\.6\.0|5\.6\.1' && echo "Vulnerable: CVE-2024-3094" || echo "Not vulnerable or liblzma5 not found"

كيف يعمل:

  1. أمر تشغيل Docker: يبدأ حاوية Trivy، ويقوم بربط الدليل الحالي كحجم داخل الحاوية. هذا الإعداد يسمح لـ Trivy بإخراج نتائج الفحص مباشرة إلى ملف (result.json) في الدليل الحالي للمضيف.

  2. فحص Trivy: يقوم بفحص صورة Docker المحددة بحثًا عن الثغرات، وإخراج النتائج بتنسيق CycloneDX (تنسيق موحد لقائمة مكونات البرامج).

  3. المعالجة باستخدام jq: يقوم بتصفية نتائج الفحص لتحديد الحزمة liblzma5 والتحقق من الإصدارات "5.6.0" أو "5.6.1".

  4. التحقق من الثغرة: يستخدم grep للبحث عن الإصدارات المعرضة للثغرة من liblzma5. يطبع "Vulnerable: CVE-2024-3094" إذا تم العثور عليها؛ وإلا فإنه يخرج "Not vulnerable or liblzma5 not found".

هذه الطريقة فعالة جدًا لخطوط الأنابيب الآلية ويمكن تعديلها للتحقق من ثغرات مختلفة عبر صور Docker مختلفة، مما يضمن أمان عمليات النشر الخاصة بك.

تخصيص الفحص لصور Docker الخاصة بك

لاستخدام الأمر المقدم لفحص صور Docker الخاصة بك، اتبع هذه الخطوات لتخصيص الأمر وفقًا لاحتياجاتك:

  1. استبدال صورة Docker: قم بتغيير debian:experimental-20240311@sha256:16cc2b09c44d991d36f63153f13a7c98fb7da6bd2ba9d7cc0f48baacb7484970 بالصورة التي ترغب في فحصها. يمكنك تحديد صورتك بالاسم والعلامة (مثل yourimage:yourtag) أو بـ digest الخاص بها.

  2. ضبط التحقق من الثغرة: إذا كنت تفحص بحثًا عن ثغرات غير CVE-2024-3094، قم بتعديل تعبيرات jq و grep لاستهداف الحزم والإصدارات المحددة ذات الصلة بالثغرات التي تهمك.

على سبيل المثال، لفحص صورتك المسماة yourimage:yourtag:

root@kitploit:~
docker run --rm -v $('pwd'):/project -w /project aquasec/trivy:latest image --format cyclonedx --scanners vuln --output /project/result.json yourimage:yourtag && jq -r '.components[] | .properties[] | select(.name == "aquasecurity:trivy:PkgID" and (.value | tostring | test("liblzma5@(5\\.6\\.0|5\\.6\\.1)"))) | .value' result.json | grep -qE '5\.6\.0|5\.6\.1' && echo "Vulnerable: CVE-2024-3094" || echo "Not vulnerable or liblzma5 not found"

نصائح للتخصيص:

  • لثغرات مختلفة: استبدل "liblzma5@(5\\.6\\.0|5\\.6\\.1)" في أمر jq بالحزمة والإصدارات التي تهتم بها. على سبيل المثال، للتحقق من إصدار openssl "1.1.1"، قد تستخدم openssl@(1\\.1\\.1).

  • لخصائص مختلفة: اعتمادًا على الثغرة أو الحزمة، قد تحتاج إلى تعديل .name == "aquasecurity:trivy:PkgID" لاستهداف خصائص مختلفة في مخرجات CycloneDX.

ضمان دقة الفحوصات

  • التحديثات المنتظمة: تأكد من تحديث مثيل Trivy الخاص بك بانتظام للحصول على أحدث تعريفات الثغرات. يمكن تحقيق ذلك عادةً بسحب أحدث صورة aquasec/trivy قبل تشغيل الفحوصات.

  • فهم المخرجات: تعرف على تنسيق مخرجات Trivy ومعالجة jq لتفسير النتائج بدقة وفهم الآثار المترتبة على صور Docker الخاصة بك.

فحص مستودعات الكود بحثًا عن مراجع xz

إذا كنت تحتفظ بكود يتفاعل مع مكتبة xz أو يعتمد عليها، فمن الضروري تحديد أي مراجع صريحة لإصدارات المكتبة المعرضة للثغرة. استخدم الأوامر التالية لفحص مستودعاتك:

البحث عن مراجع "tukaani"

مشروع tukaani هو موطن أداة xz. للعثور على إشارات داخل الكود الخاص بك:

root@kitploit:~
grep -rnH "tukaani" .

البحث عن مراجع تبعيات Maven

لمشاريع Java التي تستخدم Maven، قد تحدد xz كتبعية في ملف pom.xml. لتحديد موقع هذه المراجع:

root@kitploit:~
grep -rnH "org.tukaani:xz:" .

هذه الأوامر ستبحث بشكل متكرر في الدليل الحالي (والدلائل الفرعية) عن الأنماط المحددة، مع الإبلاغ عن اسم الملف ورقم السطر والسطر الذي يحتوي على المطابقة.


ملاحظة: تأكد من أن لديك الأذونات اللازمة لتشغيل هذه البرامج النصية على خادمك أو لفحص المستودعات. دائمًا تحقق واختبر البرامج النصية في بيئة آمنة قبل استخدامها في أنظمة الإنتاج.

لا تتردد في المساهمة أو اقتراح تحسينات لهذا المستودع عن طريق تقديم طلب سحب (pull request) أو فتح مشكلة (issue). ملاحظاتك ومساهماتك محل تقدير كبير!

تنزيل الأداة