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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
wafaray — عزز اكتشاف البرامج الضارة لديك باستخدام WAF + YARA (WAFARAY) | Kitploit
أدوات/GitHubGitHub/alt3kx/wafaray
أدوات دفاعيةتجاوز WAFأمن الويبتحليل البرمجيات الخبيثةاختبار الاختراقاستخبارات التهديداتمختبرات وتدريب عملي
GitHubalt3kx/wafaray

wafaray

عزز اكتشاف البرامج الضارة لديك باستخدام WAF + YARA (WAFARAY)

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

الأكثر شعبية

عرض الكل →

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

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

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

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

عزز اكتشاف البرامج الضارة باستخدام WAF + YARA (WAFARAY)

wafaray

WAFARAY هو بيئة مختبرية معتمدة على Debian 11.3.0 (مستقر) x64، تم إنشاؤها وطهيها بين مكونين رئيسيين WAF + YARA للكشف عن الملفات الضارة (مثل webshells، الفيروسات، البرامج الضارة، الملفات الثنائية) عادةً عبر وظائف الويب (رفع الملفات).

made-with-python made-with-bash GitHub Linux

الغرض

في الأساس، جاءت الفكرة الرئيسية لاستخدام WAF + YARA (YARA من اليمين إلى اليسار = ARAY) للكشف عن الملفات الضارة على مستوى جدار الحماية (WAF) قبل أن يتمكن WAF من إعادة توجيهها إلى الخادم الخلفي، مثل الملفات التي يتم رفعها عبر وظائف الويب انظر: https://owasp.org/www-community/vulnerabilities/Unrestricted_File_Upload

عندما تسمح صفحة ويب برفع الملفات، فإن معظم جدران الحماية (WAFs) لا تقوم بفحص الملفات قبل إرسالها إلى الخادم الخلفي. يمكن أن يوفر تطبيق WAF + YARA اكتشافًا للبرامج الضارة قبل أن يقوم WAF بإعادة توجيه الملفات إلى الخادم الخلفي.

هل يتم اكتشاف البرامج الضارة عبر WAF؟

نعم، أحد الحلول هو استخدام ModSecurity + Clamav، حيث تستدعي معظم الصفحات ClamAV كعملية وليس كخدمة خلفية (daemon)، وفي هذه الحالة، قد يستغرق تحليل ملف أكثر من 50 ثانية لكل ملف. انظر هذا المورد: https://kifarunix.com/intercept-malicious-file-upload-with-modsecurity-and-clamav/

هل يتم اكتشاف البرامج الضارة عبر WAF + YARA؟

🙁 بعض الأدلة هنا Black Hat Asia 2019 يرجى متابعة القراءة ورؤية نشر المختبر السريع أدناه.

WAFARAY: كيف يعمل؟

بشكل أساسي، هو نشر سريع (1) بقواعد YARA مُجمَّعة مسبقًا وجاهزة للاستخدام عبر ModSecurity (WAF) باستخدام قاعدة مخصصة؛ (2) ستقوم هذه القاعدة المخصصة بإجراء فحص واكتشاف للملفات التي قد تحتوي على كود ضار، (3) عادةً وظائف الويب (رفع الملفات) إذا كان الملف مشبوهًا سيتم رفضه مع استلام رمز 403 ممنوع من ModSecurity.

wafaray

✔️ يقوم YaraCompile.py بتجميع جميع قواعد yara. (كود Python3)
✔️ ملف test.conf هو مضيف افتراضي يحتوي على قواعد mod security. (كود ModSecurity)
✔️ تستدعي قواعد ModSecurity النص modsec_yara.py لفحص الملف الذي يتم محاولة رفعه. (كود Python3)
✔️ يعيد Yara خيارين: 1 (200 OK) أو 0 (403 ممنوع)

المسارات الرئيسية:

  • قواعد Yara المُجمَّعة: /YaraRules/Compiled
  • قواعد Yara الافتراضية: /YaraRules/rules
  • نصوص Yara البرمجية: /YaraRules/YaraScripts
  • المضيفات الافتراضية لـ Apache: /etc/apache2/sites-enabled
  • الملفات المؤقتة: /temporal

النهج

  • فريق الدفاع (Blueteamers): تطبيق القواعد، تنبيه أفضل، اكتشاف البرامج الضارة في الملفات التي يتم رفعها عبر وظائف الويب.
  • فريق الهجوم / مختبري الاختراق (Redteamers/pentesters): نطاق الصندوق الرمادي (GreyBox)، رفع وتجاوز بملف ضار، تطبيق القواعد.
  • مسؤولي الأمن (Security Officers): الحفاظ على التنبيه، صيد التهديدات.
  • مركز العمليات الأمنية (SOC): مراقبة أفضل للملفات الضارة.
  • فريق الاستجابة للطوارئ الحاسوبية (CERT): تحليل البرامج الضارة، تحديد مؤشرات الاختراق الجديدة (IOC).

