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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/aflplusplus/libafl
أطر اختبار الاختراقالتحليل الديناميكي (عزل)أطر الاستغلالتحليل الثغرات الأمنيةالاختبار العشوائيتحليل الملفات الثنائيةالأوراق والأبحاثالتعلم والتعليم
GitHubaflplusplus/libafl

LibAFL

مكتبة متقدمة للاختبار العشوائي - قم بتجميع أداة الاختبار العشوائي الخاصة بك في Rust! يتوسع عبر الأنوية والأجهزة. لـ Windows و Android و MacOS و Linux و no_std و ...

عرض المستودع
2.6k4781منذ 3 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

LibAFL، مكتبة التشويش

شعار LibAFL

مكتبة تشويش متقدمة - قم بتجميع أدوات التشويش الخاصة بك وتوسيع ميزاتها باستخدام Rust.

LibAFL هي مجموعة من القطع القابلة لإعادة الاستخدام من أدوات التشويش، مكتوبة بلغة Rust، حيث تمنحك العديد من فوائد أداة التشويش الجاهزة مع كونها قابلة للتخصيص بالكامل. تتضمن بعض الميزات البارزة حالياً ما يلي:

  • سريعة: نقوم بكل ما نستطيع في وقت الترجمة، مع إبقاء الحمل الزمني التشغيلي في حده الأدنى. يصل المستخدمون إلى 120 ألف عملية تنفيذ في الثانية في وضع Frida على هاتف (باستخدام جميع النوى).
  • قابلة للتوسع: LLMP أو Low Level Message Passing تسمح لـ LibAFL بالتوسع بشكل خطي تقريباً عبر النوى، وعبر TCP إلى أجهزة متعددة.
  • قابلة للتكيف: يمكنك استبدال كل جزء من LibAFL. على سبيل المثال، BytesInput هو مجرد أحد أشكال المدخلات المحتملة: لا تتردد في إضافة مدخلات قائمة على AST للتشويش المنظم، والمزيد.
  • متعددة المنصات: تعمل LibAFL على Windows وmacOS وiOS وLinux وAndroid وغيرها. يمكن بناء LibAFL في وضع no_std لحقن LibAFL في أهداف غامضة مثل الأجهزة المضمنة ومشغّلات الآلات الافتراضية.
  • أحضر هدفك الخاص: نحن ندعم أوضاعاً تعتمد على الثنائي فقط، مثل Frida-Mode، بالإضافة إلى مراحل ترجمة متعددة للتجهيز القائم على المصدر. بالطبع من السهل إضافة المحركات الخلفية الخاصة بك للتجهيز.

المفاهيم الأساسية

LibAFL سريعة، متعددة المنصات، متوافقة مع no_std، وقابلة للتوسع عبر النوى والأجهزة. تقدم كريت رئيسية توفر لبنات بناء لأدوات تشويش مخصصة: libafl وهي مكتبة تحتوي على كود شائع يمكن استخدامه لتجهيز الأهداف، وlibafl_targets وهي مكتبة توفر التسهيلات لتغليف المترجمات، وlibafl_cc. تقدم تكاملات مع أطر التجهيز الشائعة. حالياً، المحركات الخلفية المدعومة هي:

  • SanitizerCoverage في libafl_targets
  • Frida في libafl_frida
  • QEMU وضع المستخدم ووضع النظام، بما في ذلك الخطافات للمحاكاة، في libafl_qemu
  • TinyInst في libafl_tinyinst بواسطة elbiazo

البناء والتثبيت

تثبيت التبعيات

  • لغة تطوير Rust
    • نوصي بشدة بعدم استخدام حزمة توزيع Linux الخاصة بك مثلاً لأنها قد تكون قديمة. لذا قم بتثبيت Rust مباشرةً، يمكن العثور على التعليمات هنا.

    • الحد الأدنى لإصدار Rust المدعوم محدد. يمكنك دائماً التحقق من الإصدار المطلوب حالياً في ملف LibAFL’s Cargo.toml:

      إذا كان إصدار Rust المثبت لديك أقدم من المذكور في Cargo.toml، قم بالتحديث إلى أحدث سلسلة أدوات مستقرة:

      root@kitploit:~
      rustup update stable
      
  • أدوات LLVM
    • أدوات LLVM (بما في ذلك clang, clang++) مطلوبة (أحدث من LLVM 15.0.0 حتى LLVM 18.1.3). إذا كنت تستخدم Debian/Ubuntu، نوصي بشدة مرة أخرى بتثبيت الحزمة من هنا
  • Just:
    • نحن نستخدم just لبناء أدوات التشويش في دليل fuzzers/. يمكنك العثور على تعليمات تثبيته في بيئتك في دليل مستخدم Just.

