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

59 lines
5.4 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" %}
Μάθετε & εξασκηθείτε στο 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">\
Μάθετε & εξασκηθείτε στο 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>Support HackTricks</summary>
2024-01-01 17:15:42 +00:00
* Ελέγξτε τα [**σχέδια συνδρομής**](https://github.com/sponsors/carlospolop)!
* **Εγγραφείτε στην** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στην [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
Η αποσφαλμάτωση του client side JS μπορεί να είναι δύσκολη, διότι κάθε φορά που αλλάζετε τη διεύθυνση URL (συμπεριλαμβανομένων των αλλαγών στις παραμέτρους ή τις τιμές παραμέτρων) πρέπει να **επαναφέρετε το breakpoint και να ανανεώσετε τη σελίδα**.
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
Αν τοποθετήσετε τη γραμμή `debugger;` μέσα σε ένα αρχείο JS, όταν ο **περιηγητής** εκτελεί το JS θα **σταματήσει** τον **αποσφαλματωτή** σε εκείνο το σημείο. Επομένως, ένας τρόπος για να ορίσετε σταθερά breakpoints θα ήταν να **κατεβάσετε όλα τα αρχεία τοπικά και να αλλάξετε τα breakpoints στον κώδικα JS**.
2022-04-25 12:04:04 +00:00
### Overrides
2022-04-25 12:04:04 +00:00
Οι παρακάμψεις του περιηγητή επιτρέπουν να έχετε μια τοπική αντίγραφο του κώδικα που πρόκειται να εκτελεστεί και να εκτελέσετε αυτό αντί για αυτό από τον απομακρυσμένο διακομιστή.\
Μπορείτε να **πρόσβαση στις παρακάμψεις** στο "Dev Tools" --> "Sources" --> "Overrides".
2022-04-25 12:04:04 +00:00
Πρέπει να **δημιουργήσετε έναν τοπικό κενό φάκελο για να χρησιμοποιηθεί για την αποθήκευση των παρακάμψεων**, οπότε απλά δημιουργήστε έναν νέο τοπικό φάκελο και ορίστε τον ως παράκαμψη σε αυτή τη σελίδα.
2022-04-25 12:04:04 +00:00
Στη συνέχεια, στο "Dev Tools" --> "Sources" **επιλέξτε το αρχείο** που θέλετε να παρακάμψετε και με **δεξί κλικ επιλέξτε "Save for overrides"**.
2022-04-25 12:04:04 +00:00
![](<../../.gitbook/assets/image (742).png>)
2022-04-25 12:04:04 +00:00
Αυτό θα **αντιγράψει το αρχείο JS τοπικά** και θα μπορείτε να **τροποποιήσετε αυτή την αντίγραφο στον περιηγητή**. Έτσι, απλά προσθέστε την εντολή **`debugger;`** όπου θέλετε, **αποθηκεύστε** την αλλαγή και **ανανεώστε** τη σελίδα, και κάθε φορά που αποκτάτε πρόσβαση σε αυτή τη διαδικτυακή σελίδα **η τοπική σας αντίγραφο JS θα φορτωθεί** και η εντολή αποσφαλμάτωσης θα διατηρηθεί στη θέση της:
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" %}
Μάθετε & εξασκηθείτε στο 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">\
Μάθετε & εξασκηθείτε στο 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>Support HackTricks</summary>
2024-01-01 17:15:42 +00:00
* Ελέγξτε τα [**σχέδια συνδρομής**](https://github.com/sponsors/carlospolop)!
* **Εγγραφείτε στην** 💬 [**ομάδα Discord**](https://discord.gg/hRep4RUj7f) ή στην [**ομάδα telegram**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}