Статьи · Данные и безопасность

Схема тоже чувствительна

Почему знание о структуре данных может быть опаснее самих данных — и как ИИ-системы создают новую поверхность раскрытия

~7 мин · безопасность RAG, раскрытие схемы

Организация защищает данные: шифрование, контроль доступа, журналы аудита. Но есть кое-что, что защищают хуже. Схему самих данных. Список таблиц. Имена полей. Граф происхождения данных.

Это тоже информация об организации. Иногда — более информативная, чем сами данные.

Что раскрывает схема

Одна строка DDL:

PATIENT_HIV_STATUS VARCHAR2(1)

Без единой строки данных уже ясно: организация работает с медицинскими записями и собирает информацию о ВИЧ-статусе пациентов.

Граф происхождения данных — богаче. Он показывает не только что хранится, но и как данные движутся: откуда берутся, через какие трансформации проходят, куда в итоге попадают. По нему можно восстановить бизнес-процессы организации — без доступа к самим данным.

Для конкурента, регулятора или злоумышленника это структурная карта организации. И она встроена в любую систему, которая умеет отвечать на вопросы о данных.

Почему RAG и GraphRAG создают новую поверхность раскрытия

Традиционно схема защищалась просто: нет доступа к базе — нет схемы. Системы на основе ИИ меняют это.

RAG-система над корпоративными данными работает иначе: чтобы отвечать на вопросы аналитиков, она должна проиндексировать схему. Описания таблиц, имена полей, их типы — всё это попадает в векторный индекс. Без этого система не может понять, что таблица HC_PATIENT_PROFILE — это профили пациентов, а не сотрудников.

GraphRAG идёт дальше: она строит граф из схемы и истории запросов. Узлы — таблицы и поля. Рёбра — зависимости, извлечённые из реальных SQL-запросов. Этот граф и есть структурное знание системы о данных.

Следствие: интерфейс для аналитиков становится интерфейсом для изучения схемы.

Как выглядит атака

Исследования показывают: из GraphRAG-системы можно восстановить до 83% структуры графа знаний через серию запросов на естественном языке. Без доступа к базе, без административных привилегий — только через тот же интерфейс, которым пользуется обычный аналитик.

Паттерн прост: задавать вопросы не ради ответа, а ради картирования.

«Какие таблицы содержат финансовые данные?»

«Какие поля связаны с идентификаторами сотрудников?»

«Где хранятся медицинские записи?»

Каждый ответ раскрывает фрагмент схемы. Несколько десятков вопросов — и у атакующего есть рабочая карта.

В RAG-системе механизм другой: векторный ретривер возвращает фрагменты описаний схемы в ответ на запросы. Систематически задавая вопросы в разных формулировках, можно извлекать содержимое индекса — не взламывая систему, а используя её по назначению.

Дилемма без простого выхода

Очевидное решение — убрать чувствительную схему из индекса. Не включать PATIENT_HIV_STATUS в описания, не индексировать HR_SALARY_GRADE.

Проблема: тогда система перестаёт работать на этих данных. Аналитик, который законно работает с медицинскими записями, получает систему, которая ничего не знает об интересующих его таблицах.

Это не технический компромисс — это архитектурное противоречие. Чтобы система была полезна, ей нужно знать схему. Чтобы схема была защищена, система не должна раскрывать это знание через запросы.

В традиционных системах противоречие снималось ролевым доступом: разные пользователи видели разные представления схемы. В системах на основе ИИ тот же принцип применим — но реализовать его сложнее. Векторный индекс не имеет встроенной концепции уровня доступа. Граф происхождения данных не разграничивает, кому какой фрагмент можно показать.

Откуда узнать, что утекает

Предположим, вы хотите мониторить: логировать случаи, когда система возвращает чувствительную схему в ответах. Это разумно.

Но для этого нужно заранее знать, что чувствительно. Нужно пометить: вот эти таблицы, вот эти поля — требуют защиты. Только тогда можно фиксировать, когда они появились в ретриве.

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

Это отдельная проблема, не следствие первой. Но без её решения первая не решается.

Канарейки как вопрос

Если разметка всё же есть — чувствительные элементы схемы сами становятся точками наблюдения.

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

Не нужно специальных ловушек. Нужно одно: знать что чувствительно — и фиксировать когда это появляется там, где не должно.

Но это возвращает к прежнему вопросу. Знать что чувствительно — само по себе нетривиально. Без этого знания ни детекция, ни изоляция не работают точно.

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

Читать также