# Depuração do JS do Lado do Cliente
## Depuração do JS do Lado do Cliente
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** repositórios [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
Depurar o JS do lado do cliente pode ser complicado, pois toda vez que você altera a URL (incluindo uma alteração nos parâmetros usados ou nos valores dos parâmetros), você precisa **redefinir o ponto de interrupção e recarregar a página**.
### `debugger;`
Se você colocar a linha `debugger;` dentro de um arquivo JS, quando o **navegador** executa o JS, ele irá **parar** o **depurador** naquele local. Portanto, uma maneira de definir pontos de interrupção constantes seria **baixar todos os arquivos localmente e definir pontos de interrupção no código JS**.
### Substituições
As substituições do navegador permitem ter uma cópia local do código que será executado e executar essa cópia em vez daquela do servidor remoto.\
Você pode **acessar as substituições** em "Ferramentas de Desenvolvedor" --> "Fontes" --> "Substituições".
Você precisa **criar uma pasta local vazia para armazenar as substituições**, então basta criar uma nova pasta local e defini-la como substituição nessa página.
Em seguida, em "Ferramentas de Desenvolvedor" --> "Fontes" **selecione o arquivo** que deseja substituir e com o **botão direito selecione "Salvar para substituições"**.
![](<../../.gitbook/assets/image (649).png>)
Isso irá **copiar o arquivo JS localmente** e você poderá **modificar essa cópia no navegador**. Basta adicionar o comando **`debugger;`** onde desejar, **salvar** a alteração e **recarregar** a página, e toda vez que você acessar aquela página da web, **sua cópia local do JS será carregada** e seu comando de depuração mantido em seu lugar:
![](<../../.gitbook/assets/image (648).png>)
## Referências
* [https://www.youtube.com/watch?v=BW\_-RCo9lo8\&t=1529s](https://www.youtube.com/watch?v=BW\_-RCo9lo8\&t=1529s)
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Compartilhe seus truques de hacking enviando PRs para os** repositórios [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).