Промты для пентеста и защиты периметра: как провести аудит безопасности, не нанимая команду Red Team
В 2026 году утечки данных и атаки на цепочки поставок стали обыденностью. По данным Verizon DBIR 2025, 68% инцидентов связаны с человеческим фактором, а среднее время обнаружения вторжения сократилось до 21 дня. Но что делать небольшой команде, у которой нет бюджета на Red Team? Ответ — использовать LLM для автоматизации рутинных задач аудита. В этой подборке — 10 проверенных промтов, которые помогут выявить уязвимости, настроить DevSecOps и укрепить периметр без найма дорогих специалистов.
1. Аудит кода на уязвимости OWASP Top 10
Задача: Быстро проверить фрагмент кода на наличие распространённых уязвимостей.
Промт:
Проанализируй следующий код на Python на предмет уязвимостей из OWASP Top 10 (2021). Укажи тип уязвимости, строку и рекомендации по исправлению. Код:
```python
import sqlite3
def get_user(username):
conn = sqlite3.connect('users.db')
cursor = conn.cursor()
cursor.execute(f"SELECT * FROM users WHERE username = '{username}'")
return cursor.fetchone()
Пример результата: LLM определит SQL-инъекцию (CWE-89), укажет на f-строку и предложит использовать параметризованный запрос.
2. Генерация чек-листа для аудита веб-приложения
Задача: Составить план проверки безопасности по OWASP ASVS.
Промт:
Составь чек-лист из 20 пунктов для аудита безопасности веб-приложения на основе OWASP ASVS 4.0. Раздели на категории: аутентификация, управление сессиями, контроль доступа, валидация ввода. Для каждого пункта укажи уровень (L1/L2) и метод проверки.
Пример результата: Таблица с пунктами: "Проверка сложности пароля (L1)", "Защита от CSRF (L2)" и т.д.
3. Анализ конфигурации Nginx на ошибки безопасности
Задача: Выявить небезопасные директивы в конфиге.
Промт:
Проверь конфигурацию Nginx ниже на типичные ошибки безопасности: отсутствие HSTS, слабые шифры, открытые листинги директорий, небезопасные заголовки. Предложи исправления.
```nginx
server {
listen 80;
server_name example.com;
location / {
root /var/www/html;
autoindex on;
}
}
Пример результата: LLM укажет на отсутствие редиректа на HTTPS, необходимость добавления add_header Strict-Transport-Security, отключение autoindex.
4. Поиск уязвимостей в зависимостях (SCA)
Задача: Проверить список библиотек на известные CVE.
Промт:
Проанализируй список Python-пакетов с версиями на наличие известных уязвимостей (CVE). Для каждой уязвимой библиотеки укажи CVE, уровень критичности (CVSS) и версию, где уязвимость исправлена. Список:
Django==3.2.0
requests==2.25.0
pyyaml==5.3.1
Пример результата: LLM найдёт CVE-2021-33203 для Django 3.2.0 (CVSS 7.5) и порекомендует обновиться до 3.2.5.
5. Моделирование угроз (Threat Modeling) по STRIDE
Задача: Составить модель угроз для микросервисной архитектуры.
Промт:
Проведи моделирование угроз по методологии STRIDE для системы: веб-фронтенд (React), API-шлюз (Kong), сервис аутентификации (Keycloak), база данных (PostgreSQL). Опиши потенциальные угрозы для каждого компонента и контрмеры.
Пример результата: Для API-шлюза — угроза Spoofing (подделка JWT), рекомендация: проверка подписи и срока действия токена.
6. Генерация правил для WAF (ModSecurity)
Задача: Создать правила для блокировки атак на основе сигнатур.
Промт:
Напиши правила ModSecurity для блокировки SQL-инъекций и XSS в параметрах GET/POST. Используй OWASP Core Rule Set (CRS) синтаксис. Приведи пример правила с комментариями.
Пример результата: Правило SecRule ARGS "@detectSQLi" "id:1001,deny,status:403,msg:'SQL Injection'".
7. Аудит IAM-политик AWS
Задача: Найти избыточные разрешения в политике.
Промт:
Проанализируй IAM-политику AWS на предмет избыточных привилегий (принцип наименьших привилегий). Укажи, какие действия можно ограничить, и предложи исправленную версию.
```json
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "s3:*",
"Resource": "*"
}]
}
Пример результата: LLM порекомендует заменить s3:* на конкретные действия (s3:GetObject, s3:PutObject) и ограничить ресурс ARN.
8. Скрипт для автоматического сканирования (Nmap + Python)
Задача: Сгенерировать скрипт для поиска открытых портов и сервисов.
Промт:
Напиши Python-скрипт, который использует Nmap для сканирования подсети 192.168.1.0/24 на открытые порты 22, 80, 443, 3306 и выводит результаты в формате CSV. Используй библиотеку python-nmap.
Пример результата: Скрипт с nm.scan(hosts='192.168.1.0/24', ports='22,80,443,3306') и обработкой результатов.
9. Рекомендации по настройке DevSecOps пайплайна
Задача: Внедрить проверки безопасности в CI/CD.
Промт:
Предложи шаги для интеграции статического анализа (SAST) и сканирования зависимостей (SCA) в пайплайн GitHub Actions для Python-проекта. Укажи инструменты (Bandit, Safety) и пример YAML-конфигурации.
Пример результата: YAML с шагами: - name: Run Bandit и - name: Run Safety check.
10. Отчёт об инциденте (шаблон)
Задача: Создать структуру отчёта для документирования инцидента.
Промт:
Составь шаблон отчёта об инциденте безопасности, включая разделы: сводка, хронология, затронутые активы, первопричина, принятые меры, рекомендации. Приведи пример заполнения для фишинговой атаки.
Пример результата: Markdown-шаблон с полями для заполнения.
Эти промты — не замена полноценному пентесту, но они помогают быстро выявить очевидные проблемы и автоматизировать рутину. Помните: LLM может ошибаться, поэтому проверяйте рекомендации. Используйте их как первый шаг к культуре безопасности в вашей команде. Начните с аудита кода и конфигураций — это даст быстрые победы. А для глубоких знаний по DevSecOps и безопасности приходите на курсы ASI Biont, где мы разбираем реальные кейсы и практики.
Комментарии