IDA-Fusion is an ULTRA Fast Signature scanner & creator for IDA7 & IDA8+ using GCC.
This project was written due to the lack of stable and working signature scanners/creators available for IDA as a whole, Many of these projects are filled with bugs and create signatures that are not guaranteed to be unique. They are slow and tend to have trouble generating signatures in binaries where parts of the binary have been duplicated to prevent reverse engineering and reliable signature creation.
Some of the highlights of IDA-Fusion project:
- Uses GCC
- Very efficient creation and search algorithms.
- Signatures are guaranteed to be unique while delivering minimal size.
- Search for signatures quickly through large binaries.
- The ability to search using IDA & Code signatures.
- Auto jump to signatures found in a binary.
- Created signatures are automatically copied to the clipboard.
- Minimal bloat to increase productivity and speed when using IDA-Fusion.
IDA-Fusion works by wild-carding any operand that contains an IMM (Immediate value), For instance, IDA-Fusion will signature the following instruction lea rax, [rbx+10h]
explicitly as lea rax, [rbx+?]
, However this does not work entirely the same way a usual signature creator would.
Highlighted in blue, demonstrates what is ommitted when a signature is created:
Creating signatures like this ensures that only the opcodes themselves are sigged, this process IDA-Fusion does differ greatly from other signature creation plugins. And is very good at creating reliable signatures for programs that are specifically attempting to implement anti-signature environments.
We plan to work on many other features and further enhance and optimise IDA-Fusion as much as physically possible. We are always looking for those who are willing to contribute to the project.
Some of the future features planned are:
- CRC Signature generation.
- Reverse searching to create even smaller signatures. (Would be an option)
- Reference based signatures. (Would be an option)
Configuration dialog for toggling future and experimental features.- Many other features.
- IDA 7.5 And above
- Download the latest Release here or compile yourself.
- Drag
fusion.dll
andfusion64.dll
into your IDA installationsplugin
folder. - You can access the fusion action menu via
Edit > Plugins > Fusion
or the hotkeyCTRL + ALT + S
- Download GCC (Preferably MSYS2)
- Drag your IDA's
idasdk7.x.zip
contents into thesdk
folder in IDA-Fusion - To avoid confusion, it is advisable to modify the copy directories in the following files:
compile32.bat
andcompile64.bat
- To compile IDA-Fusion for x86 & x64 IDA. run
compile.bat
Initial support cannot compile for x86 and has not been tested for IDA SDK versions lower to 9.0!
- Drag your IDA's
idasdk90.7z
contents into thesdk
folder in IDA-Fusion - Set platform to x64 and compile
- Compiled files will be written to the
out
folder
You are welcome to contribute to IDA-Fusion project and any help and advice would be greatly appreciated.