AskJoe is a tool that utilizes OpenAI to assist researchers wanting to use Ghidra as their malware analysis tool. It was based on the Gepetto idea. With its capabilities, OpenAI highly simplifies the practice of reverse engineering, allowing researchers to better detect and mitigate threats.
The tool is free to use, under the limitations of Github.
Author: https://twitter.com/moval0x1 | Threat Researcher, Security Joes
- Ghidrathon added and removed pyhidra
- Refactored Code
- AI Triage added
- Better Name added
- Search for crypto constants added
- Mandiant CAPA added
- Search XORs
- Ask User Prompt (To OpenAI)
- askChoices added
- Explain selection added
- Config file added
- Execute all added
- Stack String added
- Rename function added
- Changed color from function renamed added
- Changed max_tokens
- Code refactored
- Explain function added
- Simplify code added
- Set OpenAI answer to comment added
- Monitor messages added
- requests:
pip install requests
- flare-capa:
pip install flare-capa
- openai:
pip install openai
- Ghidra
- Python3
- Ghidrathon
OpenAI has a hard limit of 4096 tokens for each API call, so if your text is longer than that, you'll need to split it up. However, OpenAI currently does not support stateful conversations over multiple API calls, which means it does not remember the previous API call.
By now, It only supports Linux OS.
Copy the AskJOE.py
, JOES.png
and AskJOE folder
.
Within any of the ghidra_scripts
folders.
Some functions were added in the AskJOE, but we did not create them. Let us give the proper credit.