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

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

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

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

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

Категории

Все категории
Loading categories
JOP_ROCKET — Эта платформа позволяет пользователю обнаруживать JOP-гаджеты и может автоматизировать построение полной JOP-цепочки для обхода DEP. JOP ROCKET — это идеальное решение для jump-oriented программирования в Windows. JOP ROCKET также находит новый двухгаджетный диспетчер, который значительно расширяет возможности JOP. | Kitploit
Инструменты/GitHubGitHub/bw3ll/jop_rocket
ЭксплуатацияОбратная инженерияСтатьи и ИсследованияОбучение и ОбразованиеРазработка Полезной НагрузкиЭксплуатация Бинарных ФайловЛаборатории и Практика
GitHubbw3ll/jop_rocket

JOP_ROCKET

Репозиторий
11620102 лет назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →

Описание

Эта платформа позволяет пользователю обнаруживать JOP-гаджеты и может автоматизировать построение полной JOP-цепочки для обхода DEP. JOP ROCKET — это идеальное решение для jump-oriented программирования в Windows. JOP ROCKET также находит новый двухгаджетный диспетчер, который значительно расширяет возможности JOP.

Поделиться

alt text

JOP ROCKET

ПРИМЕЧАНИЕ: В версии 2.15 мы представляем двухгаджетный диспетчер — это значительно расширяет возможности с диспетчерскими гаджетами. 26 мая 2021 года в версии 2.15 было добавлено множество оптимизаций и новых функций.

Обновление: 29 ноября 2021 г.: Я загрузил слайды для @Hack в Эр-Рияде, а также технический доклад (white paper) о JOP без шелл-кода. Тихое демо-видео, использованные в выступлении, можно найти здесь: https://www.youtube.com/playlist?list=PLynyJsHgQaJ3AfQGKVkeZJ9cWa7mIqDMV

Обновление: 1 декабря 2022 г.: Я добавил раздел «Вопросы и ответы» в конец этого GitHub-репозитория, который включает ссылки на ресурсы (выступления и статьи).

Текущая версия: 2.15

Инструмент Jump-oriented Programming Reversing Open Cyber Knowledge Expert Tool, или JOP ROCKET, предназначен для облегчения поиска JOP-гаджетов в среде x86 Windows. Этот инструмент был представлен на DEF CON 27, где он стал темой доклада доктора Брэмвелла Бризендайна и доктора Джоша Строшайна. Крупное обновление, которое находилось в разработке, было выпущено в сентябре 2020 года, с планами небольших обновлений в ближайшем будущем.

Пожалуйста, перейдите по адресу https://github.com/Bw3ll/JOP_ROCKET, чтобы загрузить этот инструмент.

Произошёл ряд крупных обновлений. Рекомендуется обновить любую версию, предшествующую 2.15, чтобы воспользоваться многочисленными обновлениями. Они включают автоматическую генерацию JOP-цепей, обнаружение новых типов гаджетов, новые типы диспетчерских гаджетов и двухгаджетные диспетчеры. JOP ROCKET также претерпел множество других важных изменений, направленных на повышение производительности и скорости.

JOP ROCKET — это программа на Python, использующая дизассемблерный движок Capstone, а также другие зависимости. Этот инструмент для эксплуатации программного обеспечения является полнофункциональным продуктом, предназначенным для облегчения Jump-oriented Programming. Предполагается, что он будет запускаться в Windows.

Информация об использовании в настоящее время недоступна, кроме той, что есть в меню справки. Создание JOP-эксплойтов непросто и требует тонкого понимания; здесь есть некоторые параллели с ROP, но и много отличий. Обратитесь к выступлению на DEF CON, чтобы увидеть краткую демонстрацию. https://www.youtube.com/watch?v=PMihX693mPE

Этот инструмент преподавался в Университете штата Дакота в докторской программе, в рамках курса CSC 848: Advanced Software Exploitation, самого сложного курса в программе. Студенты выполняли эксплойты, включавшие обход DEP и ASLR.

Благодарим Остина Бэбкока за помощь с различными вопросами, связанными с JOP ROCKET, включая его инструкции по установке. Он мастер JOP.

