
Icicle एमुलेटर के लिए Python बाइंडिंग्स, जो x64 और ARM64 टारगेट्स पर ग्रे-बॉक्स फर्मवेयर फ़ज़िंग, बाइनरी एमुलेशन और रिवर्स-इंजीनियरिंग वर्कफ़्लो को सक्षम बनाती हैं।
यह प्रोजेक्ट icicle-emu के चारों ओर एक उपयोग में आसान Python रैपर है। आप Icicle के बारे में पेपर में और पढ़ सकते हैं: Icicle: A Re-designed Emulator for Grey-Box Firmware Fuzzing।
आप PyPI से नवीनतम रिलीज़ इंस्टॉल कर सकते हैं:
pip install icicle-emu
नोट: सोर्स से बिल्ड करने के लिए आपको Rust 1.90 या उससे ऊपर का वर्ज़न इंस्टॉल करना होगा।
# 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
tests फ़ोल्डर में ऐसे टेस्ट हैं जो स्टैंडअलोन उदाहरणों के रूप में भी काम करते हैं। किसी फ़ंक्शन को स्वचालित रूप से चलाने के लिए उसके नाम के आगे test_ लगाएँ:
uv run pytest -v
वैकल्पिक रूप से, आप स्टैंडअलोन उदाहरण को चलाने/डीबग करने के लिए uv run tests/example.py का उपयोग कर सकते हैं।
uv build