<summary><strong>Aprenda hacking AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você quiser ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira 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** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
Você também pode usar a [**extensão semgrep para o VSCode**](https://marketplace.visualstudio.com/items?itemName=Semgrep.semgrep) para obter os resultados dentro do VSCode.
Existe uma **versão gratuita instalável**, mas de acordo com a licença, você só pode **usar a versão gratuita do CodeQL em projetos de Código Aberto**.
A primeira coisa que você precisa fazer é **preparar o banco de dados** (criar a árvore de código) para que posteriormente as consultas sejam executadas sobre ele.
Isso **geralmente irá disparar um erro** dizendo que mais de um idioma foi especificado (ou detectado automaticamente). **Verifique as próximas opções** para corrigir isso!
* Você pode fazer isso **indicando manualmente** o **repositório** e o **idioma** ([lista de idiomas](https://docs.github.com/en/code-security/codeql-cli/getting-started-with-the-codeql-cli/preparing-your-code-for-codeql-analysis#running-codeql-database-create))
* Você também pode permitir que o `codeql`**identifique todos os idiomas** para você e crie um BD por idioma. Você precisa fornecer um **GITHUB\_TOKEN**.
Você pode visualizar as descobertas em [**https://microsoft.github.io/sarif-web-component/**](https://microsoft.github.io/sarif-web-component/) ou usando a extensão do VSCode [**SARIF viewer**](https://marketplace.visualstudio.com/items?itemName=MS-SarifVSCode.sarif-viewer).
Você também pode usar a [**extensão do VSCode**](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-codeql) para obter as descobertas dentro do VSCode. Ainda será necessário criar um banco de dados manualmente, mas depois você pode selecionar qualquer arquivo e clicar em `Botão Direito` -> `CodeQL: Executar Consultas nos Arquivos Selecionados`
Você também pode usar a [**extensão do Snyk para o VSCode**](https://marketplace.visualstudio.com/items?itemName=snyk-security.snyk-vulnerability-scanner) para obter descobertas dentro do VSCode.
* [**nodejsscan**](https://github.com/ajinabraham/nodejsscan)**:** Ferramenta de análise estática de código de segurança (SAST) para aplicações Node.js alimentada por [libsast](https://github.com/ajinabraham/libsast) e [semgrep](https://github.com/returntocorp/semgrep).
* [**RetireJS**](https://github.com/RetireJS/retire.js)**:** O objetivo do Retire.js é ajudá-lo a detectar o uso de versões de bibliotecas JS com vulnerabilidades conhecidas.
* [**electronegativity**](https://github.com/doyensec/electronegativity)**:** É uma ferramenta para identificar configurações incorretas e padrões de segurança em aplicações baseadas em Electron.
* [**Bandit**](https://github.com/PyCQA/bandit)**:** Bandit é uma ferramenta projetada para encontrar problemas de segurança comuns em código Python. Para fazer isso, o Bandit processa cada arquivo, constrói uma AST a partir dele e executa plugins apropriados contra os nós da AST. Uma vez que o Bandit tenha terminado de escanear todos os arquivos, ele gera um relatório.
* [**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 correções apropriadas para as vulnerabilidades detectadas. O safety pode ser executado em máquinas de desenvolvimento, em pipelines CI/CD e em sistemas de produção.
Java is a widely used programming language for building web applications. It is important to review Java code for security vulnerabilities. Here are some tools that can help with Java code review:
FindBugs is a static analysis tool that can help identify bugs and security vulnerabilities in Java code. It can be integrated into the build process to automatically scan code for issues.
PMD is another static analysis tool for Java code. It can help identify common programming flaws and potential security vulnerabilities. PMD can also be integrated into the build process for automated code review.
Checkstyle is a tool that enforces coding standards in Java code. It can help ensure that code is written consistently and follows best practices. Checkstyle can be customized to enforce specific security guidelines as well.
### SonarQube
SonarQube is a popular code review tool that supports multiple programming languages, including Java. It provides detailed reports on code quality, security vulnerabilities, and more. SonarQube can be integrated into the development workflow for continuous code analysis.
[Psalm](https://phpmagazine.net/2018/12/find-errors-in-your-php-applications-with-psalm.html) e [PHPStan](https://phpmagazine.net/2020/09/phpstan-pro-edition-launched.html).
* 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.
* Garanta que não haja linhas vazias antes do script, pois isso pode afetar o processo de desofuscação e fornecer resultados imprecisos.
* Encontre o valor de retorno no final e altere para `console.log(<variávelDeRetornoDoPacker>);` para que o js desofuscado seja impresso em vez de ser executado.
* Em seguida, cole o js modificado (ainda ofuscado) em https://jsconsole.com/ para ver o js desofuscado registrado no console.
* Por fim, cole a saída desofuscada em https://prettier.io/playground/ para embelezá-la para análise.
* **Nota**: Se ainda estiver vendo js empacotado (mas diferente), pode estar empacotado de forma recursiva. Repita o processo.
<summary><strong>Aprenda hacking AWS do zero ao herói com</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira 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 o** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.