Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
wafaray — Verbessern Sie Ihre Malware-Erkennung mit WAF + YARA (WAFARAY) | Kitploit
Tools/GitHubGitHub/alt3kx/wafaray
DefensivwerkzeugeWAF-UmgehungWebsicherheitMalware-AnalysePenetrationstestsBedrohungsanalyseLabs & Praxis
GitHubalt3kx/wafaray

wafaray

Verbessern Sie Ihre Malware-Erkennung mit WAF + YARA (WAFARAY)

Repository anzeigen
10714vor 3 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Verbessern Sie Ihre Malware-Erkennung mit WAF + YARA (WAFARAY)

wafaray

WAFARAY ist eine LAB-Bereitstellung basierend auf Debian 11.3.0 (stable) x64, erstellt und zusammengebracht aus zwei Hauptzutaten WAF + YARA, um bösartige Dateien (z.B. Webshells, Viren, Malware, Binärdateien) zu erkennen, typischerweise über Webfunktionen (Datei-Upload).

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

Zweck

Im Wesentlichen entstand die Hauptidee, WAF + YARA (YARA rückwärts = ARAY) zu verwenden, um bösartige Dateien auf WAF-Ebene zu erkennen, bevor die WAF sie an das Backend weiterleiten kann, z.B. Dateien, die über Webfunktionen hochgeladen werden. Siehe: https://owasp.org/www-community/vulnerabilities/Unrestricted_File_Upload

Wenn eine Webseite das Hochladen von Dateien erlaubt, überprüfen die meisten WAFs die Dateien nicht, bevor sie an das Backend gesendet werden. Die Implementierung von WAF + YARA könnte eine Malware-Erkennung bieten, bevor die WAF die Dateien an das Backend weiterleitet.

Malware-Erkennung durch WAF?

Ja, eine Lösung ist die Verwendung von ModSecurity + ClamAV. Die meisten Seiten rufen ClamAV als Prozess und nicht als Daemon auf. In diesem Fall kann die Analyse einer Datei mehr als 50 Sekunden pro Datei dauern. Siehe diese Ressource: https://kifarunix.com/intercept-malicious-file-upload-with-modsecurity-and-clamav/

Malware-Erkennung durch WAF + YARA?

