Skip to main content

A plugin for IDA Pro to generate Yara rules from binary files.

Project description

[English] | 繁體中文

YaraForge

YaraForge is an IDA Pro plugin for generating Yara rules from binary files. It utilizes the results of CAPA analysis to automatically generate corresponding Yara rules, helping security researchers and reverse engineers quickly identify and detect malware.

Features

  • Automatically extract key information from CAPA analysis results to generate Yara rules
  • Support exporting detailed CAPA analysis results, including matched rules, addresses, etc.
  • Save the generated Yara rules and related information to local files
  • Provide a user-friendly interface for easy operation and configuration
  • Built-in detailed logging functionality for troubleshooting and debugging

Installation

  1. Install YaraForge using pip:
pip install yaraforge
  1. Copy the yaraforge.py file from the yaraforge/plugin folder to the plugins directory of IDA Pro.
  2. Launch IDA Pro, and the YaraForge plugin will be loaded automatically.

Usage

  1. Open the target binary file in IDA Pro.
  2. Run CAPA analysis to ensure that the analysis results are generated.
  3. Use the Ctrl+Y shortcut or choose "Edit" -> "Plugins" -> "YaraForge" from the menu bar in IDA Pro to launch the plugin.
  4. The plugin will automatically extract information from the CAPA analysis results and generate corresponding Yara rules.
  5. The generated Yara rules and related information are saved by default in the %APPDATA%\Hex-Rays\IDA Pro\plugins\yaraforge\ folder.
  6. If you need to export the analysis results to the desktop, you can select the "Dump Caches on desktop" option in the plugin interface.

Notes

  • The YaraForge plugin relies on CAPA for analysis. When installing the plugin, CAPA will be automatically downloaded and installed, without the need for manual installation.
  • The Yara rules generated by the plugin are for reference only and may need to be adjusted and optimized according to actual situations.
  • Some functions of the plugin depend on the IDA Pro API, and there may be compatibility issues with different versions of IDA Pro. If you encounter any problems, please refer to the plugin's error logs and related documentation, or report them to us.

Authors

Special Thanks

We sincerely express our gratitude to DuckLL, who has devoted considerable attention and patience to mentoring us. His substantial contributions and innovative ideas have significantly shaped the trajectory of this project.

Version Requirements

  • Python: >=3.8, <3.12
  • CAPA: 7.0.1
  • IDA Pro: >=7.0
  • Windows 7/8/10/11

License

  • The YaraForge plugin is licensed under the MIT License. For more details, please refer to the LICENSE file.

Acknowledgments

The development of the YaraForge plugin has received help and inspiration from many open-source projects and communities. We would like to express our gratitude to:

Contact Us

If you encounter any issues while using the YaraForge plugin or have any suggestions and feedback, please feel free to contact us through the following channels:

Thank you for your support and attention! We hope that YaraForge can become a powerful assistant for your binary analysis and Yara rule generation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

YaraForge-0.1.16b1.tar.gz (854.1 kB view details)

Uploaded Source

Built Distribution

YaraForge-0.1.16b1-py3-none-any.whl (962.9 kB view details)

Uploaded Python 3

File details

Details for the file YaraForge-0.1.16b1.tar.gz.

File metadata

  • Download URL: YaraForge-0.1.16b1.tar.gz
  • Upload date:
  • Size: 854.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.13

File hashes

Hashes for YaraForge-0.1.16b1.tar.gz
Algorithm Hash digest
SHA256 4b9eb946358c47a7b7aea86e2f1105aab6621a5e3b5a21c6ed010bd08d70862d
MD5 be4d7ec851341a34df4ecfd39cf96b46
BLAKE2b-256 1e08812afe0a9a30c3ca072ee96f601701f0fb41e18c28beec558b60145ae5a5

See more details on using hashes here.

File details

Details for the file YaraForge-0.1.16b1-py3-none-any.whl.

File metadata

  • Download URL: YaraForge-0.1.16b1-py3-none-any.whl
  • Upload date:
  • Size: 962.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.13

File hashes

Hashes for YaraForge-0.1.16b1-py3-none-any.whl
Algorithm Hash digest
SHA256 6e54948d7ff669f5b0037a7a6ae9391dd9fcb806c9c5da69d694cd1d44d72f39
MD5 0bee98bf0cfb7f85da192b3927fad84f
BLAKE2b-256 50d0c59b1b1425438fedde8ccd7bfbd63f9df749b1fc28f930f4e0c73b458345

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page