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

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

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

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

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

Категории

Все категории
Loading categories
pwninit — Автоматизирует настройку заданий по эксплуатации бинарных уязвимостей: патчит ELF-бинарники, загружает подходящие линкеры, восстанавливает символы в libc и генерирует эксплойт-скрипты на pwntools. | Kitploit
Инструменты/GitHubGitHub/io12/pwninit
ЭксплуатацияОбратная инженерияСкриптинг и автоматизацияCTFЭксплуатация Бинарных Файлов
GitHubio12/pwninit

pwninit

Автоматизирует настройку заданий по эксплуатации бинарных уязвимостей: патчит ELF-бинарники, загружает подходящие линкеры, восстанавливает символы в libc и генерирует эксплойт-скрипты на pwntools.

Репозиторий
1.1k7927 дней назадПроверено Kitploit

Популярное

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

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

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

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

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

Checks Status Deploy Status

pwninit

Инструмент для автоматизации подготовки к решению задач на эксплуатацию бинарных уязвимостей

Возможности

  • Делает бинарный файл задания исполняемым
  • Скачивает линкер (ld-linux.so.*), способный загрузить предоставленный libc без segmentation fault
  • Скачивает отладочные символы и снимает strip с libc
  • Патчит бинарный файл с помощью patchelf, чтобы использовать правильные RPATH и интерпретатор для предоставленного libc
  • Заполняет шаблон скрипта решения на pwntools

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

Краткая версия

Запустите pwninit

Подробная версия

Запустите pwninit в каталоге с нужными файлами, и он определит, какие из них являются бинарным файлом, libc и линкером. Если определение неверно, вы можете указать их расположение с помощью --bin, --libc и --ld.

Собственный шаблон solve.py

Если вам не нравится шаблон по умолчанию, вы можете использовать свой. Просто укажите --template-path <path>. Формат шаблона описан в template.py. Имена привязок exe, libc и ld можно настроить с помощью --template-bin-name, --template-libc-name и --template-ld-name.

Постоянное использование собственного solve.py

Вы можете заставить pwninit автоматически загружать ваш собственный шаблон, добавив alias в ваш ~/.bashrc.

Пример
root@kitploit:~
alias pwninit='pwninit --template-path ~/.config/pwninit-template.py --template-bin-name e'

Установка

Arch Linux

Установите pwninit или pwninit-bin из AUR.

Загрузка

Вы можете загрузить статически слинкованные musl бинарные файлы со страницы релизов.

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

Выполните

root@kitploit:~
cargo install pwninit

Это поместит бинарный файл в ~/.cargo/bin.

Обратите внимание, что для сборки требуются openssl, liblzma и pkg-config.

Пример

root@kitploit:~
$ ls
hunter  libc.so.6  readme

$ pwninit
bin: ./hunter
libc: ./libc.so.6

setting ./hunter executable
fetching linker
https://launchpad.net/ubuntu/+archive/primary/+files//libc6_2.23-0ubuntu10_i386.deb
unstripping libc
https://launchpad.net/ubuntu/+archive/primary/+files//libc6-dbg_2.23-0ubuntu10_i386.deb
setting ./ld-2.23.so executable
copying ./hunter to ./hunter_patched
running patchelf on ./hunter_patched
writing solve.py stub

$ ls
hunter	hunter_patched	ld-2.23.so  libc.so.6  readme  solve.py

solve.py:

root@kitploit:~
#!/usr/bin/env python3

from pwn import *

exe = ELF("./hunter_patched")
libc = ELF("./libc.so.6")
ld = ELF("./ld-2.23.so")

context.binary = exe


def conn():
    if args.LOCAL:
        r = process([exe.path])
        if args.GDB:
            gdb.attach(r)
    else:
        r = remote("addr", 1337)

    return r


def main():
    r = conn()

    # good luck pwning :)

    r.interactive()


if __name__ == "__main__":
    main()
Скачать инструмент