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

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

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

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

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

Категории

Все категории
Loading categories
sickle-pdk — Sickle - Набор для разработки полезных нагрузок | Kitploit
Инструменты/GitHubGitHub/wetw0rk/sickle-pdk
Фреймворки для эксплойтовГенерация полезной нагрузкиЭксплуатацияОбратная инженерияАнализ Бинарных ФайловРазработка Полезной Нагрузки
GitHubwetw0rk/sickle-pdk

sickle-pdk

Sickle - Набор для разработки полезных нагрузок

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

Популярное

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

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

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

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

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

Sickle - Набор для разработки полезных нагрузок

alt text

Sickle — это инструмент, который я изначально разработал, чтобы повысить свою эффективность как в разработке, так и в понимании шелл-кода. Однако в процессе разработки и использования он превратился в комплект для разработки полезных нагрузок. Хотя текущие модули в основном ориентированы на ассемблер, этот инструмент не ограничивается только шелл-кодом.

В настоящее время Sickle может помочь в следующем:

  • Преобразование инструкций ассемблера в машинный код (опкоды)
  • Выполнение байт-кода, включая сгенерированные полезные нагрузки
  • Форматирование опкодов для целевого языка
  • Определение недопустимых символов
  • Линейная дизассемблера
  • Сравнение (diffing)

Генерация шелл-кода

Sickle поддерживает генерацию шелл-кода через Keystone Engine. Так как это недавно добавленная функция, поддержка полезных нагрузок ограничена. Однако цель — добавить базовый reverse shell для каждой архитектуры и платформы.

alt text

Сравнение (Diffing)

Sickle включает модуль "diffing", изначально предназначенный для анализа заглушек шелл-кода. Оригинальный режим "asm" выполняет линейное сравнение результатов дизассемблирования отдельно на уровне ассемблера и опкодов.

alt text

Кроме того, Sickle предлагает различные режимы для выполнения сравнения, что делает его полезным не только для разработки шелл-кода.

alt text

Выполнение шелл-кода

Одна из частых задач — тестирование вашего шелл-кода. Этот процесс обычно включает следующие шаги:

  1. Скомпилировать код на ассемблере.
  2. Извлечь шелл-код и отформатировать его для выбранной обёртки.
  3. Скомпилировать обёртку.
  4. Выполнить обёртку.

Хотя эти шаги могут показаться незначительными, при частом повторении они отнимают много времени. Sickle упрощает процесс, автоматически оборачивая шелл-код для быстрого тестирования, а модуль "run" в настоящее время поддерживает как Windows, так и Unix-системы.

alt text

Дизассемблирование

Sickle также может преобразовывать бинарный файл в извлечённые опкоды (шелл-код), а затем транслировать их в машинные инструкции (ассемблер). Обратите внимание, что этот процесс работает только с сырыми бинарными файлами и в настоящее время выполняет дизассемблирование линейным способом через Capstone.

alt text

В приведённом выше примере модуль "disassemble" дизассемблирует reverse shell, разработанный Стивеном Фьюером, в ассемблер.

Извлечение шелл-кода

Извлечение шелл-кода было первым модулем или, скорее, основной функциональностью Sickle, поскольку опкоды интерпретируются по-разному в зависимости от используемой обёртки. JavaScript, например, хранит и интерпретирует шелл-код не так, как программа на C.

alt text

Возможно, главным вдохновением для этого был msfvenom.

Определение недопустимых символов

Хотя это менее распространено в 64-битных эксплойтах, могут быть случаи, когда использование определённых символов ограничено. Именно здесь модуль "pinpoint" проявляет себя наилучшим образом, поскольку он напрямую определяет и выделяет инструкции ассемблера, ответственные за обнаруженные недопустимые символы.

alt text

Модульная архитектура

Изначально этот инструмент представлял собой один большой скрипт. Однако по мере его развития я обнаружил, что с каждым обновлением приходится заново изучать код. Чтобы решить эту проблему, Sickle теперь использует модульный подход, позволяющий добавлять новые функции с минимальными затратами времени на повторное изучение дизайна инструмента.

$ sickle-pdk -l

  Shellcode                              Ring Description
  ---------                              ---- -----------
  windows/x64/virtualalloc_exec_tcp       3   A lightweight stager that connects to a handler via TCP over IPv4 to receive and execute shellcode
  windows/x64/egghunter                   3   Egghunter based on Hell's Gate and NtProtectVirtualMemory
  windows/x64/virtualalloc_exec_https     3   A lightweight stager that connects to a handler over HTTPS to receive and execute shellcode
  windows/x64/exec                        3   Executes a command on the target host
  windows/x64/reflective_pe_loader        3   Stageless Reflective PE Loader that takes an x64 binary and executes it in memory
  windows/x64/shell_reverse_tcp           3   Reverse Shell via TCP over IPv4 that provides an interactive cmd.exe session
  windows/aarch64/shell_reverse_tcp       3   Reverse Shell via TCP over IPv4 that provides an interactive cmd.exe session
  windows/x86/shell_reverse_tcp           3   Reverse shell via TCP over IPv4 that provides an interactive cmd.exe session
  windows/x64/kernel_token_stealer        0   Token stealing shellcode for privilege escalation
  windows/x64/kernel_sysret               0   Generic method of returning from kernel space to user space
  windows/x64/kernel_ace_edit             0   SID entry modifier for process injection
  windows/x86/kernel_token_stealer        0   Token stealing shellcode for privilege escalation
  linux/x64/memfd_reflective_elf_tcp      3   Staged Reflective ELF Loader via TCP over IPV4 which executes an ELF from a remote server
  linux/aarch64/memfd_reflective_elf_tcp  3   Staged Reflective ELF Loader via TCP over IPv4 which executes an ELF from a remote server handler
  linux/aarch64/shell_reverse_tcp         3   Reverse Shell via TCP over IPv4 that provides an interactive /bin/sh session
  linux/x86/execve                        3   Executes a shell session such as /bin/sh
  linux/x86/shell_reverse_tcp             3   Reverse shell via TCP over IPV4 that provides an interactive /bin/sh session

  Architectures
  -------------
  aarch64
  x64
  x86

  Modules       Description
  -------       -----------
  disassemble   Simple linear disassembler for multiple architectures
  handler       Module for handling payload distribution and session management
  asm_shell     Interactive assembler and disassembler
  diff          Bytecode diffing module for comparing two binaries (or shellcode)
  pinpoint      Highlights opcodes within a disassembly to identify instructions responsible for bad characters
  run           Wrapper used for executing bytecode (shellcode)
  format        Converts bytecode into a respective format (activated anytime '-f' is used)
  badchar       Produces a set of all potential invalid characters for validation purposes
Скачать инструмент