idapro
IDA Library Python module
What it is and what it does
idapro is a Python wrapper that exposes IDA Pro's binary analysis engine as a standalone package, letting you run IDA's disassembly, type inference, and reverse-engineering capabilities from Python scripts without launching the IDA GUI. After importing idapro, you gain access to IDA's full Python API surface for analyzing functions, segments, types, comments, strings, basic blocks, and disassembly, plus automatic type stubs for IDE autocompletion.
The package acts as a bridge between your Python environment and an existing IDA Pro installation. You configure it once by running an activation script that records IDA's install path, then import idapro to unlock IDA's analysis capabilities in headless mode. It's designed for automation workflows: batch binary analysis, CI/CD integration, or programmatic reverse engineering where the GUI would be overhead.
Use it for:
- Automate binary analysis in CI/CD pipelines to extract metadata and function listings without manual IDA GUI interaction
- Batch-process multiple binaries to collect type information, strings, and disassembly for research or threat analysis
- Build custom reverse-engineering tools that leverage IDA's analysis engine as a library rather than reimplementing disassembly
- Integrate IDA analysis into Python-based security workflows for malware analysis or vulnerability research
- Extract and analyze binary metadata programmatically for inventory or compliance tasks
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Enables programmatic binary analysis and reverse engineering by running IDA Pro as a Python package outside the IDA UI, providing access to IDA's analysis APIs and type hints for IDE support.
Yes, if you already own an IDA Pro license and need programmatic binary analysis in Python. The package has low install friction, no external Python dependencies, active maintenance, and a permissive license. The main blocker is the requirement for a separate IDA Pro installation and the activation step; it is not a standalone tool. For teams doing headless binary analysis at scale, it eliminates GUI overhead. For casual reverse engineering, the activation overhead and IDA Pro cost may not justify it.
Install
idapro on PyPI
pip
pip install idaprouv
uv add idapropoetry
poetry add idaproInstalling idapro
Before you install
Low install friction with no runtime dependencies. Active maintenance status (latest release 2026-07-15, 30 days ago). Requires IDA Pro to be installed separately and configured via activation script or HCLI; this is a wrapper around an external commercial tool rather than a standalone package.
License in practice
MIT license (permissive) means you can use, modify, and distribute this wrapper freely. However, the underlying IDA Pro software itself requires a separate commercial license; this package's permissive license does not grant you IDA Pro.
Quickstart
# Install idapro, then run activation script once:
# python /path/to/ida/idalib/python/py-activate-idalib.py
import idapro
if idapro.open_database('binary_file', True) == 0:
kernel_path = idapro.get_ida_install_dir()
print(f"IDA install directory: {kernel_path}")
idapro.close_database(False)
IDA Pro must be installed separately and configured via py-activate-idalib.py activation script (or HCLI) before importing idapro; requires Python >= 3.8
Verify before relying
- Whether the package works with all IDA Pro versions or only recent ones
- Performance characteristics when analyzing large binaries or in batch processing scenarios
- Compatibility with IDA Pro on non-Windows platforms (Linux/macOS support claims need confirmation)
- Which IDA Python modules are available after importing idapro
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 30 days since the last release |
| First released | |
| Downloads | 116,071/month — #12,221 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: idapro-0.0.10-py3-none-any.whl
Tags
More Disassemblers packages
pyelftools parses and analyzes ELF binary files…
permissive · top 5,000 on PyPI
pcodedmpDisassembles VBA p-code from Microsoft Office…
copyleft · top 5,000 on PyPI
pwntoolsPwntools is a CTF framework and exploit…
permissive · top 5,000 on PyPI
hachoirHachoir parses and displays binary files as a…
copyleft · top 15,000 on PyPI
json-source-mapMaps each value in a JSON document to its…
permissive · top 15,000 on PyPI
smdaSMDA is a recursive disassembler library that…
permissive · top 15,000 on PyPI
ida-hcliida-hcli is a command-line interface for…
permissive · top 15,000 on PyPI
python-flirtParse, compile, and match FLIRT signatures…
permissive · top 15,000 on PyPI
ida-settingsProvides a Python API for IDA Pro plugins to…
unclear · top 15,000 on PyPI
capstoneCapstone is a disassembly engine that decodes…
permissive · top 5,000 on PyPI
evmdasmevmdasm provides a lightweight registry of…
copyleft · top 15,000 on PyPI
chialisp-loaderLoads compiled Chialisp programs (`.hex` files)…
unclear · top 15,000 on PyPI
nvidia-cuda-nvdisasmnvdisasm disassembles NVIDIA CUDA cubin files…
unclear · top 5,000 on PyPI
viv-utilsProvides utility functions and helpers for…
permissive · top 15,000 on PyPI
binapyBinaPy wraps Python's binary-handling libraries…
permissive · top 5,000 on PyPI