:-( Ein paar Hinweise hier Black Hat Asia 2019 bitte lesen Sie weiter und sehen Sie unten unsere schnelle LAB-Bereitstellung.

WAFARAY: Wie funktioniert es?

Im Grunde ist es eine schnelle Bereitstellung (1) mit vorkompilierten und einsatzbereiten YARA-Regeln über ModSecurity (WAF) unter Verwendung einer benutzerdefinierten Regel; (2) diese benutzerdefinierte Regel führt eine Inspektion und Erkennung der Dateien durch, die möglicherweise bösartigen Code enthalten; (3) typischerweise lehnen Webfunktionen (Datei-Upload) verdächtige Dateien ab, die einen 403-Code Forbidden von ModSecurity erhalten.

wafaray

✔️ Der YaraCompile.py kompiliert alle YARA-Regeln. (Python3-Code)
✔️ Die test.conf ist ein virtueller Host, der die ModSecurity-Regeln enthält. (ModSecurity-Code)
✔️ Die ModSecurity-Regeln rufen modsec_yara.py auf, um die Datei zu inspizieren, die hochgeladen werden soll. (Python3-Code)
✔️ YARA gibt zwei Optionen zurück: 1 (200 OK) oder 0 (403 Forbidden)

Hauptverzeichnisse:

  • YARA-kompilierte Regeln: /YaraRules/Compiled
  • YARA-Standardregeln: /YaraRules/rules
  • YARA-Skripte: /YaraRules/YaraScripts
  • Apache-vhosts: /etc/apache2/sites-enabled
  • Temporäre Dateien: /temporal

Ansatz

  • Blueteamers: Regelumsetzung, bestes Alerting, Malware-Erkennung bei über Webfunktionen hochgeladenen Dateien.
  • Redteamers/Pentester: GreyBox-Bereich, Hochladen und Umgehen mit einer bösartigen Datei, Regelumsetzung.
  • Security Officers: Alerting aufrechterhalten, Bedrohungsjagd.
  • SOC: Bestes Monitoring zu bösartigen Dateien.
  • CERT: Malware-Analyse, neue IOCs bestimmen.

Aufbau des Erkennungslabors

Der Proof of Concept basiert auf Debian 11.3.0 (stable) x64, OWASP CRC v3.3.2 und Yara 4.0.5. Sie finden das automatische Installationsskript hier wafaray_install.sh und eine optionale manuelle Installationsanleitung hier: manual_instructions.txt. Außerdem wurde eine PHP-Seite als "Mock" erstellt, um die Interaktion und Erkennung bösartiger Dateien mit WAF + YARA zu beobachten.

Installation (empfohlen) mit Shell-Skripten

✔️ Schritt 1: Laden Sie Debian 11.3.0 herunter: https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/debian-11.3.0-amd64-DVD-1.iso
✔️ Schritt 2: Bereitstellung mit VMware oder VirtualBox
✔️ Schritt 3: Nach der Installation befolgen Sie bitte die folgenden Anweisungen:

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

# Remember to change YOUR_USER by your username (e.g 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

# Test your LAB environment 
alex@waf-labs:~$ firefox localhost:8080/upload.php

wafaray

YARA-Regeln

Sobald die YARA-Regeln heruntergeladen und kompiliert wurden.

Es ist ähnlich wie bei der Bereitstellung von ModSecurity: Sie müssen anpassen, welche Art von Regel Sie anwenden möchten. Das folgende Protokoll ist ein Beispiel dafür, dass die Web Application Firewall + Yara eine bösartige Datei erkannt hat; in diesem Fall wurde EICAR erkannt.

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"]

Testen von WAFARAY... voilà...

ModSecurity stoppen/starten

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

Apache-Protokolle

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

Demos

⚠️ Seien Sie vorsichtig bei Ihrem Test. Die folgenden Demos wurden auf isolierten virtuellen Maschinen getestet. ⚠️

Demo 1 - EICAR

Eine bösartige Datei wird hochgeladen, und die ModSecurity-Regeln plus Yara verweigern das Hochladen der Datei an das Backend, wenn die Datei mit mindestens einer YARA-Regel übereinstimmt. (Beispiel für Malware: https://secure.eicar.org/eicar.com.txt) FÜHREN SIE DIE DATEI NICHT AUS.

wafaray

Demo 2 - WebShell.php

Für diese Demo deaktivieren wir die Regel 933110 - PHP Inject Attack, um die YARA-Regeln zu validieren. Eine bösartige Datei wird hochgeladen, und die ModSecurity-Regeln plus Yara verweigern das Hochladen der Datei an das Backend, wenn die Datei mit mindestens einer YARA-Regel übereinstimmt. (Beispiel für WebShell PHP: https://github.com/drag0s/php-webshell) FÜHREN SIE DIE DATEI NICHT AUS.

wafaray

Demo 3 - Malware Bazaar (RecordBreaker) Veröffentlicht: 2022-08-13

Eine bösartige Datei wird hochgeladen, und die ModSecurity-Regeln plus Yara verweigern das Hochladen der Datei an das Backend, wenn die Datei mit mindestens einer YARA-Regel übereinstimmt. (Beispiel für Malware Bazaar (RecordBreaker): https://bazaar.abuse.ch/sample/94ffc1624939c5eaa4ed32d19f82c369333b45afbbd9d053fa82fe8f05d91ac2/) FÜHREN SIE DIE DATEI NICHT AUS.

wafaray

YARA-Regelquellen

Falls Sie weitere YARA-Regeln herunterladen möchten, finden Sie hier die folgenden Repositories:

  • Yara Signatures Compiled - https://github.com/Yara-Rules/rules
  • YARAHub - https://yaraify.abuse.ch/
  • Awesome Yara Rules - https://github.com/InQuest/awesome-yara#rules
  • Advanced Threat Research Yara Rules - https://github.com/advanced-threat-research/Yara-Rules
  • Icewater - https://github.com/SupportIntelligence/Icewater
  • Open Source Yara Rules - https://github.com/mikesxrs/Open-Source-YARA-rules
  • Bartblaza Yara Rules - https://github.com/bartblaze/Yara-rules
  • Cobalstrike - https://github.com/Te-k/cobaltstrike
  • Yara Forensic - 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/ (Create an account)

Referenzen

  • 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

Roadmap bis zur nächsten Version

  • Malware-Hash-Datenbank (MLDBM). Die Datenbank speichert die MD5- oder SHA1-Werte von Dateien, die als verdächtig erkannt wurden.
  • Zu testen: CRS Modsecurity v.3.3.3 neue Regeln
  • Verbesserung der ModSecurity-Regeln zur Malware-Erkennung mit Datenbank.
  • Erstellen einer Blacklist und Whitelist für MD5 oder SHA1.
  • Zu testen: Hintergrundausführung, wenn die YARA-Analyse länger als 3 Sekunden dauert.
  • Zu testen: neue Payloads, z.B. PowerShell-Obfuskierte (WebShells)
  • Hinweise für Live-Umgebungen. (WAF AWS, WAF GCP, ...)

Autoren

Alex Hernandez aka (@_alt3kx_)
Jesus Huerta aka @mindhack03d

Mitwirkende

Israel Zeron Medina aka @spk085

Tool herunterladen