hacktricks/pentesting-web/web-vulnerabilities-methodology.md

157 lines
8.7 KiB
Markdown

# Metodologija Web Ranljivosti
{% hint style="success" %}
Učite i vežbajte AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Učite i vežbajte GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Podržite HackTricks</summary>
* Proverite [**planove pretplate**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili **pratite** nas na **Twitteru** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Podelite hakerske trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
</details>
{% endhint %}
U svakom Web Pentestu, postoji **several hidden and obvious places that might be vulnerable**. Ovaj post je zamišljen kao kontrolna lista da potvrdite da ste tražili ranjivosti na svim mogućim mestima.
## Proksi
{% hint style="info" %}
Danas **web** **aplikacije** obično **koriste** neku vrstu **posredničkih** **proksija**, koje se mogu (zlo)upotrebljavati za eksploataciju ranjivosti. Ove ranjivosti zahtevaju da postoji ranjivi proksi, ali obično takođe zahtevaju neku dodatnu ranjivost u pozadini.
{% endhint %}
* [ ] [**Zloupotreba hop-by-hop zaglavlja**](abusing-hop-by-hop-headers.md)
* [ ] [**Cache Poisoning/Cache Deception**](cache-deception/)
* [ ] [**HTTP Request Smuggling**](http-request-smuggling/)
* [ ] [**H2C Smuggling**](h2c-smuggling.md)
* [ ] [**Server Side Inclusion/Edge Side Inclusion**](server-side-inclusion-edge-side-inclusion-injection.md)
* [ ] [**Otkrivanje Cloudflare-a**](../network-services-pentesting/pentesting-web/uncovering-cloudflare.md)
* [ ] [**XSLT Server Side Injection**](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
* [ ] [**Obilaženje Proxy / WAF zaštita**](proxy-waf-protections-bypass.md)
## **Korisnički unos**
{% hint style="info" %}
Većina web aplikacija će **dozvoliti korisnicima da unesu neke podatke koji će kasnije biti obrađeni.**\
U zavisnosti od strukture podataka koje server očekuje, neke ranjivosti mogu ili ne moraju da se primene.
{% endhint %}
### **Reflektovani vrednosti**
Ako se uneti podaci mogu na neki način odraziti u odgovoru, stranica može biti ranjiva na nekoliko problema.
* [ ] [**Client Side Template Injection**](client-side-template-injection-csti.md)
* [ ] [**Command Injection**](command-injection.md)
* [ ] [**CRLF**](crlf-0d-0a.md)
* [ ] [**Dangling Markup**](dangling-markup-html-scriptless-injection/)
* [ ] [**File Inclusion/Path Traversal**](file-inclusion/)
* [ ] [**Open Redirect**](open-redirect.md)
* [ ] [**Prototype Pollution to XSS**](deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss)
* [ ] [**Server Side Inclusion/Edge Side Inclusion**](server-side-inclusion-edge-side-inclusion-injection.md)
* [ ] [**Server Side Request Forgery**](ssrf-server-side-request-forgery/)
* [ ] [**Server Side Template Injection**](ssti-server-side-template-injection/)
* [ ] [**Reverse Tab Nabbing**](reverse-tab-nabbing.md)
* [ ] [**XSLT Server Side Injection**](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
* [ ] [**XSS**](xss-cross-site-scripting/)
* [ ] [**XSSI**](xssi-cross-site-script-inclusion.md)
* [ ] [**XS-Search**](xs-search/)
Neke od pomenutih ranjivosti zahtevaju posebne uslove, dok druge samo zahtevaju da se sadržaj odražava. Možete pronaći neke zanimljive poliglotove za brzo testiranje ranjivosti u:
{% content-ref url="pocs-and-polygloths-cheatsheet/" %}
[pocs-and-polygloths-cheatsheet](pocs-and-polygloths-cheatsheet/)
{% endcontent-ref %}
### **Funkcionalnosti pretrage**
Ako se funkcionalnost može koristiti za pretraživanje nekih podataka unutar pozadine, možda je možete (zlo)upotrebiti za pretraživanje proizvoljnih podataka.
* [ ] [**File Inclusion/Path Traversal**](file-inclusion/)
* [ ] [**NoSQL Injection**](nosql-injection.md)
* [ ] [**LDAP Injection**](ldap-injection.md)
* [ ] [**ReDoS**](regular-expression-denial-of-service-redos.md)
* [ ] [**SQL Injection**](sql-injection/)
* [ ] [**XPATH Injection**](xpath-injection.md)
### **Forme, WebSockets i PostMsgs**
Kada websocket pošalje poruku ili forma dozvoli korisnicima da izvrše radnje, mogu se pojaviti ranjivosti.
* [ ] [**Cross Site Request Forgery**](csrf-cross-site-request-forgery.md)
* [ ] [**Cross-site WebSocket hijacking (CSWSH)**](websocket-attacks.md)
* [ ] [**PostMessage ranjivosti**](postmessage-vulnerabilities/)
### **HTTP zaglavlja**
U zavisnosti od HTTP zaglavlja koje daje web server, neke ranjivosti mogu biti prisutne.
* [ ] [**Clickjacking**](clickjacking.md)
* [ ] [**Obilaženje Content Security Policy**](content-security-policy-csp-bypass/)
* [ ] [**Hacking kolačića**](hacking-with-cookies/)
* [ ] [**CORS - Pogrešne konfiguracije i obilaženje**](cors-bypass.md)
### **Obilaženja**
Postoji nekoliko specifičnih funkcionalnosti gde bi neka rešenja mogla biti korisna za obilaženje.
* [ ] [**Obilaženje 2FA/OTP**](2fa-bypass.md)
* [ ] [**Obilaženje procesa plaćanja**](bypass-payment-process.md)
* [ ] [**Obilaženje Captche**](captcha-bypass.md)
* [ ] [**Obilaženje prijave**](login-bypass/)
* [ ] [**Race Condition**](race-condition.md)
* [ ] [**Obilaženje ograničenja brzine**](rate-limit-bypass.md)
* [ ] [**Obilaženje resetovanja zaboravljene lozinke**](reset-password.md)
* [ ] [**Ranjivosti registracije**](registration-vulnerabilities.md)
### **Strukturirani objekti / Specifične funkcionalnosti**
Neke funkcionalnosti će zahtevati da **podaci budu strukturirani u vrlo specifičnom formatu** (kao što je jezik serijalizovanog objekta ili XML). Stoga je lakše identifikovati da li aplikacija može biti ranjiva jer mora obraditi tu vrstu podataka.\
Neke **specifične funkcionalnosti** takođe mogu biti ranjive ako se koristi **specifičan format unosa** (kao što su Email Header Injections).
* [ ] [**Deserialization**](deserialization/)
* [ ] [**Email Header Injection**](email-injections.md)
* [ ] [**JWT Ranjivosti**](hacking-jwt-json-web-tokens.md)
* [ ] [**XML Eksterna Entiteta**](xxe-xee-xml-external-entity.md)
### Fajlovi
Funkcionalnosti koje omogućavaju učitavanje fajlova mogu biti ranjive na nekoliko problema.\
Funkcionalnosti koje generišu fajlove uključujući korisnički unos mogu izvršiti neočekivani kod.\
Korisnici koji otvaraju fajlove koje su učitali drugi korisnici ili automatski generisani uključujući korisnički unos mogu biti kompromitovani.
* [ ] [**Učitavanje fajlova**](file-upload/)
* [ ] [**Formula Injection**](formula-csv-doc-latex-ghostscript-injection.md)
* [ ] [**PDF Injection**](xss-cross-site-scripting/pdf-injection.md)
* [ ] [**Server Side XSS**](xss-cross-site-scripting/server-side-xss-dynamic-pdf.md)
### **Eksterna upravljanje identitetom**
* [ ] [**OAUTH za preuzimanje naloga**](oauth-to-account-takeover.md)
* [ ] [**SAML napadi**](saml-attacks/)
### **Druge korisne ranjivosti**
Ove ranjivosti mogu pomoći u eksploataciji drugih ranjivosti.
* [ ] [**Preuzimanje domena/subdomena**](domain-subdomain-takeover.md)
* [ ] [**IDOR**](idor.md)
* [ ] [**Parameter Pollution**](parameter-pollution.md)
* [ ] [**Ranjivost Unicode Normalizacije**](unicode-injection/)
{% hint style="success" %}
Učite i vežbajte AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Učite i vežbajte GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Podržite HackTricks</summary>
* Proverite [**planove pretplate**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili **pratite** nas na **Twitteru** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Podelite hakerske trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
</details>
{% endhint %}