A Agência Nacional de Segurança dos Estados Unidos (NSA) divulgou ontem o GHIDRA versão 9.0 gratuitamente — a secreta ferramenta para reverse engineering que os investigadores da agência usam internamente há mais de uma década para “caçar” bugs de segurança em softwares e aplicações.
GHIDRA é uma estrutura de engenharia reversa baseada em Java que apresenta uma interface gráfica (GUI) e foi projetada para ser executada em uma grande variedade de plataformas, incluindo Windows, macOS e Linux.
A engenharia reversa de um programa ou software envolve o disassembling, ou seja, a conversão de instruções binárias em código assembly quando o código-fonte não está disponível, ajudando engenheiros de software, especialmente analistas de malware, a entender algumas das funcionalidades do código e as informações reais de design e implementação.
A existência do GHIDRA foi revelada publicamente pela primeira vez pelo WikiLeaks nos leaks da CIA Vault 7.
Agora a NSA divulgou publicamente a ferramenta na conferência da RSA, tornando-a uma ótima alternativa para ferramentas de engenharia reversa como IDA-Pro, Radare, Capstone e Hopper.
“It [GHIDRA] helps analyze malicious code and malware like viruses, and can give cybersecurity professionals a better understanding of potential vulnerabilities in their networks and systems,” NSA official website says while describing GHIDRA.
Download GHIDRA — Software Reverse Engineering Tool
- Github — source code (will be available soon)
- Download GHIDRA 9.0 — software package, slides, and exercises
- Installation Guide — basic usage documentation
- Cheat Sheet — keyboard shortcuts
- Issue Tracker — report bugs
Speaking at RSA Conference, Senior NSA Adviser Robert Joyce assures GHIDRA contains no backdoor, saying “This is the last community you want to release something out to with a backdoor installed, to people who hunt for this stuff to tear apart.“
Joyce também disse que a GHIDRA inclui todos os recursos esperados nas ferramentas comerciais high-end, suporta uma variedade de conjuntos de instruções do processador, formato executável e pode ser executado em ambos os modos user-interactive and automated mode.
Ghidra processor modules: X86 16/32/64, ARM/AARCH64, PowerPC 32/64, VLE, MIPS 16/32/64,micro, 68xxx, Java / DEX bytecode, PA-RISC, PIC 12/16/17/18/24, Sparc 32/64, CR16C, Z80, 6502, 8051, MSP430, AVR8, AVR32, Others+ variants as well. Power users can expand by defining new ones
— Rob Joyce (@RGB_Lights) March 5, 2019
GHIDRA recebeu calorosas boas-vindas da comunidade infosec, e investigadores e developers já começaram a contribuir para o projeto reportando bugs e falhas de segurança no issue tracker da ferramenta no Github.
Hickey notou que a tool abre a porta de debug JDWP 18001 para todas as interfaces quando um utilizador inicia o GHIDRA no modo de debug, permitindo que qualquer pessoa dentro da rede execute remotamente código arbitrário no sistema do analista.
Embora o modo de debug não esteja ativado por padrão e deva funcionar como esperado, o software deve receber apenas as conexões de debug do host local, em vez de qualquer outra máquina na rede.
O problema pode ser corrigido apenas mudando uma linha de código no software, de acordo com Hickey.
Pedro Tavares is a professional in the field of information security working as an Ethical Hacker/Pentester, Malware Researcher and also a Security Evangelist. He is also a founding member at CSIRT.UBI and Editor-in-Chief of the security computer blog seguranca-informatica.pt.
In recent years he has invested in the field of information security, exploring and analyzing a wide range of topics, such as pentesting (Kali Linux), malware, exploitation, hacking, IoT and security in Active Directory networks. He is also Freelance Writer (Infosec. Resources Institute and Cyber Defense Magazine) and developer of the 0xSI_f33d – a feed that compiles phishing and malware campaigns targeting Portuguese citizens.
Read more here.