Skip to content

Repository files navigation

scripts — наработки для пентеста

Личный набор Python-утилит и заготовок для тестирования веб-приложений и сервисов: слепые SQL-инъекции, получение RCE (PHP/FTP/SSTI), command injection, обход авторизации, готовые эксплойты под известные CVE и шпаргалки с payload'ами.

Каждый собственный скрипт снабжён подробным комментарием-докстрингом в начале файла: что делает, зачем, где применимо, как запускать, ограничения. Сторонние инструменты (со своими README/LICENSE) описаны ниже, но их код не изменялся.

⚠️Только для авторизованного использования. Инструменты предназначены для собственных стендов, CTF и пентеста по письменному согласованию с владельцем системы. Использование против чужих систем без разрешения незаконно.

Многие скрипты писались под конкретные учебные стенды (CTF/лаборатории), поэтому часть значений (URL, схемы БД, имена таблиц/параметров, маркеры успеха, IP листенера) захардкожена/замаскирована — перед применением к своей цели их нужно поправить. IP реального listener'а в примерах замаскирован (195.58.x.x).


1.SQLI — SQL-инъекции (blind: Boolean / Time / Error / UNION)

СкриптЧто делаетТехника
test.pyФлагман: тулкит — фаззинг параметров (многопоточно), детект инъекции, извлечение БД/таблиц/колонок/данных, меню атакBoolean / Time / UNION
happy_hack.pyАвто-обёртка над sqlmap: DBMS → БД → таблицы → колонки → авто-дамп кредовчерез sqlmap
perebor_name_bd_universal_metod.pyСам подбирает рабочий метод и извлекает имя БДunion/boolean/error/time
perebor_name_bd_universal_metod_s_knopkoy.pyТо же + конструктор запроса (кавычки/оператор/комментарий/кнопка, детект text/count)union/boolean/error/time
perebor_name_bd_Boolean-Based Blind.pyИмя БД по маркеру ответаBoolean-Based
perebor_name_table_Time-Based Blind.pyИмена таблиц схемыTime-Based
perebor_kolonok_v_table.pyИмена колонок таблицыTime-Based
podbor_znacheniya_id.pyЗначение поля по id (LENGTH → посимвольно)Time-Based
podbor_znacheniya_id_Time-Based Blind.pyдубликат предыдущегоTime-Based
tablenamebd.pyИмя одной таблицы (мини-версия)Boolean (||)
slqi1_hard.pyДамп таблицы через инъекцию в cookie (колонки+данные по ASCII)Boolean-Based
slqi2_hard.pyДамп users в форме логина + обход авторизации admin через UNIONBoolean + UNION
zagolovki.pyПечать HTTP-заголовков (HEAD) — разведка
proverkahead.pyCTF-поиск флага cdb{} в методах/заголовках/параметрах/путях/кукахfuzzing

2.PHPI — PHP-инъекции / вебшеллы

ОбъектЧто делает
created_file.pyЭксплойт ProFTPD mod_copy (CVE-2015-3306): без auth пишет backdoor.php в webroot и проверяет RCE. ⚠ Создаёт вебшелл
wso-webshell-master/Сторонний PHP-вебшелл WSO (файловый менеджер, выполнение команд, БД). Пароль по умолчанию ghost287. Для загрузки после RCE

3.CMDi — Command Injection

СкриптЧто делает
1.F_perebor_paramenra.pyОбёртка ffuf: перебор имён GET-параметров с payload /etc/passwd (поиск LFI/Path Traversal). Нужен ffuf + SecLists
2.F_proverka_simvol.pyКарта фильтра символов (что режет WAF), затем подбор рабочего разделителя команд (;, |, &&, $(), %0a…) только из разрешённых символов

4.obhod_autorizac — Обход авторизации

СкриптЧто делает
F_serialize_auth.pyДекод PHP-сериализованной cookie (URL+base64) → подмена роли в поле auth с пересчётом длины → кодирование обратно. Privesc user → admin/root, если cookie без подписи/HMAC

5.systemexploit — эксплойты под сервисы/CVE

ОбъектЧто делаетCVE
ftp21/create_backdoor.pyШаг 1: заливка вебшелла через ProFTPD mod_copyCVE-2015-3306
ftp21/ftp21.pyШаг 2: интерактивный шелл к залитому backdoor.php
phpMailer/40974.pyPHPMailer RCE → reverse shell (публичный PoC anarc0der)CVE-2016-10033
phpMailer/40974_serveo_AUTO.pyТо же, интерактивная версия (ввод цели/хоста/порта, serveo-туннель, рандом UA)CVE-2016-10033
joomla/CVE-2017-8917-Joomla/Сторонний: SQLi в Joomla! 3.7.0 (TryHackMe Dailybugle)CVE-2017-8917
struts-pwn/Сторонний (Mazin Ahmed): RCE в Apache Struts (S2-045)CVE-2017-5638

Папки .../reports/, .../Result/, *.json — артефакты запусков по учебным стендам (целевые адреса — приватные 172.23.x.x).

os — Повышение привилегий (PEASS-ng)

Пост-эксплуатация: автоматический поиск путей эскалации до root/SYSTEM. Сторонний набор PEASS-ng (MIT), подробности — в os/.

ОбъектИнструментОС
os/linpeas/linPEAS (linpeas.sh, linpeas_small.sh)Linux / Unix / macOS
os/winpeas/winPEAS (winPEAS.bat + download-exe.sh для .exe)Windows

Корневые файлы

ФайлНазначение
scan_SSTI.pyСканер SSTI (Jinja2/Twig/Freemarker/Mako): детект движка {{7*7}} → генерация RCE-payload → выполнение команды
xss_payload.txtКоллекция XSS-payload'ов (обходы фильтров, кодировки, события, SVG/JS)
revers_shell.txtШпаргалка: reverse shell one-liner + трюк с base64 для обхода фильтров

Зависимости

pip install requests requests_toolbelt lxml termcolor colorama
# для отдельных инструментов: sqlmap, ffuf, SecLists (/usr/share/seclists)# os/ (PEASS-ng): готовые бинарники/скрипты, зависимостей не требуют

Типовой рабочий процесс (blind SQLi)

  1. zagolovki.py / proverkahead.py — разведка.
  2. test.py или perebor_name_bd_universal_metod*.py — найти параметр/метод, вытащить имя БД.
  3. perebor_name_table_*perebor_kolonok_v_table — таблицы и колонки.
  4. podbor_znacheniya_id / slqi*_hard — дамп нужных значений.
  5. happy_hack.py — если проще довериться sqlmap.

Наработки @Fnay1. Материалы — для легального пентеста, обучения и CTF.

About

🧰 Коллекция скриптов и утилит с описанием что делает и зачем

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages