OWASP Top 10 под прицелом LLM: 15 промтов для secure code review, разбора логов и Red Team-моделирования атак

Промты для пентеста и защиты кода: как с помощью ИИ провести аудит безопасности веб-приложения в 2026 году

Введение

В 2026 году LLM стали незаменимым инструментом в арсенале безопасников и разработчиков. Они не заменяют ручной пентест, но позволяют автоматизировать рутину: быстро находить уязвимости по OWASP Top 10, анализировать зависимости, разбирать логи и моделировать атаки. В этой подборке — 15 готовых промтов с примерами и оговорками, которые сэкономят часы работы. Все промты проверены на практике и могут быть скопированы в ChatGPT, Claude или любую другую модель.

1. Поиск SQL-инъекций в коде

Задача: Обнаружить потенциальные SQL-инъекции в фрагменте кода.
Промт:

Ты — эксперт по безопасности. Проанализируй следующий код на наличие SQL-инъекций. Укажи уязвимые места, объясни риск и предложи исправленный вариант с использованием параметризованных запросов.
Код:
[вставьте код]

Пример использования: Разработчик отправляет функцию на Python, которая конкатенирует строки для запроса к БД. Модель находит уязвимость и предлагает заменить на cursor.execute("SELECT * FROM users WHERE id = %s", (user_id,)).
Оговорка: LLM может пропустить сложные случаи, требуется ручная проверка.

2. Проверка на XSS

Задача: Найти места, где пользовательский ввод выводится без экранирования.
Промт:

Проанализируй код на предмет XSS-уязвимостей. Обрати внимание на вывод данных в HTML без экранирования. Предложи исправления с использованием экранирования и Content Security Policy.
Код:
[вставьте код]

Пример: В React-компоненте используется dangerouslySetInnerHTML с непроверенными данными. Модель рекомендует использовать DOMPurify.sanitize().

3. Аудит зависимостей

Задача: Выявить устаревшие библиотеки с известными CVE.
Промт:

Проанализируй список зависимостей (package.json / requirements.txt) и найди компоненты с известными уязвимостями (CVE). Предложи безопасные версии.
Список:
[вставьте список]

Пример: Модель указывает, что lodash@4.17.20 уязвим к prototype pollution (CVE-2021-23337) и советует обновиться до 4.17.21.

4. Разбор логов на подозрительную активность

Задача: Найти аномалии в логах веб-сервера.
Промт:

Проанализируй фрагмент логов и найди подозрительные паттерны: множественные 404, попытки SQL-инъекций, XSS, path traversal. Опиши возможные атаки.
Логи:
[вставьте логи]

Пример: Модель замечает строки с UNION SELECT и рекомендует заблокировать IP.

5. Моделирование атаки (Red Team)

Задача: Сгенерировать вектор атаки на основе описания приложения.
Промт:

Ты — Red Team специалист. Предложи 5 сценариев атак на веб-приложение с учётом OWASP Top 10. Опиши шаги и возможные последствия.
Описание приложения: [краткое описание]

Пример: Для интернет-магазина модель предлагает цепочку: IDOR → повышение привилегий → доступ к админке.

6. Secure Code Review для аутентификации

Задача: Проверить реализацию аутентификации.
Промт:

Проверь код аутентификации на типичные ошибки: слабое хеширование паролей, отсутствие rate limiting, небезопасные сессии. Дай рекомендации.
Код:
[вставьте код]

Пример: Модель обнаруживает использование MD5 для паролей и советует перейти на bcrypt.

7. Генерация тестовых payload'ов для XSS

Задача: Создать полезные нагрузки для тестирования.
Промт:

Сгенерируй 10 XSS-payload'ов для тестирования поля ввода, включая обход фильтров. Объясни, как каждый работает.

Пример: Модель выдаёт <img src=x onerror=alert(1)> и варианты с кодировкой.

8. Анализ конфигурации сервера

Задача: Найти небезопасные настройки.
Промт:

Проанализируй конфигурацию Nginx/Apache на предмет уязвимостей: открытые директории, отсутствие заголовков безопасности, слабые шифры.
Конфиг:
[вставьте конфиг]

Пример: Модель указывает на отсутствие add_header X-Content-Type-Options nosniff;.

9. Проверка на IDOR

Задача: Обнаружить небезопасные прямые ссылки на объекты.
Промт:

Проверь код на IDOR: есть ли доступ к объектам по идентификатору без проверки прав? Предложи исправления.
Код:
[вставьте код]

Пример: В контроллере GET /api/user/{id} нет проверки, что текущий пользователь имеет доступ к запрашиваемому id.

10. Составление отчёта об уязвимостях

Задача: Автоматически сгенерировать отчёт по найденным проблемам.
Промт:

Составь отчёт об уязвимостях на основе следующих данных. Укажи критичность, описание, рекомендации.
Данные: [список уязвимостей]

Пример: Модель формирует таблицу с CVSS-оценками и приоритетами.

11. Проверка на SSRF

Задача: Найти уязвимости Server-Side Request Forgery.
Промт:

Проанализируй код на SSRF: есть ли запросы к внешним ресурсам по пользовательскому URL без валидации? Предложи защиту.
Код:
[вставьте код]

Пример: Функция загрузки изображения по URL не проверяет домен, что позволяет обращаться к внутренним сервисам.

12. Аудит JWT

Задача: Проверить безопасность использования JWT.
Промт:

Проверь код работы с JWT: алгоритмы, срок жизни, хранение, проверка подписи. Найди уязвимости.
Код:
[вставьте код]

Пример: Модель обнаруживает, что секретный ключ захардкожен, и советует использовать переменные окружения.

13. Тестирование на path traversal

Задача: Найти уязвимости обхода директорий.
Промт:

Проанализируй код на path traversal: есть ли операции с файлами, где пользовательский ввод влияет на путь? Предложи исправления.
Код:
[вставьте код]

Пример: В функции скачивания файла параметр filename не фильтруется, что позволяет запросить ../../etc/passwd.

14. Проверка на небезопасную десериализацию

Задача: Обнаружить уязвимости десериализации.
Промт:

Найди в коде небезопасную десериализацию данных (например, pickle, Java serialization). Оцени риск RCE.
Код:
[вставьте код]

Пример: Использование pickle.loads() на пользовательских данных может привести к выполнению кода.

15. Автоматизация чек-листа OWASP Top 10

Задача: Быстро проверить приложение по всем категориям OWASP.
Промт:

Составь чек-лист для проверки веб-приложения по OWASP Top 10 (2021). Для каждой категории укажи, что проверять и какие инструменты использовать.

Пример: Модель выдаёт список: A01 – проверить контроль доступа, A02 – шифрование данных и т.д.

Заключение

Эти промты помогут автоматизировать рутинные задачи аудита, но помните: LLM не заменяют ручной пентест и требуют проверки результатов. Используйте их как первый эшелон защиты, чтобы быстрее находить очевидные проблемы и сосредоточиться на сложных атаках. Всегда тестируйте предложенные исправления в изолированной среде. Безопасность — это процесс, и ИИ здесь надёжный помощник, но не волшебная палочка.

← Все статьи

Комментарии