<summary><strong>Lernen Sie AWS-Hacking von Grund auf mit</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
Es können verschiedene Techniken verwendet werden, um die Regex-Filter der Firewalls zu umgehen. Beispiele hierfür sind das Wechseln der Groß- und Kleinschreibung, das Hinzufügen von Zeilenumbrüchen und das Codieren von Payloads. Ressourcen für die verschiedenen Umgehungen finden Sie unter [PayloadsAllTheThings](https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/XSS%20Injection/README.md#filter-bypass-and-exotic-payloads) und [OWASP](https://cheatsheetseries.owasp.org/cheatsheets/XSS\_Filter\_Evasion\_Cheat\_Sheet.html). Die folgenden Beispiele wurden aus [diesem Artikel](https://medium.com/@allypetitt/5-ways-i-bypassed-your-web-application-firewall-waf-43852a43a1c2) entnommen.
<BODYonload!#$%&()*~+-_.,:;?@[/|\]^`=confirm()> # use any chars that aren't letters, numbers, or encapsulation chars between event handler and equal sign (only works on Gecko engine)
Eine gängige Methode, um Web Application Firewalls (WAFs) zu umgehen, besteht darin, die Zeichencodierung zu ändern. Dies kann dazu führen, dass die WAF die Angriffsvektoren nicht erkennt und somit den Angriff nicht blockiert.
### URL-Encoding
URL-Encoding ist eine Technik, bei der Sonderzeichen in einer URL durch eine spezielle Codierung ersetzt werden. Dies kann dazu führen, dass die WAF den Angriffsvektor nicht erkennt, da er in einer anderen Form vorliegt.
Hex-Encoding ist eine Methode, bei der Zeichen in Hexadezimalwerte umgewandelt werden. Dies kann dazu führen, dass die WAF den Angriffsvektor nicht erkennt, da er in einer anderen Form vorliegt.
Beispiel:
Ursprünglicher Text: `admin`
Hex-Encoding: `61646d696e`
### Unicode-Encoding
Unicode-Encoding ist eine Technik, bei der Zeichen in Unicode-Zeichen umgewandelt werden. Dies kann dazu führen, dass die WAF den Angriffsvektor nicht erkennt, da er in einer anderen Form vorliegt.
HTML-Encoding ist eine Methode, bei der Zeichen in HTML-Entitäten umgewandelt werden. Dies kann dazu führen, dass die WAF den Angriffsvektor nicht erkennt, da er in einer anderen Form vorliegt.
Base64-Encoding ist eine Technik, bei der Daten in eine Zeichenkette umgewandelt werden, die nur aus alphanumerischen Zeichen besteht. Dies kann dazu führen, dass die WAF den Angriffsvektor nicht erkennt, da er in einer anderen Form vorliegt.
Beispiel:
Ursprünglicher Text: `admin`
Base64-Encoding: `YWRtaW4=`
### GZIP-Encoding
GZIP-Encoding ist eine Methode, bei der Daten komprimiert werden, um die Übertragungseffizienz zu verbessern. Dies kann dazu führen, dass die WAF den Angriffsvektor nicht erkennt, da er in einer komprimierten Form vorliegt.
Beispiel:
Ursprünglicher Text: `admin`
GZIP-Encoding: `H4sIAAAAAAAE/w==`
### Chunked-Encoding
Chunked-Encoding ist eine Technik, bei der Daten in kleinere Teile aufgeteilt werden, um die Übertragung zu erleichtern. Dies kann dazu führen, dass die WAF den Angriffsvektor nicht erkennt, da er in mehreren Teilen übertragen wird.
Obfuscation ist eine Technik, bei der der Code so modifiziert wird, dass er schwer zu verstehen oder zu analysieren ist. Dies kann verwendet werden, um WAFs (Web Application Firewalls) zu umgehen, da sie den modifizierten Code möglicherweise nicht erkennen können.
Es gibt verschiedene Arten von Obfuscationstechniken, die verwendet werden können, um den Code zu verschleiern. Einige Beispiele sind:
- **String-Obfuscation**: Hierbei werden Zeichenketten im Code verschlüsselt oder in andere Formate umgewandelt, um sie vor der Erkennung durch WAFs zu schützen.
- **Code-Obfuscation**: Diese Technik beinhaltet die Modifikation des Codes, um ihn schwer lesbar zu machen. Dies kann durch das Hinzufügen von unnötigen Anweisungen, das Umbenennen von Variablen oder das Verwenden von verschleierten Funktionen erreicht werden.
- **Payload-Obfuscation**: Bei dieser Technik wird die schädliche Payload so modifiziert, dass sie von WAFs nicht erkannt wird. Dies kann durch das Ändern der Reihenfolge der Zeichen, das Hinzufügen von Junk-Code oder das Verwenden von verschleierten Funktionen erreicht werden.
Es ist wichtig zu beachten, dass Obfuscation allein nicht ausreicht, um eine WAF zu umgehen. Es sollte als Teil einer umfassenderen Angriffsstrategie verwendet werden, die auch andere Techniken wie IP-Spoofing, HTTP-Header-Manipulation und Angriffe auf Schwachstellen umfasst.
Je nach Implementierung der Unicode-Normalisierung (weitere Informationen [hier](https://jlajara.gitlab.io/Bypass\_WAF\_Unicode)) können Zeichen, die Unicode-Kompatibilität aufweisen, den WAF umgehen und als beabsichtigte Nutzlast ausgeführt werden. Kompatible Zeichen finden Sie [hier](https://www.compart.com/en/unicode)
Es ist üblich bei cloudbasierten WAFs, dass wenn die Nutzlast größer als X ist, die Anfrage nicht vom WAF überprüft wird. Du kannst das einfach nutzen, um sie zu umgehen.
<summary><strong>Lerne AWS-Hacking von Null auf Held mit</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Wenn du deine **Firma in HackTricks bewerben möchtest** oder **HackTricks als PDF herunterladen möchtest**, schau dir die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop) an!
* Hol dir das [**offizielle PEASS & HackTricks Merchandise**](https://peass.creator-spring.com)
* **Tritt der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) **bei oder folge** uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Teile deine Hacking-Tricks, indem du Pull Requests an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) **und** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **GitHub-Repos sendest.**