BinaryAI is a Neural Search Engine for binaries developed by Tencent Security KEEN Lab, aiming to help security researchers match the most similar source codes in a custom scope in a given binary.
BinaryAI provides three ways to access core APIs of BinaryAI Search Engine framework.
-
Python SDK
BinaryAI provides users with the ability to write custom tools to analyze binaries. Please refer to BinaryAI SDK Reference.
-
IDA plugin
BinaryAI provides an IDA plugin to assist reverse engineering analysis with the IDA Pro user interface. The IDA Pro plugin enables users to apply BinaryAI retrieval results from source codes of millions of functions in the cloud or any custom scope for retrieval to the file loaded in IDA Pro with a few clicks.
-
Command line tool
The command line tool now facilitates users with easy access to upload or match all functions in a binary file.
The newly released version now provides users with a website binaryai.tencent.com, making it easier to configure their retrieve lists and manage their function sets according to the needs of particular analyses. We have created some function sets for you to start. Check it out in the Explore page.
We look forward to bringing the reverse engineering community together, by building the platform for security engineers to share useful function sets in the process of reverse engineering with the help of BinaryAI.
pip install --upgrade binaryai
# then you can add the binaryai plugin into $IDAUSR
binaryai install_ida_plugin
A token is all you need to join BinaryAI Community, please apply for it here.
Please see the Documentation for more details.
Order Matters: Semantic-Aware Neural Networksfor Binary Code Similarity Detection
CodeCMR: Cross-Modal Retrieval For Function-Level Binary Source Code Matching