9.2 KiB
403 & 401 Bypasses
{% hint style="success" %}
Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos di github.
Setup disponibile immediatamente per valutazione delle vulnerabilità e penetration testing. Esegui un pentest completo da qualsiasi luogo con oltre 20 strumenti e funzionalità che vanno dalla ricognizione alla reportistica. Non sostituiamo i pentester - sviluppiamo strumenti personalizzati, moduli di rilevamento e sfruttamento per restituire loro del tempo per approfondire, aprire shell e divertirsi.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
HTTP Verbs/Methods Fuzzing
Prova a utilizzare verbi diversi per accedere al file: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK
- Controlla le intestazioni di risposta, forse alcune informazioni possono essere fornite. Ad esempio, una risposta 200 a HEAD con
Content-Length: 55
significa che il verbo HEAD può accedere alle informazioni. Ma devi comunque trovare un modo per esfiltrare quelle informazioni. - Utilizzare un'intestazione HTTP come
X-HTTP-Method-Override: PUT
può sovrascrivere il verbo utilizzato. - Usa il verbo
TRACE
e se sei molto fortunato, forse nella risposta puoi vedere anche le intestazioni aggiunte da proxy intermedi che potrebbero essere utili.
HTTP Headers Fuzzing
-
Cambia l'intestazione Host in un valore arbitrario (che ha funzionato qui)
-
Prova a usare altri User Agents per accedere alla risorsa.
-
Fuzz HTTP Headers: prova a utilizzare le intestazioni HTTP Proxy, l'autenticazione HTTP Basic e NTLM brute-force (con solo alcune combinazioni) e altre tecniche. Per fare tutto questo ho creato lo strumento fuzzhttpbypass.
-
X-Originating-IP: 127.0.0.1
-
X-Forwarded-For: 127.0.0.1
-
X-Forwarded: 127.0.0.1
-
Forwarded-For: 127.0.0.1
-
X-Remote-IP: 127.0.0.1
-
X-Remote-Addr: 127.0.0.1
-
X-ProxyUser-Ip: 127.0.0.1
-
X-Original-URL: 127.0.0.1
-
Client-IP: 127.0.0.1
-
True-Client-IP: 127.0.0.1
-
Cluster-Client-IP: 127.0.0.1
-
X-ProxyUser-Ip: 127.0.0.1
-
Host: localhost
Se il percorso è protetto, puoi provare a bypassare la protezione del percorso utilizzando queste altre intestazioni:
X-Original-URL: /admin/console
X-Rewrite-URL: /admin/console
- Se la pagina è dietro un proxy, forse è il proxy a impedirti di accedere alle informazioni private. Prova ad abusare di HTTP Request Smuggling o hop-by-hop headers.
- Fuzz intestazioni HTTP speciali cercando risposte diverse.
- Fuzz intestazioni HTTP speciali mentre fuzzing HTTP Methods.
- Rimuovi l'intestazione Host e forse sarai in grado di bypassare la protezione.
Path Fuzzing
Se /path è bloccato:
- Prova a utilizzare /%2e/path _(se l'accesso è bloccato da un proxy, questo potrebbe bypassare la protezione). Prova anche_** /%252e**/path (doppia codifica URL)
- Prova il bypass Unicode: /%ef%bc%8fpath (I caratteri codificati in URL sono come "/") quindi quando vengono ricodificati tornerà a essere //path e forse avrai già bypassato il controllo del nome /path
- Altri bypass di percorso:
- site.com/secret –> HTTP 403 Forbidden
- site.com/SECRET –> HTTP 200 OK
- site.com/secret/ –> HTTP 200 OK
- site.com/secret/. –> HTTP 200 OK
- site.com//secret// –> HTTP 200 OK
- site.com/./secret/.. –> HTTP 200 OK
- site.com/;/secret –> HTTP 200 OK
- site.com/.;/secret –> HTTP 200 OK
- site.com//;//secret –> HTTP 200 OK
- site.com/secret.json –> HTTP 200 OK (ruby)
- Usa tutta questa lista nelle seguenti situazioni:
- /FUZZsecret
- /FUZZ/secret
- /secretFUZZ
- Altri bypass API:
- /v3/users_data/1234 --> 403 Forbidden
- /v1/users_data/1234 --> 200 OK
- {“id”:111} --> 401 Unauthriozied
- {“id”:[111]} --> 200 OK
- {“id”:111} --> 401 Unauthriozied
- {“id”:{“id”:111}} --> 200 OK
- {"user_id":"<legit_id>","user_id":"<victims_id>"} (Inquinamento dei parametri JSON)
- user_id=ATTACKER_ID&user_id=VICTIM_ID (Inquinamento dei parametri)
Manipolazione dei Parametri
- Cambia il valore del parametro: Da
id=123
-->id=124
- Aggiungi parametri aggiuntivi all'URL:
?
id=124
—->id=124&isAdmin=true
- Rimuovi i parametri
- Riordina i parametri
- Usa caratteri speciali.
- Esegui test di confine nei parametri — fornisci valori come -234 o 0 o 99999999 (solo alcuni valori di esempio).
Versione del Protocollo
Se utilizzi HTTP/1.1 prova a usare 1.0 o anche a testare se supporta 2.0.
Altri Bypass
- Ottieni l'IP o il CNAME del dominio e prova a contattarlo direttamente.
- Prova a stressare il server inviando richieste GET comuni (Ha funzionato per questo ragazzo con Facebook).
- Cambia il protocollo: da http a https, o da https a http
- Vai su https://archive.org/web/ e controlla se in passato quel file era accessibile a livello mondiale.
Brute Force
- Indovina la password: Testa le seguenti credenziali comuni. Sai qualcosa sulla vittima? O il nome della sfida CTF?
- Brute force: Prova autenticazioni basic, digest e NTLM.
{% code title="Credenziali comuni" %}
admin admin
admin password
admin 1234
admin admin1234
admin 123456
root toor
test test
guest guest
{% endcode %}
Strumenti Automatici
- https://github.com/lobuhi/byp4xx
- https://github.com/iamj0ker/bypass-403
- https://github.com/gotr00t0day/forbiddenpass
- Burp Extension - 403 Bypasser
- Forbidden Buster
- NoMoreForbidden
Impostazione disponibile istantaneamente per la valutazione delle vulnerabilità e il pentesting. Esegui un pentest completo da qualsiasi luogo con oltre 20 strumenti e funzionalità che vanno dalla ricognizione alla reportistica. Non sostituiamo i pentester - sviluppiamo strumenti personalizzati, moduli di rilevamento e sfruttamento per restituire loro del tempo per approfondire, aprire shell e divertirsi.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
{% hint style="success" %}
Impara e pratica il Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos di github.