AIKraft/Skills/stack-overflow-and-rop

stack-overflow-and-rop

Использует переполнение стека и ROP для перехвата управления потоком в бинарных файлах Linux. Применяется при эксплуатации уязвимостей через ret2libc, ret2csu, ret2dlresolve или SROP.

yaklang official Другое ★ 2.4k

Что делает навык

Набор экспертных техник эксплуатации уязвимостей стека, включающий классическое переполнение буфера, построение цепочек ROP, ret2libc, ret2csu, ret2dlresolve, SROP, pivot стека и обход canary. Решает задачу перехвата управления потоком выполнения в бинарных файлах Linux.

Когда применять

  • Эксплуатация классического переполнения буфера для получения контроля над RIP.
  • Использование техники ret2libc для вызова системных функций (например, system) без выполнения собственного кода.
  • Применение ret2csu или ret2dlresolve для обхода ограничений и выполнения произвольных действий.
  • Использование SROP (Sigreturn Oriented Programming) для изменения состояния процесса.
  • Обход защиты Canary и других механизмов защиты бинарных файлов.

Как работает

  1. Анализ уязвимости и выбор подходящей техники (ret2libc, ret2csu, ret2dlresolve, SROP) в зависимости от доступных гаджетов и защит.
  2. Построение цепочки ROP с учетом ограничений среды и необходимости обхода защит (NX, ASLR, PIE, RELRO).
  3. Выполнение обхода canary, если он требуется для успешной эксплуатации.
  4. Использование pivot стека для перемещения управления в контролируемую область памяти.
  5. Запуск финальной цепочки для достижения цели (RCE или изменение состояния).

Примеры запросов агенту

Как использовать ret2libc для получения shell в бинарном файле Linux?
Построй цепочку ROP для обхода защиты Canary и вызова system.
Примени технику SROP для изменения состояния процесса при эксплуатации уязвимости.

Описание составлено по SKILL.md навыка, сверено 07.10.2026.

Как подключить

1Скачать навык
# возьмите папку навыка «stack-overflow-and-rop» из репозитория: # https://github.com/yaklang/hack-skills
2Положить папку с SKILL.md к навыкам ассистента
# положите папку навыка туда, где ассистент ищет skills: cp -r stack-overflow-and-rop/ ~/.claude/skills/stack-overflow-and-rop/

Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.