# Налагодження клієнтського JS
## Налагодження клієнтського JS
{% hint style="success" %}
Вивчайте та практикуйте AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Вивчайте та практикуйте GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Підтримайте HackTricks
* Перевірте [**плани підписки**](https://github.com/sponsors/carlospolop)!
* **Приєднуйтесь до** 💬 [**групи Discord**](https://discord.gg/hRep4RUj7f) або [**групи Telegram**](https://t.me/peass) або **слідкуйте** за нами в **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Діліться хакерськими трюками, надсилаючи PR до** [**HackTricks**](https://github.com/carlospolop/hacktricks) та [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) репозиторіїв на GitHub.
{% endhint %}
Налагодження клієнтського JS може бути складним, оскільки щоразу, коли ви змінюєте URL (включаючи зміну параметрів або значень параметрів), вам потрібно **скинути точку зупинки та перезавантажити сторінку**.
### `debugger;`
Якщо ви вставите рядок `debugger;` у файл JS, коли **браузер** виконує JS, він **зупинить** **налагоджувач** у цьому місці. Отже, один зі способів встановити постійні точки зупинки - це **завантажити всі файли локально та змінити точки зупинки в коді JS**.
### Переопрацювання
Переопрацювання браузера дозволяє мати локальну копію коду, який буде виконуватись, і виконувати цю копію замість тієї, що з віддаленого сервера.\
Ви можете **доступитися до переопрацювань** у "Dev Tools" --> "Sources" --> "Overrides".
Вам потрібно **створити локальну порожню папку для зберігання переопрацювань**, тому просто створіть нову локальну папку та встановіть її як переопрацювання на цій сторінці.
Потім, у "Dev Tools" --> "Sources" **виберіть файл**, який ви хочете переопрацювати, і **правою кнопкою миші виберіть "Save for overrides"**.
![](<../../.gitbook/assets/image (742).png>)
Це **скопіює файл JS локально**, і ви зможете **модифікувати цю копію в браузері**. Тож просто додайте команду **`debugger;`** туди, де хочете, **збережіть** зміни та **перезавантажте** сторінку, і щоразу, коли ви отримуєте доступ до цієї веб-сторінки, **ваша локальна копія JS буде завантажена**, а ваша команда налагодження залишиться на місці:
![](<../../.gitbook/assets/image (594).png>)
## Посилання
* [https://www.youtube.com/watch?v=BW\_-RCo9lo8\&t=1529s](https://www.youtube.com/watch?v=BW\_-RCo9lo8\&t=1529s)
{% hint style="success" %}
Вивчайте та практикуйте AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Вивчайте та практикуйте GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Підтримайте HackTricks
* Перевірте [**плани підписки**](https://github.com/sponsors/carlospolop)!
* **Приєднуйтесь до** 💬 [**групи Discord**](https://discord.gg/hRep4RUj7f) або [**групи Telegram**](https://t.me/peass) або **слідкуйте** за нами в **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Діліться хакерськими трюками, надсилаючи PR до** [**HackTricks**](https://github.com/carlospolop/hacktricks) та [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) репозиторіїв на GitHub.
{% endhint %}