secure-llm-auditor: поиск персональных данных в тексте
secure-llm-auditor
Однофайловый Python-скрипт, который ищет в тексте персональные данные по регуляркам, обезличивает их и пишет отчет перед отправкой промпта в ИИ
Средний риск
Средний уровень ставим, когда инструмент запускает код, ходит в сеть или читает файлы проекта. Перед установкой посмотрите, что именно он делает.
Почему такой уровень
- Читает локальные файлы, которые могут содержать реальные персональные данные, и сохраняет их фрагменты в отчеты
- Детекция по простым регуляркам может пропустить данные, полагаться на нее как на единственную проверку нельзя
Установка
Ручная установка
git clone https://github.com/alinalutz/secure-llm-auditor && cd secure-llm-auditor && pip install -r requirements.txtКлонирование и установка зависимостей colorama и pdfkit.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Скрипт audit.py читает текстовый файл и ищет по регулярным выражениям ФИО, номера паспорта, СНИЛС, ИНН и упоминания биометрии. По найденному он относит текст к уровню защищенности из постановления №1119 и категории персональных данных, заменяет найденное на маркеры вида «[ФИО УДАЛЕНО]» и проверяет, остались ли данные после замены. Результат сохраняется в markdown-отчет с датой в папке reports, при установленном pdfkit дополнительно генерируется PDF. В отчете есть справочные строки про алгоритмы ГОСТ 28147-89 и ГОСТ Р 34.10-2012, они не проверяются кодом, а просто печатаются как напоминание.
Для кого. Для разработчиков, которые вручную проверяют текст на персональные данные перед отправкой в LLM и хотят быстрый черновой скан, а не готовое юридическое заключение.
Подходит, если
- Нужно быстро проверить текстовый файл на явные признаки ФИО, паспорта, СНИЛС или ИНН перед тем, как отдать его модели
- Нужен черновой обезличенный вариант текста для эксперимента
- Нужен markdown-отчет о находке для внутреннего разбора
Не подходит, если
- Нужна юридически значимая оценка соответствия ФЗ-152 или ГОСТ Р 57580.2: скрипт не проверяет шифрование и подпись, только печатает названия алгоритмов
- Нужна точная детекция ПДн: регулярки простые и дают ложные срабатывания и пропуски
- Нужен пакет с CLI-интерфейсом, флагами и тестами: это один файл без argparse
Пример запроса к агенту
Проверь файл draft.txt на персональные данные перед тем, как я отправлю его в модельОграничения
Лицензия в репозитории не указана. Это один файл audit.py без упаковки, тестов и обработки ошибок кроме отсутствующего файла. Регулярные выражения находят русские ФИО, 10-значные номера паспорта, СНИЛС и 12-значный ИНН по формальному шаблону, без сверки контрольных сумм и без учета контекста, поэтому возможны и пропуски, и ложные срабатывания на обычных словах. Раздел ГОСТ Р 57580.2 в отчете это статичный текст, а не результат проверки. README обрывается на команде клонирования и ссылается на чужое имя репозитория. Для PDF нужен pdfkit и системный wkhtmltopdf, при их отсутствии создается только markdown.
Как отключить. Удалите локальную копию репозитория, ничего не устанавливается в систему кроме зависимостей из requirements.txt.
Проверка безопасности
- Читает локальные файлы, которые могут содержать реальные персональные данные, и сохраняет их фрагменты в отчеты
- Детекция по простым регуляркам может пропустить данные, полагаться на нее как на единственную проверку нельзя
Коротко о README
README называет проект CLI-инструментом для аудита текстов на соответствие ФЗ-152, постановлению №19/2024 и ГОСТ Р 57580.2 и перечисляет функции: детекцию ПДн, классификацию по уровню защищенности, анонимизацию, проверку перед отправкой в LLM и отчеты в markdown и PDF. Стек указан как Python 3.10+, регулярные выражения, FastAPI для будущей веб-версии и Docker для контейнеризации, но в репозитории есть только сам скрипт и накопленные тестовые отчеты. Инструкция по установке обрывается на команде git clone с плейсхолдером вместо реального имени репозитория.
Частые вопросы
Проверяет ли скрипт реальное шифрование по ГОСТ?
Нет. Строки про ГОСТ 28147-89 и ГОСТ Р 34.10-2012 в отчете это фиксированный текст, кода проверки шифрования в скрипте нет.
Что делает скрипт, если пакеты colorama и pdfkit не установлены?
colorama не влияет на работу, pdfkit отвечает только за PDF: без него сохраняется только markdown-отчет.
Похожие
Скилл аудита безопасности кода от Cloudflare: агент проходит разведку, охоту по покрытию и независимую проверку находок и выдает структурированный отчет
Открытый стек NVIDIA для запуска OpenClaw, Hermes и LangChain Deep Agents в песочницах OpenShell с сетевыми политиками и управляемым инференсом
Сканер безопасности для скиллов и MCP агентов: ищет промпт-инъекции, утечки данных и риски цепочки поставок до установки
Статический анализ кода по правилам, похожим на сам код, со встроенным MCP-сервером для AI-агентов