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

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

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

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

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

Категории

Все категории
Loading categories
ptxNinja — Плагин Binary Ninja для реверс-инжиниринга PTX — виртуальной архитектуры набора инструкций CUDA-совместимых GPU. | Kitploit
Инструменты/GitHubGitHub/seekbytes/ptxninja
Статический анализАнализ КодаОбратная инженерияУтилиты и фреймворкиБезопасность оборудования и IoTАнализ Бинарных Файлов
GitHubseekbytes/ptxninja

ptxNinja

Плагин Binary Ninja для реверс-инжиниринга PTX — виртуальной архитектуры набора инструкций CUDA-совместимых GPU.

Репозиторий
624126 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

ptxNinja

Автор: Nicolò Altamura

Исследуйте код PTX с помощью Binary Ninja

Описание

ptxNinja — это плагин архитектуры для Binary Ninja, ориентированный на PTX, язык виртуальной архитектуры GPU на базе CUDA. Это позволяет вам:

  • исследовать бинарные файлы PTX, интегрируя уже доступные в сообществе анализы
  • перемещаться по GPU-ядрам и функциям
  • интегрировать PTX в ваши существующие автоматизированные инструменты благодаря Binary Ninja

Attention mechanism reverse engineered (PTX)

Установка

Плагин можно установить с помощью менеджера плагинов Binary Ninja.

Для ручной установки выполните следующие шаги в папке плагинов Binary Ninja:

root@kitploit:~
git clone https://github.com/seekbytes/ptxninja.git
cd ptxninja

# optionally: use a virtual environment
python -m venv ptxninja-env
source ptxninja-env/bin/activate

# install requirements
pip install ptx-parser

Если вы используете виртуальное окружение, вам нужно вручную указать путь к site-packages в настройках Binary Ninja.

Примеры

Если вы не уверены, с чего начать, или никогда не видели файл PTX, возможно, вам стоит посмотреть на некоторые учебные ядра в директории examples/. К ним относятся:

  • attention.ptx — ядро механизма внимания
  • elu.ptx — функция активации ELU (Exponential Linear Unit)
  • gele.ptx — функция активации GELU (Gaussian Error Linear Unit)
  • gemm.ptx — общее матричное умножение
  • histogram.ptx — ядро вычисления гистограммы
  • layernorm.ptx — ядро Layer Normalization
  • matrix.ptx — матричные операции
  • multi_tensor.ptx — операции с несколькими тензорами
  • reduce_sum.ptx — ядро параллельного суммирования с редукцией
  • relu.ptx — функция активации ReLU
  • softmax.ptx — функция активации Softmax

Ограничения

PTX основан на текстовом формате языка, и вывод nvdisasm/cuobjdump уже содержит множество информации, которая вставляется в бинарные файлы. Работа с текстом требует построения точной грамматики для тестирования парсера, однако есть некоторые ограничения:

  • метки иногда не соответствуют своей целевой инструкции, что может привести к некорректной визуализации потока управления в Binary Ninja
  • глобальные операторы, объявленные вне области видимости функции, не поддерживаются
  • память, выделенная вне функций, не отображается
  • не все атомарные операции (atom) полностью поддерживаются
  • имена символов не демутируются — улучшение имён через cuobjdump/cufilt пока не применяется

Контакты

Для получения дополнительной информации свяжитесь с Nicolò Altamura (@nicolodev).

Скачать инструмент