mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-26 22:52:06 +00:00
154 lines
9.2 KiB
Markdown
154 lines
9.2 KiB
Markdown
# Web-Schwachstellen-Methodik
|
|
|
|
<details>
|
|
|
|
<summary><strong>Erlernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks beworben sehen möchten** oder **HackTricks im PDF-Format 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 einreichen.
|
|
|
|
</details>
|
|
|
|
Bei jedem Web-Pentest gibt es **mehrere versteckte und offensichtliche Stellen, die anfällig sein könnten**. Dieser Beitrag soll eine Checkliste sein, um zu bestätigen, dass Sie nach Schwachstellen an allen möglichen Stellen gesucht haben.
|
|
|
|
## Proxies
|
|
|
|
{% hint style="info" %}
|
|
Heutzutage verwenden **Webanwendungen** in der Regel **irgendeine Art von Zwischenproxys**, die missbraucht werden können, um Schwachstellen auszunutzen. Diese Schwachstellen erfordern einen anfälligen Proxy, benötigen aber in der Regel auch eine zusätzliche Schwachstelle im Backend.
|
|
{% endhint %}
|
|
|
|
* [ ] [**Ausnutzung von Hop-by-Hop-Headern**](abusing-hop-by-hop-headers.md)
|
|
* [ ] [**Cache-Vergiftung/Cache-Täuschung**](cache-deception/)
|
|
* [ ] [**HTTP-Request-Smuggling**](http-request-smuggling/)
|
|
* [ ] [**H2C-Schmuggel**](h2c-smuggling.md)
|
|
* [ ] [**Serverseitige Inklusion/Edge-Seitige Inklusion**](server-side-inclusion-edge-side-inclusion-injection.md)
|
|
* [ ] [**Entdeckung von Cloudflare**](../network-services-pentesting/pentesting-web/uncovering-cloudflare.md)
|
|
* [ ] [**XSLT-Serverseitige Injektion**](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
|
|
* [ ] [**Proxy / WAF-Schutzumgehung**](proxy-waf-protections-bypass.md)
|
|
|
|
## **Benutzereingabe**
|
|
|
|
{% hint style="info" %}
|
|
Die meisten Webanwendungen werden **Benutzern erlauben, Daten einzugeben, die später verarbeitet werden**.\
|
|
Je nach Struktur der erwarteten Daten auf dem Server können einige Schwachstellen zutreffen oder auch nicht.
|
|
{% endhint %}
|
|
|
|
### **Reflektierte Werte**
|
|
|
|
Wenn die eingegebenen Daten auf irgendeine Weise im Antworttext reflektiert werden können, könnte die Seite anfällig für verschiedene Probleme sein.
|
|
|
|
* [ ] [**Clientseitige Template-Injektion**](client-side-template-injection-csti.md)
|
|
* [ ] [**Befehlsinjektion**](command-injection.md)
|
|
* [ ] [**CRLF**](crlf-0d-0a.md)
|
|
* [ ] [**Hängende Markup**](dangling-markup-html-scriptless-injection/)
|
|
* [ ] [**Dateieinschluss/Pfadtraversierung**](file-inclusion/)
|
|
* [ ] [**Offene Weiterleitung**](open-redirect.md)
|
|
* [ ] [**Prototyp-Verschmutzung zu XSS**](deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss)
|
|
* [ ] [**Serverseitige Inklusion/Edge-Seitige Inklusion**](server-side-inclusion-edge-side-inclusion-injection.md)
|
|
* [ ] [**Serverseitige Anforderungsfälschung**](ssrf-server-side-request-forgery/)
|
|
* [ ] [**Serverseitige Template-Injektion**](ssti-server-side-template-injection/)
|
|
* [ ] [**Reverse Tab Nabbing**](reverse-tab-nabbing.md)
|
|
* [ ] [**XSLT-Serverseitige Injektion**](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
|
|
* [ ] [**XSS**](xss-cross-site-scripting/)
|
|
* [ ] [**XSSI**](xssi-cross-site-script-inclusion.md)
|
|
* [ ] [**XS-Suche**](xs-search/)
|
|
|
|
Einige der genannten Schwachstellen erfordern spezielle Bedingungen, andere erfordern nur, dass der Inhalt reflektiert wird. Sie finden einige interessante Polyglotte, um schnell die Schwachstellen zu testen, in:
|
|
|
|
{% content-ref url="pocs-and-polygloths-cheatsheet/" %}
|
|
[pocs-and-polygloths-cheatsheet](pocs-and-polygloths-cheatsheet/)
|
|
{% endcontent-ref %}
|
|
|
|
### **Suchfunktionen**
|
|
|
|
Wenn die Funktion verwendet werden kann, um bestimmte Daten im Backend zu suchen, können Sie sie möglicherweise verwenden, um beliebige Daten zu suchen.
|
|
|
|
* [ ] [**Dateieinschluss/Pfadtraversierung**](file-inclusion/)
|
|
* [ ] [**NoSQL-Injektion**](nosql-injection.md)
|
|
* [ ] [**LDAP-Injektion**](ldap-injection.md)
|
|
* [ ] [**ReDoS**](regular-expression-denial-of-service-redos.md)
|
|
* [ ] [**SQL-Injektion**](sql-injection/)
|
|
* [ ] [**XPATH-Injektion**](xpath-injection.md)
|
|
|
|
### **Formulare, WebSockets und PostMsgs**
|
|
|
|
Wenn ein WebSocket eine Nachricht sendet oder ein Formular Benutzern ermöglicht, Aktionen auszuführen, können Schwachstellen auftreten.
|
|
|
|
* [ ] [**Cross-Site-Request-Forgery**](csrf-cross-site-request-forgery.md)
|
|
* [ ] [**Cross-Site-WebSocket-Hijacking (CSWSH)**](websocket-attacks.md)
|
|
* [ ] [**PostMessage-Schwachstellen**](postmessage-vulnerabilities/)
|
|
|
|
### **HTTP-Header**
|
|
|
|
Je nach den vom Webserver bereitgestellten HTTP-Headern können einige Schwachstellen vorhanden sein.
|
|
|
|
* [ ] [**Clickjacking**](clickjacking.md)
|
|
* [ ] [**Bypass der Inhaltsrichtlinie**](content-security-policy-csp-bypass/)
|
|
* [ ] [**Cookies-Hacking**](hacking-with-cookies/)
|
|
* [ ] [**CORS - Fehlkonfigurationen & Umgehung**](cors-bypass.md)
|
|
|
|
### **Umgehungen**
|
|
|
|
Es gibt verschiedene spezifische Funktionen, bei denen einige Workarounds nützlich sein könnten, um sie zu umgehen.
|
|
|
|
* [ ] [**2FA/OTP-Umgehung**](2fa-bypass.md)
|
|
* [ ] [**Zahlungsprozess umgehen**](bypass-payment-process.md)
|
|
* [ ] [**Captcha-Umgehung**](captcha-bypass.md)
|
|
* [ ] [**Anmeldeumgehung**](login-bypass/)
|
|
* [ ] [**Rennbedingung**](race-condition.md)
|
|
* [ ] [**Rate-Limit-Umgehung**](rate-limit-bypass.md)
|
|
* [ ] [**Zurücksetzen des vergessenen Passworts umgehen**](reset-password.md)
|
|
* [ ] [**Registrierungsschwachstellen**](registration-vulnerabilities.md)
|
|
|
|
### **Strukturierte Objekte / Spezifische Funktionen**
|
|
|
|
Einige Funktionen erfordern, dass die **Daten in einem sehr spezifischen Format strukturiert sind** (wie ein sprachserialisiertes Objekt oder XML). Daher ist es einfacher festzustellen, ob die Anwendung anfällig sein könnte, da sie diese Art von Daten verarbeiten muss.\
|
|
Einige **spezifische Funktionen** können auch anfällig sein, wenn ein **spezifisches Format der Eingabe verwendet wird** (wie E-Mail-Header-Injektionen).
|
|
|
|
* [ ] [**Deserialisierung**](deserialization/)
|
|
* [ ] [**E-Mail-Header-Injektion**](email-injections.md)
|
|
* [ ] [**JWT-Schwachstellen**](hacking-jwt-json-web-tokens.md)
|
|
* [ ] [**XML-Externe Entität**](xxe-xee-xml-external-entity.md)
|
|
### Dateien
|
|
|
|
Funktionalitäten, die das Hochladen von Dateien ermöglichen, könnten anfällig für mehrere Probleme sein.\
|
|
Funktionalitäten, die Dateien generieren, einschließlich Benutzereingaben, könnten unerwarteten Code ausführen.\
|
|
Benutzer, die Dateien öffnen, die von Benutzern hochgeladen oder automatisch generiert wurden und Benutzereingaben enthalten, könnten kompromittiert werden.
|
|
|
|
* [ ] [**Datei-Upload**](file-upload/)
|
|
* [ ] [**Formel-Injection**](formula-csv-doc-latex-ghostscript-injection.md)
|
|
* [ ] [**PDF-Injection**](xss-cross-site-scripting/pdf-injection.md)
|
|
* [ ] [**Serverseitiges XSS**](xss-cross-site-scripting/server-side-xss-dynamic-pdf.md)
|
|
|
|
### **Externes Identitätsmanagement**
|
|
|
|
* [ ] [**OAUTH zur Übernahme von Konten**](oauth-to-account-takeover.md)
|
|
* [ ] [**SAML-Angriffe**](saml-attacks/)
|
|
|
|
### **Andere hilfreiche Schwachstellen**
|
|
|
|
Diese Schwachstellen können dazu beitragen, andere Schwachstellen auszunutzen.
|
|
|
|
* [ ] [**Domain/Subdomain-Übernahme**](domain-subdomain-takeover.md)
|
|
* [ ] [**IDOR**](idor.md)
|
|
* [ ] [**Parameter-Pollution**](parameter-pollution.md)
|
|
* [ ] [**Unicode-Normalisierungsschwachstelle**](unicode-injection/)
|
|
|
|
<details>
|
|
|
|
<summary><strong>Erlernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Weitere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks beworben sehen möchten** oder **HackTricks in PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merch**](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 einreichen.
|
|
|
|
</details>
|