From 9f53735e34d7779e0fdfc71dc457843b105f3b3b Mon Sep 17 00:00:00 2001 From: Translator Date: Tue, 12 Nov 2024 10:22:20 +0000 Subject: [PATCH] Translated ['generic-methodologies-and-resources/python/bypass-python-sa --- .../python/bypass-python-sandboxes/README.md | 56 ++++++++++--------- pentesting-web/cors-bypass.md | 16 ++++-- .../url-format-bypass.md | 25 ++++++--- 3 files changed, 58 insertions(+), 39 deletions(-) diff --git a/generic-methodologies-and-resources/python/bypass-python-sandboxes/README.md b/generic-methodologies-and-resources/python/bypass-python-sandboxes/README.md index 1f7459aa7..b9ecb845c 100644 --- a/generic-methodologies-and-resources/python/bypass-python-sandboxes/README.md +++ b/generic-methodologies-and-resources/python/bypass-python-sandboxes/README.md @@ -15,7 +15,7 @@ Learn & practice GCP Hacking: 
 </details>
 {% endhint %}
 
-<figure><img src=
+
**Ottieni la prospettiva di un hacker sulle tue app web, rete e cloud** @@ -23,8 +23,6 @@ Learn & practice GCP Hacking: 
 
 {% embed url=
+
**Ottieni la prospettiva di un hacker sulle tue app web, rete e cloud** -**Trova e segnala vulnerabilità critiche ed esploitabili con un reale impatto sul business.** Usa i nostri oltre 20 strumenti personalizzati per mappare la superficie di attacco, trovare problemi di sicurezza che ti permettano di elevare i privilegi e utilizzare exploit automatizzati per raccogliere prove essenziali, trasformando il tuo duro lavoro in report persuasivi. +**Trova e segnala vulnerabilità critiche ed esploitabili con un reale impatto sul business.** Usa i nostri oltre 20 strumenti personalizzati per mappare la superficie di attacco, trovare problemi di sicurezza che ti consentono di elevare i privilegi e utilizzare exploit automatizzati per raccogliere prove essenziali, trasformando il tuo duro lavoro in report persuasivi. {% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %} {% hint style="success" %} -Impara e pratica Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ -Impara e pratica Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte) +Impara e pratica l'Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ +Impara e pratica l'Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
diff --git a/pentesting-web/cors-bypass.md b/pentesting-web/cors-bypass.md index 033306487..5038e6910 100644 --- a/pentesting-web/cors-bypass.md +++ b/pentesting-web/cors-bypass.md @@ -79,11 +79,11 @@ xhr.send('Arun'); ### Comprendere le Richieste di Pre-flight nella Comunicazione Cross-Domain -Quando si avvia una richiesta cross-domain in determinate condizioni, come l'uso di un **metodo HTTP non standard** (qualsiasi cosa diversa da HEAD, GET, POST), l'introduzione di **nuovi header** o l'impiego di un particolare **valore dell'header Content-Type**, potrebbe essere necessaria una richiesta di pre-flight. Questa richiesta preliminare, che sfrutta il metodo **`OPTIONS`**, serve a informare il server delle intenzioni della prossima richiesta cross-origin, inclusi i metodi HTTP e gli header che si intende utilizzare. +Quando si avvia una richiesta cross-domain in determinate condizioni, come l'uso di un **metodo HTTP non standard** (qualsiasi cosa diversa da HEAD, GET, POST), l'introduzione di **nuovi header**, o l'impiego di un particolare **valore dell'header Content-Type**, potrebbe essere necessaria una richiesta di pre-flight. Questa richiesta preliminare, che sfrutta il metodo **`OPTIONS`**, serve a informare il server delle intenzioni della prossima richiesta cross-origin, inclusi i metodi HTTP e gli header che si intende utilizzare. -Il protocollo **Cross-Origin Resource Sharing (CORS)** richiede questo controllo di pre-flight per determinare la fattibilità dell'operazione cross-origin richiesta verificando i metodi, gli header e l'affidabilità dell'origine consentiti. Per una comprensione dettagliata delle condizioni che eludono la necessità di una richiesta di pre-flight, fare riferimento alla guida completa fornita da [**Mozilla Developer Network (MDN)**](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#simple\_requests). +Il protocollo **Cross-Origin Resource Sharing (CORS)** richiede questo controllo di pre-flight per determinare la fattibilità dell'operazione cross-origin richiesta verificando i metodi e gli header consentiti, nonché l'affidabilità dell'origine. Per una comprensione dettagliata delle condizioni che eludono la necessità di una richiesta di pre-flight, fare riferimento alla guida completa fornita da [**Mozilla Developer Network (MDN)**](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#simple\_requests). -È fondamentale notare che **l'assenza di una richiesta di pre-flight non annulla il requisito che la risposta contenga header di autorizzazione**. Senza questi header, il browser è incapace di elaborare la risposta della richiesta cross-origin. +È fondamentale notare che **l'assenza di una richiesta di pre-flight non annulla l'obbligo che la risposta contenga header di autorizzazione**. Senza questi header, il browser è incapace di elaborare la risposta della richiesta cross-origin. Considera la seguente illustrazione di una richiesta di pre-flight mirata a utilizzare il metodo `PUT` insieme a un header personalizzato chiamato `Special-Request-Header`: ``` @@ -210,7 +210,7 @@ I modelli Regex si concentrano tipicamente su caratteri alfanumerici, punto (.) ### Da XSS all'interno di un sottodominio -Gli sviluppatori spesso implementano meccanismi difensivi per proteggere contro lo sfruttamento di CORS autorizzando i domini che possono richiedere informazioni. Nonostante queste precauzioni, la sicurezza del sistema non è infallibile. La presenza di anche un singolo sottodominio vulnerabile all'interno dei domini autorizzati può aprire la porta allo sfruttamento di CORS attraverso altre vulnerabilità, come XSS (Cross-Site Scripting). +Gli sviluppatori spesso implementano meccanismi difensivi per proteggere contro lo sfruttamento di CORS autorizzando i domini che possono richiedere informazioni. Nonostante queste precauzioni, la sicurezza del sistema non è infallibile. La presenza anche di un singolo sottodominio vulnerabile all'interno dei domini autorizzati può aprire la porta allo sfruttamento di CORS attraverso altre vulnerabilità, come XSS (Cross-Site Scripting). Per illustrare, consideriamo lo scenario in cui un dominio, `requester.com`, è autorizzato ad accedere alle risorse di un altro dominio, `provider.com`. La configurazione lato server potrebbe apparire in questo modo: ```javascript @@ -251,6 +251,12 @@ Cookie: Access-Control-Allow-Origin: https://target.application}.arbitrary.com Access-Control-Allow-Credentials: true ``` +### **Altri trucchi divertenti con URL** + +{% content-ref url="ssrf-server-side-request-forgery/url-format-bypass.md" %} +[url-format-bypass.md](ssrf-server-side-request-forgery/url-format-bypass.md) +{% endcontent-ref %} + ### **Avvelenamento della cache lato server** [**Da questa ricerca**](https://portswigger.net/research/exploiting-cors-misconfigurations-for-bitcoins-and-bounties) @@ -262,7 +268,7 @@ Considera la seguente richiesta in cui l'intestazione `Origin` è manipolata: GET / HTTP/1.1 Origin: z[0x0d]Content-Type: text/html; charset=UTF-7 ``` -Internet Explorer e Edge interpretano la risposta come: +Internet Explorer ed Edge interpretano la risposta come: ``` HTTP/1.1 200 OK Access-Control-Allow-Origin: z diff --git a/pentesting-web/ssrf-server-side-request-forgery/url-format-bypass.md b/pentesting-web/ssrf-server-side-request-forgery/url-format-bypass.md index 54e808422..d72c65f45 100644 --- a/pentesting-web/ssrf-server-side-request-forgery/url-format-bypass.md +++ b/pentesting-web/ssrf-server-side-request-forgery/url-format-bypass.md @@ -1,8 +1,8 @@ # URL Format Bypass {% hint style="success" %} -Impara e pratica il hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ -Impara e pratica il hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte) +Impara e pratica Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ +Impara e pratica Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
@@ -60,6 +60,10 @@ http://0xc0a80014/ = http://192.168.0.20 0x7f.0x00.0x00.0x01 0x0000007f.0x00000000.0x00000000.0x00000001 +# Mixed encodings bypass +169.254.43518 -> Partial Decimal (Class B) format combines the third and fourth parts of the IP address into a decimal number +0xA9.254.0251.0376 -> hexadecimal, decimal and octal + # Add 0s bypass 127.000000000000.1 @@ -152,7 +156,7 @@ http://1.1.1.1 &@2.2.2.2# @3.3.3.3/ #Parameter pollution next={domain}&next=attacker.com ``` -### Paths and Extensions Bypass +### Bypass di Percorsi ed Estensioni Se è richiesto che l'URL debba terminare con un percorso o un'estensione, o debba contenere un percorso, puoi provare uno dei seguenti bypass: ``` @@ -166,7 +170,9 @@ Lo strumento [**recollapse**](https://github.com/0xacb/recollapse) può generare ### Elenchi di parole personalizzati automatici -Dai un'occhiata al [**URL validation bypass cheat sheet** webapp](https://portswigger.net/web-security/ssrf/url-validation-bypass-cheat-sheet) di portswigger dove puoi inserire l'host consentito e quello degli attaccanti e genererà un elenco di URL da provare per te. Considera anche se puoi utilizzare l'URL in un parametro, in un'intestazione Host o in un'intestazione CORS. +Dai un'occhiata al [**URL validation bypass cheat sheet** webapp](https://portswigger.net/web-security/ssrf/url-validation-bypass-cheat-sheet) di portswigger dove puoi inserire l'host consentito e quello dell'attaccante e genererà un elenco di URL da provare per te. Considera anche se puoi utilizzare l'URL in un parametro, in un'intestazione Host o in un'intestazione CORS. + +{% embed url="https://portswigger.net/web-security/ssrf/url-validation-bypass-cheat-sheet" %} ### Bypass tramite reindirizzamento @@ -197,10 +203,14 @@ HTTPServer(("", int(sys.argv[1])), Redirect).serve_forever() ### Blackslash-trick -Il _backslash-trick_ sfrutta una differenza tra il [WHATWG URL Standard](https://url.spec.whatwg.org/#url-parsing) e [RFC3986](https://datatracker.ietf.org/doc/html/rfc3986#appendix-B). Mentre RFC3986 è un framework generale per gli URI, WHATWG è specifico per gli URL web ed è adottato dai browser moderni. La distinzione chiave risiede nel riconoscimento del backslash (`\`) da parte dello standard WHATWG come equivalente allo slash (`/`), influenzando il modo in cui gli URL vengono analizzati, segnando specificamente la transizione dal nome host al percorso in un URL. +Il _backslash-trick_ sfrutta una differenza tra il [WHATWG URL Standard](https://url.spec.whatwg.org/#url-parsing) e [RFC3986](https://datatracker.ietf.org/doc/html/rfc3986#appendix-B). Mentre RFC3986 è un framework generale per gli URI, WHATWG è specifico per gli URL web ed è adottato dai browser moderni. La distinzione chiave risiede nel riconoscimento del backslash (`\`) come equivalente alla barra obliqua (`/`) nello standard WHATWG, influenzando il modo in cui gli URL vengono analizzati, segnando specificamente la transizione dal nome host al percorso in un URL. ![https://bugs.xdavidhu.me/assets/posts/2021-12-30-fixing-the-unfixable-story-of-a-google-cloud-ssrf/spec\_difference.jpg](https://bugs.xdavidhu.me/assets/posts/2021-12-30-fixing-the-unfixable-story-of-a-google-cloud-ssrf/spec\_difference.jpg) +### Parentesi quadra sinistra + +Il carattere “parentesi quadra sinistra” `[` nel segmento userinfo può causare a UriComponentsBuilder di Spring di restituire un valore di nome host che differisce dai browser: [https://example.com\[@attacker.com](https://portswigger.net/url-cheat-sheet#id=1da2f627d702248b9e61cc23912d2c729e52f878) + ### Altre Confusioni ![https://claroty.com/2022/01/10/blog-research-exploiting-url-parsing-confusion/](<../../.gitbook/assets/image (600).png>) @@ -211,10 +221,11 @@ immagine da [https://claroty.com/2022/01/10/blog-research-exploiting-url-parsing * [https://as745591.medium.com/albussec-penetration-list-08-server-side-request-forgery-ssrf-sample-90267f095d25](https://as745591.medium.com/albussec-penetration-list-08-server-side-request-forgery-ssrf-sample-90267f095d25) * [https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Server%20Side%20Request%20Forgery/README.md](https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Server%20Side%20Request%20Forgery/README.md) +* [https://portswigger.net/research/new-crazy-payloads-in-the-url-validation-bypass-cheat-sheet](https://portswigger.net/research/new-crazy-payloads-in-the-url-validation-bypass-cheat-sheet) {% hint style="success" %} -Impara e pratica Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ -Impara e pratica Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte) +Impara e pratica il Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ +Impara e pratica il Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)