
أداة سريعة لمسح ثغرة تلويث النموذج الأولي في جانب العميل مكتوبة بلغة Rust. 🦀
ببساطة، قم بتنزيل نسخة ثنائية مبنية مسبقًا من صفحة الإصدارات وقم بتشغيلها!
| ملاحظة: يجب تثبيت Rust! |
باستخدام cargo:
▶ cargo install ppfuzz
بناء الملف التنفيذي يدويًا من الكود المصدري:
▶ git clone https://github.com/dwisiswant0/ppfuzz
▶ cd ppfuzz && cargo build --release
# الملف الثنائي موجود في target/release/ppfuzz
يستخدم ppfuzz مكتبة chromiumoxide، والتي تتطلب تثبيت متصفح Chrome أو Chromium.
إذا تم تعيين متغير البيئة CHROME، فسيستخدمه كملف تنفيذي افتراضي. وإلا، يتم البحث عن أسماء الملفات google-chrome-stable وchromium وchromium-browser وchrome وchrome-browser في الأماكن القياسية. إذا فشل ذلك، يتم الرجوع إلى /Applications/Google Chrome.app/... (على MacOS) أو السجل (على Windows).

كما ترى في العرض التوضيحي أعلاه (انقر للعرض بجودة عالية)، يحاول ppfuzz التحقق من وجود ثغرات تلوث النموذج الأولي عن طريق إضافة استعلامات كائن ومؤشر. إذا كانت ثغرة موجودة بالفعل، فسيقوم بتحديد الأدوات البرمجية المستخدمة ثم عرض معلومات حمولة إضافية قد ترفع تأثيرها إلى XSS أو تجاوز أو حقن الكوكيز.
من السهل جدًا استخدام ppfuzz!
▶ ppfuzz -l FILE [OPTIONS]
استخدم -l/--list لتوفير قائمة الإدخال:
▶ ppfuzz -l FILE
يمكنك أيضًا توفير القائمة باستخدام إعادة توجيه الإدخال/الإخراج:
▶ ppfuzz < FILE
— أو ربطها من مخرجات أمر آخر:
▶ cat FILE | ppfuzz
عرض الأهداف المعرضة للخطر فقط / كتم الأخطاء:
▶ ppfuzz -l FILE 2>/dev/null
فيما يلي جميع الخيارات التي يدعمها:
▶ ppfuzz -h
| العلم | الوصف | القيمة الافتراضية |
|---|---|---|
| -l, --list | قائمة عناوين URL المستهدفة | |
| -c, --concurrency | تعيين مستوى التزامن | 5 |
| -t, --timeout | أقصى وقت مسموح للاتصال (بالثواني) | 30 |
| -h, --help | طباعة معلومات المساعدة | |
| -V, --version | طباعة معلومات الإصدار |
عندما بدأت ppfuzz، كانت معرفتي بلغة Rust قليلة جدًا أو معدومة، وأعتقد أنه قد يكون هناك العديد من العيوب / الثغرات الأمنية. لذا، جميع المساهمات مرحب بها بالطبع — أي تقارير عن الأخطاء أو اقتراحات موضع تقدير، بعض البيئات لم يتم اختبارها بعد.
بالإضافة إلى كونها وسيلة تعلم لي، تم إنشاء هذه الأداة لأنها مستوحاة من نصيحة @R0X4R حول كيفية أتمتة فحص تلوث النموذج الأولي باستخدام page-fetch.
نظرًا لأن هذه الأداة تتضمن بعض المساهمات، سأشكر علنًا المستخدمين التاليين على مساعدتهم ومواردهم:
Fourty2#4842 (Discord) - لحل عملي مفيد.ppfuzz موزع تحت رخصة MIT. راجع LICENSE.