استنساخ مستودع LibAFL باستخدام

root@kitploit:~
git clone https://github.com/AFLplusplus/LibAFL

بناء المكتبة باستخدام

root@kitploit:~
cargo build --release

بناء توثيق API باستخدام

root@kitploit:~
cargo doc

تصفح كتاب LibAFL (قيد التطوير!) باستخدام (يتطلب mdbook)

root@kitploit:~
cd docs && mdbook serve

البدء

نقوم بتجميع جميع أدوات التشويش المثال في ./fuzzers. تأكد من قراءة توثيقها (ومصادرها)، هذه هي الطريقة الطبيعية للبدء!

root@kitploit:~
just run

يمكنك تشغيل كل أداة تشويش مثال باستخدام هذا الأمر التالي، طالما أن دليل أداة التشويش يحتوي على ملف Justfile. أفضل أداة تشويش تم اختبارها هي ./fuzzers/inprocess/libfuzzer_libpng، وهي أداة تشويش متعددة النوى تشبه libfuzzer تستخدم LibAFL لـ harness libpng.

الموارد

  • دليل التثبيت
  • توثيق API على الإنترنت
  • كتاب LibAFL (قيد التطوير) على الإنترنت أو في المستودع
  • ورقتنا البحثية paper
  • محادثتنا في RC3 talk التي تشرح المفاهيم الأساسية
  • محادثتنا في Fuzzcon Europe talk مع نقاش خطوة بخطوة (قديم بعض الشيء ولكن ليس كثيراً) حول كيفية بناء بعض أدوات التشويش المثال
  • حلول Fuzzing101 solutions وسلسلة من المشاركات في المدونة بواسطة epi
  • مقالة مدونة حول التشويش الثنائي فقط باستخدام مكتبة libaf_qemu، Hacking TMNF - تشويش خادم اللعبة، بواسطة RickdeJager.
  • ورشة تمهيدية لـ LibAFL، بواسطة Jordan Whitehead

المساهمون

LibAFL مكتوب ومُدار بواسطة

  • Andrea Fioraldi [email protected]
  • Dominik Maier [email protected]
  • s1341 [email protected]
  • Dongjia Zhang [email protected]
  • Addison Crump [email protected]
  • Romain Malmain [email protected]

المساهمة

يرجى الاطلاع على CONTRIBUTING.md للحصول على إرشادات المساهمة.

التصحيح

لا تعمل أداة التشويش الخاصة بك كما هو متوقع؟ حاول قراءة DEBUGGING.md لفهم كيفية تصحيح مشاكلك.

الاقتباس

إذا كنت تستخدم LibAFL في عملك الأكاديمي، يرجى الاستشهاد بالورقة التالية:

root@kitploit:~
@inproceedings{libafl,
 author       = {Andrea Fioraldi and Dominik Maier and Dongjia Zhang and Davide Balzarotti},
 title        = {{LibAFL: A Framework to Build Modular and Reusable Fuzzers}},
 booktitle    = {Proceedings of the 29th ACM conference on Computer and communications security (CCS)},
 series       = {CCS '22},
 year         = {2022},
 month        = {November},
 location     = {Los Angeles, U.S.A.},
 publisher    = {ACM},
}

الترخيص

مرخص بموجب إما رخصة Apache، الإصدار 2.0 أو رخصة MIT حسب اختيارك.
ما لم تذكر صراحةً خلاف ذلك، فإن أي مساهمة تُقدم عن عمد لإدراجها في هذه الكريت بواسطتك، كما هو محدد في رخصة Apache-2.0، ستكون مرخصة بشكل مزدوج كما هو مذكور أعلاه، دون أي شروط أو أحكام إضافية.
تنزيل الأداة