Recover function names, prototypes, and library origins in binaries across IDA, Ghidra, and Binary Ninja.
See the code
Recover function names, prototypes, and library origins in binaries across IDA, Ghidra, and Binary Ninja.
SightHouse helps reverse engineers understand unknown binaries by matching their functions against a database of known signatures. When it finds a match, it tells you the original function name, its prototype, and which library or framework it came from.
Unlike hand-curated signature sets, SightHouse keeps its database up to date automatically: it continuously scrapes, compiles, and analyzes open-source or proprietary projects, and then lets you match any binary against it from your favorite reverse-engineering tool.

SightHouse is split into three components, each serving a different need:
| Your goal | Component to install | Get started |
|---|---|---|
| Query a binary for known functions from your disassembler | SRE Clients | Client quickstart |
| Host your own SightHouse server against an existing database | Frontend | Frontend quickstart |
| Build your own signature database and signatures | Signature Pipeline | Pipeline quickstart |
Most users only need the SRE Clients. Not sure? Check the docs quarkslab.github.io/sighthouse.
SightHouse is available on PyPI. Install only the component you need:
pip install sighthouse-client # SRE clients (IDA, Ghidra, Binary Ninja)
pip install sighthouse-frontend # Frontend API server
pip install sighthouse-pipeline # Signature pipeline
pip install sighthouse[all] # Everything
After installing sighthouse-client, register the plugin for your disassembler:
# IDA
sighthouse client install ida --ida-dir /path/to/ida_dir
# Ghidra (requires Ghidra 11.3+ with pyGhidra)
sighthouse client install ghidra --ghidra-install-dir /path/to/ghidra
# Binary Ninja
sighthouse client install binja
Ghidra note: the plugin runs on pyGhidra, so launch Ghidra with
$GHIDRA_INSTALL_DIR/support/pyghidraRunrather than the classic launcher.
See the client installation guide for per-tool details and install-from-source options.
git clone https://github.com/quarkslab/sighthouse && cd sighthouse
# Creates a virtual env and installs SightHouse into it
make install
Pre-built images are published for deploying a pipeline, a frontend, or a headless Ghidra:
docker pull ghcr.io/quarkslab/sighthouse/sighthouse:latest
docker pull ghcr.io/quarkslab/sighthouse/sighthouse-pipeline:latest
docker pull ghcr.io/quarkslab/sighthouse/sighthouse-frontend:latest
Once a client plugin is installed and pointed at a SightHouse server, open a binary in your disassembler and run the plugin:
SightHouseClientGhidra.py from the Script Manager, fill
in the prompt, and press Submit. Matches appear on the corresponding functions.Full walkthroughs with screenshots are in the client quickstart.
Full documentation is available at quarkslab.github.io/sighthouse, including:
git clone https://github.com/quarkslab/sighthouse && cd sighthouse/doc
make install # install documentation dependencies
make serve # serve the docs at a local URL
git clone https://github.com/quarkslab/sighthouse && cd sighthouse
make check # run the format test
make test # run the unit test
Contributions, issues, and feature requests are welcome. If you hit a bug or want to see a new format or SRE tool supported, please open an issue.
SightHouse is licensed under the MIT License.
415 followers · starred Jun 2026
1,192 followers · starred Mar 2026
670 followers · starred Apr 2026
256 followers · starred Mar 2026
Recover function names, prototypes, and library origins in binaries across IDA, Ghidra, and Binary Ninja.
See the code
Recover function names, prototypes, and library origins in binaries across IDA, Ghidra, and Binary Ninja.
SightHouse helps reverse engineers understand unknown binaries by matching their functions against a database of known signatures. When it finds a match, it tells you the original function name, its prototype, and which library or framework it came from.
Unlike hand-curated signature sets, SightHouse keeps its database up to date automatically: it continuously scrapes, compiles, and analyzes open-source or proprietary projects, and then lets you match any binary against it from your favorite reverse-engineering tool.

SightHouse is split into three components, each serving a different need:
| Your goal | Component to install | Get started |
|---|---|---|
| Query a binary for known functions from your disassembler | SRE Clients | Client quickstart |
| Host your own SightHouse server against an existing database | Frontend | Frontend quickstart |
| Build your own signature database and signatures | Signature Pipeline | Pipeline quickstart |
Most users only need the SRE Clients. Not sure? Check the docs quarkslab.github.io/sighthouse.
SightHouse is available on PyPI. Install only the component you need:
pip install sighthouse-client # SRE clients (IDA, Ghidra, Binary Ninja)
pip install sighthouse-frontend # Frontend API server
pip install sighthouse-pipeline # Signature pipeline
pip install sighthouse[all] # Everything
After installing sighthouse-client, register the plugin for your disassembler:
# IDA
sighthouse client install ida --ida-dir /path/to/ida_dir
# Ghidra (requires Ghidra 11.3+ with pyGhidra)
sighthouse client install ghidra --ghidra-install-dir /path/to/ghidra
# Binary Ninja
sighthouse client install binja
Ghidra note: the plugin runs on pyGhidra, so launch Ghidra with
$GHIDRA_INSTALL_DIR/support/pyghidraRunrather than the classic launcher.
See the client installation guide for per-tool details and install-from-source options.
git clone https://github.com/quarkslab/sighthouse && cd sighthouse
# Creates a virtual env and installs SightHouse into it
make install
Pre-built images are published for deploying a pipeline, a frontend, or a headless Ghidra:
docker pull ghcr.io/quarkslab/sighthouse/sighthouse:latest
docker pull ghcr.io/quarkslab/sighthouse/sighthouse-pipeline:latest
docker pull ghcr.io/quarkslab/sighthouse/sighthouse-frontend:latest
Once a client plugin is installed and pointed at a SightHouse server, open a binary in your disassembler and run the plugin:
SightHouseClientGhidra.py from the Script Manager, fill
in the prompt, and press Submit. Matches appear on the corresponding functions.Full walkthroughs with screenshots are in the client quickstart.
Full documentation is available at quarkslab.github.io/sighthouse, including:
git clone https://github.com/quarkslab/sighthouse && cd sighthouse/doc
make install # install documentation dependencies
make serve # serve the docs at a local URL
git clone https://github.com/quarkslab/sighthouse && cd sighthouse
make check # run the format test
make test # run the unit test
Contributions, issues, and feature requests are welcome. If you hit a bug or want to see a new format or SRE tool supported, please open an issue.
SightHouse is licensed under the MIT License.
415 followers · starred Jun 2026
1,192 followers · starred Mar 2026
670 followers · starred Apr 2026
256 followers · starred Mar 2026