hacktricks/pentesting-web/xss-cross-site-scripting/debugging-client-side-js.md

59 lines
3.9 KiB
Markdown
Raw Normal View History

# Debugging Client Side JS
2022-04-28 16:01:33 +00:00
## Debugging Client Side JS
2022-05-01 13:25:53 +00:00
{% hint style="success" %}
Impara e pratica 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">\
Impara e pratica 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)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Supporta HackTricks</summary>
2024-01-01 17:15:42 +00:00
* Controlla i [**piani di abbonamento**](https://github.com/sponsors/carlospolop)!
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Condividi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos su github.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
Il debugging del JS lato client può essere un problema perché ogni volta che cambi l'URL (incluso un cambiamento nei parametri utilizzati o nei valori dei parametri) devi **ripristinare il breakpoint e ricaricare la pagina**.
2022-04-25 12:04:04 +00:00
2022-05-01 13:25:53 +00:00
### `debugger;`
2022-04-25 12:04:04 +00:00
Se posizioni la riga `debugger;` all'interno di un file JS, quando il **browser** esegue il JS si **fermerà** nel **debugger** in quel punto. Pertanto, un modo per impostare breakpoint costanti sarebbe **scaricare tutti i file localmente e impostare breakpoint nel codice JS**.
2022-04-25 12:04:04 +00:00
### Overrides
2022-04-25 12:04:04 +00:00
Le sovrascritture del browser consentono di avere una copia locale del codice che verrà eseguito e di eseguire quella invece di quella del server remoto.\
Puoi **accedere alle sovrascritture** in "Dev Tools" --> "Sources" --> "Overrides".
2022-04-25 12:04:04 +00:00
Devi **creare una cartella locale vuota da utilizzare per memorizzare le sovrascritture**, quindi crea semplicemente una nuova cartella locale e impostala come sovrascrittura in quella pagina.
2022-04-25 12:04:04 +00:00
Poi, in "Dev Tools" --> "Sources" **seleziona il file** che vuoi sovrascrivere e con **clic destro seleziona "Save for overrides"**.
2022-04-25 12:04:04 +00:00
![](<../../.gitbook/assets/image (742).png>)
2022-04-25 12:04:04 +00:00
Questo **copia il file JS localmente** e sarai in grado di **modificare quella copia nel browser**. Quindi aggiungi semplicemente il comando **`debugger;`** dove vuoi, **salva** la modifica e **ricarica** la pagina, e ogni volta che accedi a quella pagina web **la tua copia locale di JS verrà caricata** e il tuo comando debugger mantenuto al suo posto:
2022-04-25 12:04:04 +00:00
![](<../../.gitbook/assets/image (594).png>)
2022-04-25 12:04:04 +00:00
## References
2022-04-25 12:04:04 +00:00
* [https://www.youtube.com/watch?v=BW\_-RCo9lo8\&t=1529s](https://www.youtube.com/watch?v=BW\_-RCo9lo8\&t=1529s)
2022-04-28 16:01:33 +00:00
{% hint style="success" %}
Impara e pratica 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">\
Impara e pratica 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)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Supporta HackTricks</summary>
2024-01-01 17:15:42 +00:00
* Controlla i [**piani di abbonamento**](https://github.com/sponsors/carlospolop)!
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Condividi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos su github.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}