PostEX: Как я в 17 лет написал AI-агента для пост-эксплуатации Windows
Что такое PostEX и зачем он нужен
PostEX — это Python-агент для пост-эксплуатационной разведки на Windows. Он собирает всё, что нужно пентестеру после получения доступа к машине: систему, привилегии, патчи, защиту, сеть, учётные данные и механизмы закрепления. Всё это упаковывается в структурированный JSON-отчёт.
Дальше — интереснее. Отчёт можно отправить в LLM через OpenRouter API (бесплатно) и получить готовый план атаки (Red Team) или аудит защиты (Blue Team) с конкретными командами и инструментами.
Проект под MIT-лицензией, код открыт. Мне 17 лет, и это моё портфолио для поступления в APU (Малайзия) на Cybersecurity.
Как я к этому пришёл
С 14 лет программирую. С 16 изучаю кибербезопасность: TryHackMe, виртуальные лабы, пентест локальных сетей. Писал стиллеры, RAT'ы, разбирал чужие трояны. Местные пентестеры подтвердили: знания есть, не хватало системного инструмента.
Каждый раз при пост-эксплуатации я делал одно и то же: whoami /priv, systeminfo, netstat, reg query, schtasks, cmdkey /list — 20 команд, которые собирают информацию по крупицам. Это занимало 15–20 минут и требовало ручного анализа. Я решил это автоматизировать.
Так появился PostEX.
Что он собирает
Скрипт запускается на Windows-машине и за 3–5 секунд собирает:
Система и привилегии:
- Хостнейм, версия ОС, сборка, архитектура, процессор
- Текущий пользователь, Integrity Level (по SID), права администратора
- UAC, список привилегий
Патчи и CVE:
- Установленные KB-обновления из реестра
- Маппинг на уязвимости: JuicyPotato (CVE-2020-0796), PrintSpoofer (CVE-2021-34527), Zerologon (CVE-2020-1472)
Защита:
- Статус Windows Defender и его исключения (пути, процессы, расширения)
- Обнаружение 60+ AV/EDR-продуктов: Kaspersky, CrowdStrike, SentinelOne, Carbon Black и другие
- Брандмауэр (Domain, Private, Public)
- AppLocker
Сеть:
- Интерфейсы, ARP-таблица, открытые порты, DNS-кэш
- WiFi-профили с паролями
- SMB-шеры
Учётные данные:
- LSASS (PID, возможность дампа)
- Сохранённые учётные данные (cmdkey)
- Базы паролей браузеров (Chrome, Edge, Firefox)
- Автологин в реестре, история RDP, история PowerShell
Персистенс:
- Автозагрузка, запланированные задачи, службы
- Доступные для записи системные папки и бинарники служб
Результат — JSON на 500+ строк.
AI-анализ
Отчёт можно отправить в любую LLM через OpenRouter API (ключ бесплатный, получается за минуту на openrouter.ai).
Я написал два промпта:
Red Team: модель получает JSON и выдаёт таблицу с векторами эскалации привилегий, доступом к учётным данным, lateral movement, defence evasion и топ-3 путей атаки с конкретными командами.
Blue Team: модель анализирует защиту и выдаёт критические уязвимости, пробелы в защите, гигиену учётных данных, сетевую экспозицию и приоритетные исправления.
На моей собственной машине AI нашёл 38 перезаписываемых сервисов с SYSTEM-правами, базу паролей Edge, Firefox-профиль с key4.db, открытый SMB на VPN-интерфейсе и выдал конкретные команды для эксплуатации. Это работает.
Технический стек
- Python 3.10+
- winreg, ctypes, psutil, subprocess, json, requests
- OpenRouter API для AI-анализа
Никаких тяжёлых фреймворков. Только стандартная библиотека + три pip-зависимости.
Аналоги
WinPEAS, Seatbelt, SharpHound собирают похожую информацию. Но никто из них не отправляет её в LLM для автоматического анализа в двух режимах. PostEX — первый инструмент, который делает полный сбор + AI-анализ в одном скрипте.
Планы
- HTML-отчёт с графикой
- Экфильтрация в Telegram/Discord
- Self-destruct mode
- Интеграция с BloodHound
- Компиляция в EXE (Nuitka)
Попробовать
bashgit clone https://github.com/Niker-lixy/postEX.gitcd postexpip install-r requirements.txtpython main.py
При запуске выберите режим (Red/Blue/Both/Skip AI) и введите API-ключ OpenRouter. По умолчанию используется бесплатная модель.
GitHub: github.com/Niker-lixy/postEX
Почему я это пишу
Я планирую поступать на Cybersecurity в APU (Малайзия). PostEX — моё портфолио. Но мне важно, чтобы инструмент был полезен сообществу. Поэтому open-source, MIT-лицензия.
Буду рад звёздам на GitHub, баг-репортам и пулл-реквестам. Если вы пентестер — попробуйте на своей лабе и напишите, чего не хватает.
Telegram: @managshop