Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
remill — Библиотека для подъема машинного кода в LLVM биткод | Kitploit
Инструменты/GitHubGitHub/lifting-bits/remill
Безопасность встроенных системСтатический анализОбратная инженерияОтладчикиАнализ Бинарных ФайловАнализ Прошивок
GitHublifting-bits/remill

remill

Библиотека для подъема машинного кода в LLVM биткод

Репозиторий
1.8k185419 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Remill Slack Chat

Remill — это статический бинарный транслятор, который переводит инструкции машинного кода в LLVM bitcode. Он транслирует машинный код AArch64 (64-битная ARMv8), SPARC32 (SPARCv8), SPARC64 (SPARCv9), x86 и amd64 (включая AVX и AVX512) в LLVM bitcode. Ведётся работа над поддержкой AArch32 (32-битная ARMv8 / ARMv7).

Remill фокусируется на точном подъёме инструкций. Он предназначен для использования в качестве библиотеки для других инструментов, например McSema.

Статус сборки

Build Status

Документация

Чтобы понять, как работает Remill, вы можете ознакомиться со следующими ресурсами:

  • Пошаговое руководство по подъёму инструкции в Remill
  • Как реализовать семантику инструкции
  • Дизайн и архитектура Remill

Если вы хотите внести свой вклад, ознакомьтесь с: Как внести вклад

Документация API

Сгенерируйте подробную документацию API с помощью Doxygen:

root@kitploit:~
# Установка Doxygen (macOS)
brew install doxygen graphviz

# Установка Doxygen (Ubuntu/Debian)
sudo apt-get install doxygen graphviz

# Генерация документации
doxygen

# Откройте docs/doxygen/html/index.html в вашем браузере

См. docs/DOCUMENTATION.md для получения дополнительных сведений о стиле документации и участии.

Получение помощи

Если вы испытываете недокументированные проблемы с Remill, обратитесь за помощью в канал #binary-lifting в Empire Hacking Slack.

Поддерживаемые платформы

Remill поддерживается на платформах Linux и был протестирован на Ubuntu 22.04. Remill также работает на macOS и имеет экспериментальную поддержку Windows.

Версию Remill для Linux также можно собрать через Docker для более быстрого тестирования.

Зависимости

Remill использует следующие зависимости:

Получение и сборка кода

Мы будем собирать проект с помощью суперсборки в dependencies/. Для получения дополнительных сведений о системе управления зависимостями см. Управление зависимостями Remill.

Клонирование репозитория

root@kitploit:~
git clone https://github.com/lifting-bits/remill
cd remill

Linux/macOS

root@kitploit:~
# Шаг 1: Сборка зависимостей (включая LLVM)
cmake -G Ninja -S dependencies -B dependencies/build
cmake --build dependencies/build

# Шаг 2: Сборка remill
cmake -G Ninja -B build -DCMAKE_PREFIX_PATH:PATH=$(pwd)/dependencies/install -DCMAKE_BUILD_TYPE=Release
cmake --build build

Windows (требуется clang-cl)

Примечание: Это необходимо выполнять из командной строки разработчика Visual Studio.

root@kitploit:~
# Шаг 1: Сборка зависимостей
cmake -G Ninja -S dependencies -B dependencies/build -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl
cmake --build dependencies/build

# Шаг 2: Сборка remill
cmake -G Ninja -B build -DCMAKE_PREFIX_PATH:PATH=%CD%/dependencies/install -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_BUILD_TYPE=Release
cmake --build build

macOS с Homebrew LLVM:

root@kitploit:~
# Установка LLVM через Homebrew
brew install llvm@17
LLVM_PREFIX=$(brew --prefix llvm@17)

# Сборка зависимостей с внешним LLVM
cmake -G Ninja -S dependencies -B dependencies/build -DUSE_EXTERNAL_LLVM=ON "-DCMAKE_PREFIX_PATH:PATH=$LLVM_PREFIX"
cmake --build dependencies/build

# Сборка remill
cmake -G Ninja -B build "-DCMAKE_PREFIX_PATH:PATH=$(pwd)/dependencies/install" -DCMAKE_BUILD_TYPE=Release
cmake --build build

Linux с системным LLVM:

root@kitploit:~
# Сборка зависимостей с внешним LLVM
cmake -G Ninja -S dependencies -B dependencies/build -DUSE_EXTERNAL_LLVM=ON
cmake --build dependencies/build

# Сборка remill
cmake -G Ninja -B build "-DCMAKE_PREFIX_PATH:PATH=$(pwd)/dependencies/install" -DCMAKE_BUILD_TYPE=Release
cmake --build build
Скачать инструмент
ИмяВерсия
GitПоследняя
CMake3.21+
Ninja1+
Google Flags52e94563
Google Logv0.7.1
Google Testv1.17.0
LLVM15+
Clang15+
Intel XEDv2025.06.08
Python3+