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

5 KiB

Depuração de JS do lado do cliente

Depuração de JS do lado do cliente

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

Depurar o JS do lado do cliente pode ser uma dor de cabeça porque 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 executar o JS, ele irá parar o depurador naquele lugar. 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 da do servidor remoto.
Você pode acessar as substituições em "Dev Tools" --> "Sources" --> "Overrides".

Você precisa criar uma pasta local vazia para ser usada 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 "Dev Tools" --> "Sources" selecione o arquivo que você deseja substituir e com clique com o botão direito do mouse em "Salvar para substituições".

Isso irá copiar o arquivo JS localmente e você poderá modificar essa cópia no navegador. Basta adicionar o comando debugger; onde quiser, salvar a alteração e recarregar a página, e toda vez que você acessar essa página da web, sua cópia JS local será carregada e seu comando de depuração mantido em seu lugar:

Referências

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