Мы загрузили архив здесь, JOP ROCKET challenge - toy binaries.zip, чтобы заинтересованные стороны могли протестировать и попрактиковаться в JOP на некоторых образцах игрушечных бинарных файлов с помощью JOP ROCKET. Сможете ли вы обойти Data Execution Prevention (DEP)? Это хорошо, если вы хотите попрактиковаться в JOP на бинарном файле, который, как вы знаете, гарантированно уязвим и содержит нужные гаджеты. Есть более лёгкая и более сложная версии одного и того же бинарного файла. Хотя JOP, вероятно, будет сложнее в первый раз, пока кто-то не освоится. Как только вы освоите JOP на этих бинарных файлах, вы можете попробовать его на некоторых реальных гаджетах, при условии, что в них достаточно гаджетов. Если вы используете парадигму диспетчерских гаджетов, имейте в виду, что вам действительно нужен диспетчерский гаджет. JOP также можно смешивать с ROP, используя JOP-гаджет, указывающий на RET, так что JMP EDX может иметь EDX, указывающий на RET. Это более полезно, если вам нужно всего один или два JOP-гаджета, чтобы заставить ROP работать. Бинарные файлы в архиве должны позволить вам использовать парадигму диспетчерских гаджетов несколькими разными способами!

С парадигмой диспетчерских гаджетов JOP вы можете на 100% исключить ROP, хотя проще всего начать с двух ROP-гаджетов, чтобы загрузить диспетчерскую таблицу и диспетчерский гаджет. Готовая JOP-цепь сделает это за вас автоматически, при условии, что они присутствуют. После этого может использоваться чистый JOP, с непрямыми переходами и непрямыми вызовами (JMP EBX, CALL EDX и т.д.).

Базовые инструкции по установке JOP ROCKET

Шаг 1:

Установите Python 2.7. Проще всего это сделать с сайта: https://www.python.org/download/releases/2.7/

Если у вас уже установлен Python 3, вам всё равно понадобится Python 2.7, так как инструмент не будет работать должным образом с Python 3.

Если у вас есть оба, вам нужно добавить специальный комментарий:

#!python2

в верхней части rocket.py. Затем запускайте с помощью «py rocket.py» вместо «python rocket.py». Это гарантирует, что программа будет запущена с использованием Python 2.7. В качестве альтернативы можно просто выполнить py -2 rocket.py

alt text

Шаг 2:

установите pip, если он ещё не включён в Python.

  • https://pip.pypa.io/en/stable/installing/

Вам нужно сохранить предоставленный скрипт и запустить его, как указано в инструкциях по ссылке. Если возникнет ошибка, попробуйте использовать «альтернативный» скрипт.

Если pip всё ещё не работает, попробуйте добавить «C:\python27\Scripts» (или ваш соответствующий каталог) в системную переменную Path:

  • Пуск
  • Щёлкните правой кнопкой мыши по «Компьютер»
  • Свойства
  • Дополнительные параметры системы
  • Вкладка «Дополнительно»
  • Переменные среды

alt text

Шаг 3:

Начните установку зависимостей с помощью pip!

Примечание: Установка с помощью pip должна работать в терминале Windows, но может не работать в среде Cygwin. Если вы используете Cygwin, возможно, потребуется устанавливать из исходного кода. Это может занять больше времени; обращайтесь к последней документации от различных разработчиков зависимостей.

  • pip install capstone

  • pip install pefile2

    • Вероятно, у вас уже установлен pefile вместе с Python 2.7, но эта версия старая.
    • Вам нужен именно Pefile2.
    • Возможно, вам потребуется pip uninstall pefile, чтобы программа использовала pefile2.
  • И т.д. Список зависимостей можно найти в конце этого документа. Каждая из них должна быть установлена, если ещё не установлена.

  • Две указанные выше зависимости, вероятно, единственные, которые вам нужно установить самостоятельно.

Многие зависимости уже входят в состав Python. Чтобы вывести список доступных модулей, откройте командную строку:

alt text

Просмотрите список и проверьте, есть ли у вас все зависимости. Те, которых нет, установите с помощью pip или из исходного кода.

Зависимости:

  • Capstone
  • pywin32
  • Pefile2
  • Ctypes

Примечание: pywin32 используется для Win32file и Win32api

Необходимые файлы:

В одном каталоге у вас должны находиться все пять файлов: rocket.py, lists,py, checkIt.py, ui.py и stackpivot.py. Чтобы начать использовать инструмент, выполните в командной строке python rocket.py filename.exe, где filename.exe — программа, для которой вы хотите получить JOP-гаджеты или JOP-цепи.

Ошибки:

Если вы получаете ошибки типа "SyntaxError: Missing parentheses in call to 'print'", скорее всего, программа запускается с Python 3. Попробуйте исправление, описанное в Шаге 1, чтобы программа использовала Python 2.

Ошибки, связанные с «lists» или «ui», скорее всего, вызваны расположением файлов lists.py и ui.py. Убедитесь, что эти файлы находятся в том же каталоге, что и rocket.py.

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