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

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

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

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

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

Категории

Все категории
Loading categories
Sekiryu — Комплексный набор инструментов для безголового режима Ghidra. | Kitploit
Инструменты/GitHubGitHub/20urc3/sekiryu
Статический анализАнализ уязвимостейАнализ КодаОбратная инженерияАнализ Бинарных ФайловОбратная Разработка с Помощью ИИArchived
GitHub20urc3/sekiryu

Sekiryu

Комплексный набор инструментов для безголового режима Ghidra.

Репозиторий
36222221 год назадПроверено Kitploit
Сайт

Популярное

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

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

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

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

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

Этот проект был действительно интересным и моим первым "большим" проектом! Сейчас существуют лучшие, более умные и сильные решения: https://github.com/LaurieWired/GhidraMCP

Увидимся, космический ковбой

Sekiryu v0.0.2

Этот набор инструментов Ghidra представляет собой комплексный пакет утилит, предназначенных для оптимизации и автоматизации различных задач, связанных с запуском Ghidra в безголовом режиме. Набор включает в себя широкий спектр скриптов, которые могут выполняться как внутри Ghidra, так и параллельно с ним, позволяя пользователю выполнять такие задачи, как поиск уязвимостей, комментирование псевдокода с помощью ChatGPT и формирование отчетов с визуализацией данных анализируемой кодовой базы. Он позволяет пользователю загружать и сохранять собственные скрипты, а также взаимодействовать со встроенным API скрипта.

Ключевые возможности

  • Автоматизация безголового режима: Набор инструментов позволяет беспрепятственно запускать Ghidra в безголовом режиме, обеспечивая автоматическую и пакетную обработку задач анализа кода.

  • Хранилище/управление скриптами: Включает в себя репозиторий готовых скриптов, выполняемых в Ghidra. Эти скрипты охватывают различные функциональные возможности, предоставляя пользователям возможность выполнять разнообразные задачи анализа и манипуляции. Пользователи могут загружать и сохранять собственные скрипты, что обеспечивает гибкость и возможность настройки под конкретные требования анализа. Также можно легко управлять своей коллекцией скриптов и организовывать её.

  • Гибкие входные параметры: Пользователи могут анализировать как отдельные файлы, так и целые папки, содержащие множество файлов. Это обеспечивает эффективный анализ как небольших, так и крупных кодовых баз.