بناء مختبر الكشف

يعتمد إثبات المفهوم على نظام Debian 11.3.0 (مستقر) x64، و OWASP CRC v3.3.2 و Yara 4.0.5، ستجد نص التثبيت التلقائي هنا wafaray_install.sh ودليل التثبيت اليدوي الاختياري هنا: manual_instructions.txt كما تم إنشاء صفحة PHP كـ "محاكاة" لملاحظة التفاعل والكشف عن الملفات الضارة باستخدام WAF + YARA.

التثبيت (موصى به) باستخدام نصوص shell

✔️ الخطوة 1: تنزيل Debian 11.3.0: https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/debian-11.3.0-amd64-DVD-1.iso
✔️ الخطوة 2: النشر باستخدام VMware أو VirtualBox
✔️ الخطوة 3: بعد التثبيت، يرجى اتباع التعليمات أدناه:

root@kitploit:~
alex@waf-labs:~$ su root 
root@waf-labs:/home/alex#

# تذكر تغيير YOUR_USER باسم المستخدم الخاص بك (مثل waf)
root@waf-labs:/home/alex# sed -i 's/^\(# User privi.*\)/\1\nalex ALL=(ALL) NOPASSWD:ALL/g' /etc/sudoers
root@waf-labs:/home/alex# exit
alex@waf-labs:~$ sudo sed -i 's/^\(deb cdrom.*\)/#\1/g' /etc/apt/sources.list
alex@waf-labs:~$ sudo sed -i 's/^# \(deb\-src http.*\)/ \1/g' /etc/apt/sources.list
alex@waf-labs:~$ sudo sed -i 's/^# \(deb http.*\)/ \1/g' /etc/apt/sources.list
alex@waf-labs:~$ echo -ne "\n\ndeb http://deb.debian.org/debian/ bullseye main\ndeb-src http://deb.debian.org/debian/ bullseye main\n" | sudo tee -a  /etc/apt/sources.list
alex@waf-labs:~$ sudo apt-get update
alex@waf-labs:~$ sudo apt-get install sudo -y
alex@waf-labs:~$ sudo apt-get install git vim dos2unix net-tools -y
alex@waf-labs:~$ git clone https://github.com/alt3kx/wafaray
alex@waf-labs:~$ cd wafaray
alex@waf-labs:~$ dos2unix wafaray_install.sh
alex@waf-labs:~$ chmod +x wafaray_install.sh
alex@waf-labs:~$ sudo ./wafaray_install.sh >> log_install.log

# اختبر بيئة مختبرك
alex@waf-labs:~$ firefox localhost:8080/upload.php

wafaray

قواعد Yara

بمجرد تنزيل وتجميع قواعد Yara.

يشبه ذلك عند نشر ModSecurity، تحتاج إلى تخصيص نوع القواعد التي تريد تطبيقها. السجل التالي هو مثال عندما كشف جدار الحماية (WAF) + Yara عن ملف ضار، في هذه الحالة تم اكتشاف eicar.

root@kitploit:~
Message: Access denied with code 403 (phase 2). File "/temporal/20220812-184146-YvbXKilOKdNkDfySME10ywAAAAA-file-Wx1hQA" rejected by 
the approver script "/YaraRules/YaraScripts/modsec_yara.py": 0 SUSPECTED [YaraSignature: eicar] 
[file "/etc/apache2/sites-enabled/test.conf"] [line "56"] [id "500002"] 
[msg "Suspected File Upload:eicar.com.txt -> /temporal/20220812-184146-YvbXKilOKdNkDfySME10ywAAAAA-file-Wx1hQA - URI: /upload.php"]

اختبار WAFARAY... ها هو...

إيقاف / تشغيل ModSecurity

root@kitploit:~
$ sudo service apache2 stop
$ sudo service apache2 start

سجلات Apache

root@kitploit:~
$ cd /var/log
$ sudo tail -f apache2/test_access.log apache2/test_audit.log apache2/test_error.log

العروض التوضيحية

⚠️ كن حذرًا بشأن اختبارك. تم اختبار العروض التوضيحية التالية على أجهزة افتراضية معزولة. ⚠️

العرض التوضيحي 1 - EICAR

