From a2ee2592ef55e7f0fad069ff72894a5a1e597549 Mon Sep 17 00:00:00 2001 From: Translator Date: Fri, 27 Sep 2024 11:28:24 +0000 Subject: [PATCH] Translated ['network-services-pentesting/pentesting-web/code-review-tool --- .../pentesting-web/code-review-tools.md | 62 ++++++++++--------- 1 file changed, 33 insertions(+), 29 deletions(-) diff --git a/network-services-pentesting/pentesting-web/code-review-tools.md b/network-services-pentesting/pentesting-web/code-review-tools.md index 06f295ea5..019b4253b 100644 --- a/network-services-pentesting/pentesting-web/code-review-tools.md +++ b/network-services-pentesting/pentesting-web/code-review-tools.md @@ -1,8 +1,8 @@ # Revisão de Código Fonte / Ferramentas SAST {% hint style="success" %} -Aprenda e pratique Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ -Aprenda e pratique Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte) +Aprenda e pratique Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ +Aprenda e pratique Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
@@ -10,7 +10,7 @@ Aprenda e pratique Hacking GCP: {% endhint %} @@ -20,7 +20,7 @@ Aprenda e pratique Hacking GCP: ``` -### [**DeepSource**](https://deepsource.com/pricing) +### [**DeepSource**](https://deepsource.com/pricing) Gratuito para **repositórios públicos**. @@ -281,7 +281,10 @@ Gratuito para **repositórios públicos**. brew install yarn # Run cd /path/to/repo -yarn audit +yarn install +yarn audit # In lower versions +yarn npm audit # In 2+ versions + npm audit ``` * **`pnpm`** @@ -290,6 +293,7 @@ npm audit npm install -g pnpm # Run cd /path/to/repo +pnpm install pnpm audit ``` * [**nodejsscan**](https://github.com/ajinabraham/nodejsscan)**:** Scanner de código de segurança estático (SAST) para aplicações Node.js alimentado por [libsast](https://github.com/ajinabraham/libsast) e [semgrep](https://github.com/returntocorp/semgrep). @@ -321,7 +325,7 @@ pip3 install bandit # Run bandit -r ``` -* [**safety**](https://github.com/pyupio/safety): O Safety verifica as dependências do Python em busca de vulnerabilidades de segurança conhecidas e sugere as remediações adequadas para as vulnerabilidades detectadas. O Safety pode ser executado em máquinas de desenvolvedores, em pipelines de CI/CD e em sistemas de produção. +* [**safety**](https://github.com/pyupio/safety): Safety verifica as dependências do Python em busca de vulnerabilidades de segurança conhecidas e sugere as remediações adequadas para as vulnerabilidades detectadas. Safety pode ser executado em máquinas de desenvolvedores, em pipelines de CI/CD e em sistemas de produção. ```bash # Install pip install safety @@ -368,7 +372,7 @@ jar cmvf META-INF/MANIFEST.MF test.jar test.class | Base64 SHA256 | sha256sum \[arquivo] \| cut -d' ' -f1 \| xxd -r -p \| base64 | | Remover Assinatura| rm META-INF/_.SF META-INF/_.RSA META-INF/\*.DSA | | Deletar do Jar | zip -d \[jar] \[arquivo a remover] | -| Descompilar classe| procyon -o . \[caminho para a classe] | +| Descompilar classe| procyon -o . \[caminho para a classe] | | Descompilar Jar | procyon -jar \[jar] -o \[diretório de saída] | | Compilar classe | javac \[caminho para o arquivo .java] | @@ -397,7 +401,7 @@ https://github.com/securego/gosec * Sitemap > filtro * Sitemap > clique com o botão direito no domínio > Ferramentas de engajamento > Encontrar scripts 2. [WaybackURLs](https://github.com/tomnomnom/waybackurls): -* `waybackurls |grep -i "\.js" |sort -u` +* `waybackurls |grep -i "\.js" |sort -u` ### Análise Estática @@ -423,17 +427,17 @@ https://github.com/securego/gosec * Dicas: * Se estiver usando jsnice.org, clique no botão de opções ao lado do botão "Nicify JavaScript" e desmarque "Infer types" para reduzir a desordem no código com comentários. * Certifique-se de não deixar linhas em branco antes do script, pois isso pode afetar o processo de deobfuscação e dar resultados imprecisos. -4. Para algumas alternativas mais modernas ao JSNice, você pode querer olhar para as seguintes: +3. Para algumas alternativas mais modernas ao JSNice, você pode querer olhar para as seguintes: + * [https://github.com/pionxzh/wakaru](https://github.com/pionxzh/wakaru) -* > Ferramenta de descompilação, desempacotamento e desminificação de Javascript -> Wakaru é o descompilador de Javascript para frontend moderno. Ele traz de volta o código original de uma fonte empacotada e transpilada. +* > Ferramenta de descompilação, desempacotamento e desminimização de Javascript Wakaru é o descompilador de Javascript para frontend moderno. Ele recupera o código original de uma fonte empacotada e transpilada. * [https://github.com/j4k0xb/webcrack](https://github.com/j4k0xb/webcrack) -* > Deobfuscar obfuscator.io, desminificar e desempacotar javascript empacotado +* > Deobfuscar obfuscator.io, desminimizar e desempacotar javascript empacotado * [https://github.com/jehna/humanify](https://github.com/jehna/humanify) -* > Desminificar código Javascript usando ChatGPT -> Esta ferramenta usa grandes modelos de linguagem (como ChatGPT e llama2) e outras ferramentas para desminificar código Javascript. Note que LLMs não realizam alterações estruturais – eles apenas fornecem dicas para renomear variáveis e funções. O trabalho pesado é feito pelo Babel no nível AST para garantir que o código permaneça equivalente 1-1. +* > Desminimizar código Javascript usando ChatGPT Esta ferramenta usa grandes modelos de linguagem (como ChatGPT e llama2) e outras ferramentas para desminimizar código Javascript. Observe que os LLMs não realizam alterações estruturais – eles apenas fornecem dicas para renomear variáveis e funções. O trabalho pesado é feito pelo Babel no nível AST para garantir que o código permaneça equivalente 1-1. * [https://thejunkland.com/blog/using-llms-to-reverse-javascript-minification.html](https://thejunkland.com/blog/using-llms-to-reverse-javascript-minification.html) -* > Usando LLMs para reverter a minificação de nomes de variáveis JavaScript +* > Usando LLMs para reverter a minimização de nomes de variáveis JavaScript + 3. Use `console.log()`; * Encontre o valor de retorno no final e mude para `console.log();` para que o js deobfuscado seja impresso em vez de ser executado. * Em seguida, cole o js modificado (e ainda ofuscado) em [https://jsconsole.com/](https://jsconsole.com/) para ver o js deobfuscado registrado no console. @@ -442,12 +446,12 @@ https://github.com/securego/gosec #### Referências -* [YouTube: DAST - Javascript Dynamic Analysis](https://www.youtube.com/watch?v=_v8r_t4v6hQ) +* [YouTube: DAST - Javascript Dynamic Analysis](https://www.youtube.com/watch?v=\_v8r\_t4v6hQ) * [https://blog.nvisium.com/angular-for-pentesters-part-1](https://web.archive.org/web/20221226054137/https://blog.nvisium.com/angular-for-pentesters-part-1) * [https://blog.nvisium.com/angular-for-pentesters-part-2](https://web.archive.org/web/20230204012439/https://blog.nvisium.com/angular-for-pentesters-part-2) -* [devalias](https://twitter.com/_devalias)'s [GitHub Gists](https://gist.github.com/0xdevalias): -* [Deobfuscating / Unminifying Obfuscated Web App Code](https://gist.github.com/0xdevalias/d8b743efb82c0e9406fc69da0d6c6581#deobfuscating--unminifying-obfuscated-web-app-code) -* [Reverse Engineering Webpack Apps](https://gist.github.com/0xdevalias/8c621c5d09d780b1d321bfdb86d67cdd#reverse-engineering-webpack-apps) +* [devalias](https://twitter.com/\_devalias)'s [GitHub Gists](https://gist.github.com/0xdevalias): +* [Deobfuscando / Desminimizando Código de Aplicativos Web Ofuscados](https://gist.github.com/0xdevalias/d8b743efb82c0e9406fc69da0d6c6581#deobfuscating--unminifying-obfuscated-web-app-code) +* [Engenharia Reversa de Aplicativos Webpack](https://gist.github.com/0xdevalias/8c621c5d09d780b1d321bfdb86d67cdd#reverse-engineering-webpack-apps) * [etc](https://gist.github.com/search?q=user:0xdevalias+javascript) #### Ferramentas @@ -462,15 +466,15 @@ https://github.com/securego/gosec * [https://github.com/jshint/jshint/](https://github.com/jshint/jshint/) {% hint style="success" %} -Aprenda e pratique Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ -Aprenda e pratique Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte) +Aprenda e pratique Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ +Aprenda e pratique Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks * Confira os [**planos de assinatura**](https://github.com/sponsors/carlospolop)! -* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** +* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga**-nos no **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Compartilhe truques de hacking enviando PRs para o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.