heimdall-rs


Обзор
Heimdall — это продвинутый набор инструментов для EVM-смарт-контрактов, специализирующийся на анализе байткода и извлечении информации из непроверенных контрактов. Heimdall написан на Rust и разработан для быстроты, модульности и большей точности по сравнению с другими существующими инструментами.
В настоящее время Heimdall поддерживает следующие операции:
* Дизассемблирование EVM-байткода
* Генерация графа управления EVM-смарт-контракта
* Декомпиляция EVM-смарт-контракта
* Дамп хранилища смарт-контракта
* Декодирование исходных данных вызова транзакции
* Декодирование трассировки исходной транзакции
Установка и использование
Убедитесь, что Rust и Cargo установлены:
curl https://sh.rustup.rs -sSf | sh
Менеджер обновлений и установки Heimdall, bifrost, можно установить с помощью следующей команды:
curl -L http://get.heimdall.rs | bash
Если вы хотите установить bifrost вручную, вы можете загрузить последний выпуск отсюда.
После установки bifrost вы можете использовать его для установки Heimdall, выполнив следующую команду в новом терминале:
bifrost
После компиляции команда heimdall станет доступна для использования в новом терминале. Дополнительные параметры см. в документации bifrost.
Возникли проблемы? Ознакомьтесь с разделом Устранение неполадок в wiki.
Документация
Документация по всему heimdall-rs доступна в wiki.
Участие в разработке
Если вы хотите внести вклад в Heimdall или добавить модуль, пожалуйста, откройте pull-реквест с вашими изменениями, а также подробной информацией о том, что было изменено, добавлено или улучшено.
Для более подробной информации см. руководство по участию.
Проблемы
Если вы нашли проблему или у вас есть вопрос, пожалуйста, создайте задачу здесь. Все задачи должны соответствовать их соответствующим шаблонам.
Авторы
Heimdall — это исследовательский набор инструментов, созданный и поддерживаемый Jonathan Becker. Полный список наших 20+ contributors можно найти на боковой панели.
Если вас интересуют исследования, стоящие за Heimdall, ознакомьтесь с некоторыми из моих публикаций.
Академические цитирования
Heimdall был процитирован в следующих академических статьях и диссертациях:
- Aimar, D. (2023). Extraction, indexing, and analysis of Ethereum smart contracts data [Master’s thesis, Politecnico di Torino]. Webthesis. http://webthesis.biblio.polito.it/id/eprint/28450
- Chen, Z., Beillahi, S. M., Barahimi, P., Minwalla, C., Du, H., Veneris, A., & Long, F. (2025). Secure smart contract with control flow integrity. arXiv. https://doi.org/10.48550/arXiv.2504.05509
- Darwish, M. (2024). From bytecode to safety: Decompiling smart contracts for vulnerability analysis [Bachelor’s thesis, Linnaeus University]. DiVA Portal. https://urn.kb.se/resolve?urn=urn:nbn:se:lnu:diva-129903
- De Rosa, P., Felber, P., & Schiavoni, V. (2026). Seeing through EVM bytecode obfuscation. IEEE Access, 14, 25515–25536. https://ieeexplore.ieee.org/document/11373339
- Forissier, T. (2024). EVeilM: EVM bytecode obfuscation [Master’s thesis, KTH Royal Institute of Technology]. DiVA Portal. https://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-359674
- Gkioka, M. (2025). Domain transfer via decompilation: Enhancing code LLMs’ performance for blockchain applications [Master’s thesis, National and Kapodistrian University of Athens]. Pergamos. https://pergamos.lib.uoa.gr/uoa/dl/object/5296079
- Lagouvardos, S., Bollanos, Y., Debono, M., Grech, N. & Smaragdakis, Y. (2025). Precise static identification of Ethereum storage variables. arXiv. https://doi.org/10.48550/arXiv.2503.20690
- Lagouvardos, S., Bollanos, Y., Grech, N., & Smaragdakis, Y. (2025). The incredible shrinking context…in a decompiler near you. arXiv. https://doi.org/10.48550/arXiv.2409.11157
- Liao, Z., Nan, Y., Gao, Z., Liang, H., Hao, S., Ren, P., & Zheng, Z. (2025). Augmenting smart contract decompiler output through fine-grained dependency analysis and LLM-facilitated semantic recovery. arXiv. https://doi.org/10.48550/arXiv.2501.08670
- Liu, Y., Li, X., & Li, Y. (2025). DeepTx: Real-time transaction risk analysis via multi-modal features and LLM reasoning. arXiv. https://doi.org/10.48550/arXiv.2510.18438
- Peng, C., Jiang, M., Zhou, Y., & Wu, L. (2026). Thought is all you need: Smart contract vulnerability detection with thought-augmented large language model. Proceedings of the ACM on Software Engineering, 3(FSE). https://doi.org/10.1145/3808141
- Qasse, I. A. (2025). Immutable yet mutable: Empirical studies in smart contract upgradeability [Doctoral dissertation, Reykjavík University]. Iris. https://iris.ru.is/ws/files/235971434/Thesis_Smart_contract_upgradeability_Final_.pdf
- Qasse, I., Hamdaqa, M., & Jónsson, B. Þ. (2025). PROXiFY: A bytecode analysis tool for detecting and classifying proxy contracts in Ethereum smart contracts. In ASE 2025: Proceedings of the 40th IEEE/ACM International Conference on Automated Software Engineering (pp. 4114–4117). IEEE. https://doi.org/10.1109/ASE63991.2025.00388
- Qin, K., Song, D., & Gervais, A. (2026). SCDBench: A benchmark for LLM-based smart contract decompilers. arXiv. https://doi.org/10.48550/arXiv.2605.29059
- Solmaz, O., Heimbach, L., Vonlanthen, Y., & Wattenhofer, R. (2025). Optimistic MEV in Ethereum layer 2s: Why blockspace is always in demand. arXiv. https://doi.org/10.48550/arXiv.2506.14768
- Su, X., Wu, H., Liang, H., Jiang, Y., Cheng, Y., Liu, Y., & Xu, F. (2026). From transactions to exploits: Automated PoC synthesis for real-world DeFi attacks. arXiv. https://doi.org/10.48550/arXiv.2601.16681
- Sun, Y., Bao, L., & Yang, X. (2025). FIRE: Smart contract bytecode function identification via graph-refined hybrid feature encoding. ACM. https://doi.org/10.1145/3755881.3755883
- Wang, Z., Yu, J., Qin, K., Song, D., Gervais, A., & Zhou, L. (2026). TxRay: Agentic postmortem of live blockchain attacks. arXiv. https://doi.org/10.48550/arXiv.2602.01317
- Ye, M., Lin, X., Nan, Y., Wu, J., & Zheng, Z. (2024). Midas: Mining profitable exploits in on-chain smart contracts via feedback-driven fuzzing and differential analysis. In M. Christakis & M. Pradel (Eds.), ISSTA 2024: Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis (pp. 794–805). Association for Computing Machinery. https://doi.org/10.1145/3650212.3680321
Если вы использовали или планируете использовать Heimdall в своих исследованиях, пожалуйста, свяжитесь со мной через электронную почту или Twitter! Буду рад узнать, для чего вы используете heimdall :)