
Python bindings para o emulador Icicle, permitindo fuzzing de firmware grey-box, emulação binária e fluxos de trabalho de engenharia reversa em alvos x64 e ARM64.
Este projeto é um wrapper Python fácil de usar em torno do icicle-emu. Você pode ler mais sobre o Icicle no artigo: Icicle: A Re-designed Emulator for Grey-Box Firmware Fuzzing.
Você pode instalar a última versão a partir do PyPI:
pip install icicle-emu
Nota: Você precisa instalar o Rust 1.90 ou superior para compilar a partir do código-fonte.
# On Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# On macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone the repository with submodules
git clone --recursive https://github.com/icicle-emu/icicle-python
cd icicle-python
# Install dependencies and build
uv sync
uv run maturin develop
A pasta tests contém testes que também funcionam como exemplos independentes. Prefixe uma função com test_ para executá-la automaticamente:
uv run pytest -v
Alternativamente, você pode usar uv run tests/example.py para executar/depurar o exemplo independente.
uv build