Доступные скрипты

  • Поиск уязвимостей с помощью распознавания образов: Используйте скрипты набора для выявления потенциальных уязвимостей в анализируемой кодовой базе. Это помогает исследователям безопасности и разработчикам обнаруживать слабые места безопасности и активно их устранять.
  • Поиск уязвимостей с помощью SemGrep: Благодаря исследователю безопасности 0xdea и созданному им набору правил, мы можем использовать простые правила и SemGrep для обнаружения уязвимостей в псевдокоде C/C++ (их GitHub: https://github.com/0xdea/semgrep-rules).
  • Автоматическая генерация псевдокода: Автоматически генерируйте псевдокод в безголовом режиме Ghidra. Эта функция помогает понять и задокументировать логику кода без ручного вмешательства.
  • Комментирование псевдокода с помощью ChatGPT: Повысьте читаемость и понимание кодовой базы, используя ChatGPT для создания человекоподобных комментариев к фрагментам псевдокода. Эта функция помогает документировать и объяснять логику кода.
  • Формирование отчетов и визуализация данных: Создавайте комплексные отчеты с визуализациями для эффективного обобщения и представления результатов анализа. Набор инструментов предоставляет возможности визуализации данных для выявления закономерностей, зависимостей и аномалий в кодовой базе.

Предварительные требования

Перед использованием этого проекта убедитесь, что установлено следующее ПО:

  • Ghidra: Вы можете загрузить Ghidra из репозитория GitHub Агентства национальной безопасности: https://github.com/NationalSecurityAgency/ghidra
  • Java: Убедитесь, что установлен Java Development Kit (JDK) версии 17 или выше. Загрузить его можно с сайта OpenJDK: https://openjdk.org/projects/jdk/17/
  • BinExport (ОПЦИОНАЛЬНО) Следуйте инструкциям по установке расширения Ghidra: https://github.com/google/binexport
  • SemGrep (ОПЦИОНАЛЬНО) Следуйте инструкциям, описанным здесь: https://semgrep.dev/docs/getting-started/

Установка

  • Установите вышеупомянутые предварительные требования.
  • Загрузите релиз Sekiryu напрямую с GitHub или используйте: pip install sekiryu.

Использование

Чтобы использовать скрипт, просто запустите его с бинарным файлом и необходимыми опциями.

  • sekiryu [-F FILE][OPTIONS]

Обратите внимание, что выполнение анализа бинарных файлов с помощью Ghidra (или любого другого продукта) является относительно медленным процессом. Поэтому ожидайте, что анализ займет несколько минут в зависимости от производительности хост-системы. Если вы запускаете Sekiryu для очень большого приложения или большого количества бинарных файлов, будьте готовы ЖДАТЬ

Демонстрации

  • Демонстрации доступны на www.bushido-sec.com

API

"server.py" создан в первую очередь для того, чтобы скрипты могли взаимодействовать с Ghidra друг с другом и с хост-системой.
Пользователь может легко разработать свой собственный скрипт, загрузить и сохранить его в папке скриптов, а затем использовать известные функции 
API для взаимодействия с Ghidra.    

Для использования необходимо импортировать xmlrpc в свой скрипт и вызывать функцию, например: proxy.send_data

Функции

  • send_data() - Позволяет пользователю отправлять данные на сервер. ("data" - это Словарь)
  • recv_data() - Позволяет пользователю получать данные с сервера. ("data" - это Словарь)
  • request_GPT() - Позволяет пользователю отправлять строковые данные через API ChatGPT.

Использование собственных скриптов

Скрипты сохраняются в папке /modules/scripts/. Вы можете просто скопировать туда свой скрипт. В файле ghidra_pilot.py находится следующая функция, которая отвечает за запуск безголового скрипта Ghidra:

def exec_headless(file, script):
	"""
	Выполнить безголовый анализ Ghidra
	"""
	path = ghidra_path + 'analyzeHeadless'
	# Установка переменных
	tmp_folder = "/tmp/out"
	os.mkdir(tmp_folder)
	cmd = ' ' + tmp_folder + ' TMP_DIR -import'+ ' '+ file + ' '+ "-postscript "+ script +" -deleteProject"	

	# Запуск Ghidra с указанным файлом и скриптом
	try:	
		p = subprocess.run([str(path + cmd)], shell=True, capture_output=True)
		os.rmdir(tmp_folder)

	except KeyError as e:
		print(e)
		os.rmdir(tmp_folder)

Использование довольно прямолинейно: вы можете создать свой собственный скрипт, а затем добавить функцию в ghidra_pilot.py, например:

def yourfunction(file):
	try:
		# Настройка скрипта
		script = "modules/scripts/your_script.py"
	
		# Запуск функции exec_headless в новом потоке
		thread = threading.Thread(target=exec_headless, args=(file, script))
		thread.start()
		thread.join()
	except Exception as e:
		print(str(e))

Файл cli.py отвечает за интерфейс командной строки и позволяет добавлять аргументы и связанные команды следующим образом:

analysis_parser.add_argument('[-ShortCMD]', '[--LongCMD]', help="Ваше сообщение справки", action="store_true")

Вклад в проект

  • Скрипты/СКРИПТЫ/СКРИИИИИПТЫ: Этот инструмент задуман как набор инструментов, позволяющий пользователям легко сохранять и запускать свои собственные скрипты. Очевидно, что вы можете внести свой вклад в виде любых скриптов (все интересное будет одобрено!).
  • Оптимизация: Любые виды оптимизации приветствуются и будут почти автоматически утверждены и включены в каждый релиз. Хорошие идеи: улучшение параллельной обработки, очистка кода и общее улучшение.
  • Анализ вредоносного ПО: Это большая область, с которой я не знаком. Любой аналитик вредоносного ПО, желающий внести свой вклад, может предложить идеи, скрипты или даже напрямую закоммитить код в проект.
  • Формирование отчетов: Я не инженер по визуализации данных. Если кто-то желает улучшить или внести свой вклад в эту часть, это будет очень хорошо.

Предупреждение

The xmlrpc.server module is not secure against maliciously constructed data. If you need to parse 
untrusted or unauthenticated data see XML vulnerabilities.

Для получения дополнительной информации о Bushido Security посетите наш веб-сайт: https://www.bushido-sec.com/.

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