يتم رفع ملف ضار، وترفض قواعد ModSecurity بالإضافة إلى Yara رفع الملف إلى الخادم الخلفي إذا تطابق الملف مع قاعدة Yara واحدة على الأقل. (مثال على برامج ضارة: https://secure.eicar.org/eicar.com.txt) لا تقم بتنفيذ الملف.

wafaray

العرض التوضيحي 2 - WebShell.php

في هذا العرض التوضيحي، نقوم بتعطيل القاعدة 933110 - PHP Inject Attack للتحقق من صحة قواعد Yara. يتم رفع ملف ضار، وترفض قواعد ModSecurity بالإضافة إلى Yara رفع الملف إلى الخادم الخلفي إذا تطابق الملف مع قاعدة Yara واحدة على الأقل. (مثال على WebShell PHP: https://github.com/drag0s/php-webshell) لا تقم بتنفيذ الملف.

wafaray

العرض التوضيحي 3 - سوق البرامج الضارة (RecordBreaker) نُشر: 2022-08-13

يتم رفع ملف ضار، وترفض قواعد ModSecurity بالإضافة إلى Yara رفع الملف إلى الخادم الخلفي إذا تطابق الملف مع قاعدة Yara واحدة على الأقل. (مثال على سوق البرامج الضارة (RecordBreaker): https://bazaar.abuse.ch/sample/94ffc1624939c5eaa4ed32d19f82c369333b45afbbd9d053fa82fe8f05d91ac2/) لا تقم بتنفيذ الملف.

wafaray

مصادر قواعد YARA

في حال كنت ترغب في تنزيل المزيد من قواعد yara، يمكنك الاطلاع على المستودعات التالية:

  • توقيعات Yara المُجمَّعة - https://github.com/Yara-Rules/rules
  • YARAHub - https://yaraify.abuse.ch/
  • قواعد Yara رائعة - https://github.com/InQuest/awesome-yara#rules
  • قواعد Yara لأبحاث التهديدات المتقدمة - https://github.com/advanced-threat-research/Yara-Rules
  • Icewater - https://github.com/SupportIntelligence/Icewater
  • قواعد Yara مفتوحة المصدر - https://github.com/mikesxrs/Open-Source-YARA-rules
  • قواعد Yara لـ Bartblaza - https://github.com/bartblaze/Yara-rules
  • Cobalstrike - https://github.com/Te-k/cobaltstrike
  • Yara للأدلة الجنائية - https://github.com/Xumeiquer/yara-forensics
  • Loki - https://github.com/Neo23x0/Loki
  • YarGen - https://github.com/Neo23x0/yarGen
  • YarAnalyzer - https://github.com/Neo23x0/yarAnalyzer/
  • Valhalla - https://www.nextron-systems.com/valhalla/, https://valhalla.nextron-systems.com/
  • AlienVault - https://otx.alienvault.com/ (إنشاء حساب)

المراجع

  • https://portswigger.net/daily-swig/waf-reloaded-modsecurity-3-1-showcased-at-black-hat-asia
  • https://yara.readthedocs.io/en/latest/gettingstarted.html
  • https://yara.readthedocs.io/en/v3.4.0/yarapython.html
  • https://virustotal.github.io/yara/
  • https://www.tutorialspoint.com/perl/perl_introduction.htm
  • https://malware.expert/scan-every-file-clam-antivirus-scanner-modsecurity/
  • https://xael.org/pages/pyclamd-en.html
  • https://docs.clamav.net/
  • https://www.decalage.info/en/python/pyclamd
  • https://opensource.apple.com/source/clamav/clamav-116.2/clamav.Conf/clamd.conf.auto.html
  • https://c99.sh/hunting-0days-with-yara-rules/
  • https://github.com/claroty/arya
  • https://isc.sans.edu/diary/YARA%27s+Console+Module/28288

خارطة الطريق حتى الإصدار التالي

  • قاعدة بيانات لتجزئة البرامج الضارة (MLDBM). تقوم قاعدة البيانات بتخزين MD5 أو SHA1 للملفات التي تم اكتشافها كمشبوهة.
  • اختبار قواعد CRS Modsecurity v.3.3.3 الجديدة
  • تحسين قواعد ModSecurity لاكتشاف البرامج الضارة باستخدام قاعدة البيانات.
  • إنشاء قائمة سوداء وقائمة بيضاء مرتبطة بـ MD5 أو SHA1.
  • اختبار التشغيل في الخلفية إذا استغرق تحليل Yara أكثر من 3 ثوانٍ.
  • اختبار حمولات جديدة، مثال: Powershell مُبهم (WebShells)
  • ملاحظات للبيئات الحية. (WAF AWS, WAF GCP, ...)

المؤلفون

Alex Hernandez المعروف بـ (@_alt3kx_)
Jesus Huerta المعروف بـ @mindhack03d

المساهمون

Israel Zeron Medina المعروف بـ @spk085

تنزيل الأداة