Карта цели защиты: сохранить контроль над содержимым клиентской базы данных
Для кого. Для руководителя, принимающего решение о затратах: что покупается, почему это должно сработать, как проверить результат. Подробности мер — по ссылкам на карты мер.
1. Цель защиты и её инвариант
Цель защиты: смысл клиентской базы — сведения о клиентах, сделках, контактах — извлекают только уполномоченные роли и только через предусмотренные интерфейсы.
Уровень инварианта: смысл (см. SEC-FOUND-0001). Это решающее объявление: защищается не сервер (носитель) и не файл (форма), а извлекаемое содержание. Следствие — в карту обязаны войти каналы, на которых файл никто не копирует: пересказ, фото экрана, восстановление сведений из отчётов и агрегатов.
Принцип (конститутивный): контроль потоков и интерпретаторов — смысл не покидает множество уполномоченных контекстов («не писать вниз»), а связь «форма → смысл» для всех копий вне доверенного контура разорвана и удерживается владельцем ключей.
Цена нарушения: регуляторные последствия (152-ФЗ, оборотные штрафы за утечки ПДн), потеря клиентов и переговорной позиции, шантаж. Нарушение необратимо — смысл, покинувший контур, не возвращается. Поэтому ставка на предотвращение и раннее обнаружение.
2. Каналы нарушения: откуда берётся полнота
Перечень каналов не придуман, а построен, и его полнота проверяема (метод — SEC-FOUND-0002, кратко здесь):
- По субъектам — логическая трихотомия: всякий человек либо не имеет легального доступа (группа 1), либо администрирует системы, не имея права читать данные (группа 2), либо имеет право читать (группа 3). Четвёртой категории не существует по построению.
- По представлениям — закон сохранения: извлечь смысл можно только из существующего представления. Базис каналов = инвентаризация всех представлений смысла (боевая база, реплики, бэкапы, выгрузки, отчёты и агрегаты, экраны, бумага, память сотрудников) × пути доступа к ним.
- Остаточный канал «неизвестный» — честное признание: модель неполна по определению. Он закрывается отдельным классом мер (раздел 5, контур 2).
flowchart TD
GOAL["НАРУШЕНИЕ ЦЕЛИ:<br/>смысл клиентской БД извлечён<br/>вне уполномоченных ролей и интерфейсов"]
G1["ГРУППА 1. Нет легального доступа<br/>(внешний противник)"]
G2["ГРУППА 2. Администрирует,<br/>но не вправе читать"]
G3["ГРУППА 3. Вправе читать<br/>(легитимный пользователь)"]
G0["ОСТАТОЧНЫЙ КАНАЛ<br/>(не предусмотренный моделью)"]
G1 --> K11["1.1 Через приложение<br/>(уязвимости, инъекции)"]
G1 --> K12["1.2 Украденная учётная запись"]
G1 --> K13["1.3 Прямое подключение<br/>к СУБД / серверу / сети"]
G2 --> K21["2.1 Штатный доступ администратора<br/>к данным, памяти, файлам СУБД"]
G2 --> K22["2.2 Копии формы: бэкапы, реплики,<br/>тестовые среды, выгрузки"]
G3 --> K31["3.1 Избыточный доступ:<br/>видит больше, чем нужно"]
G3 --> K32["3.2 Вынос формы обходным путём:<br/>облако, личный телефон, флешка"]
G3 --> K33["3.3 Вынос смысла без формы:<br/>фото экрана, пересказ, память"]
G3 --> K34["3.4 Инференция и агрегация:<br/>восстановление смысла из отчётов,<br/>агрегатов, «обезличенных» выгрузок"]
K11 --> GOAL
K12 --> GOAL
K13 --> GOAL
K21 --> GOAL
K22 --> GOAL
K31 --> GOAL
K32 --> GOAL
K33 --> GOAL
K34 --> GOAL
G0 --> GOAL
Каналы 3.3 и 3.4 появились в карте потому, что инвариант объявлен на уровне смысла. Карта версии 1.0, молчаливо мыслившая на уровне формы, их не содержала — это измеримый эффект методики.
Управленческий вывод: противнику достаточно одного открытого канала; бюджет на «усиление» закрытых при одном открытом потрачен впустую.
3. Структура мер по каналам
В каждом канале: несущая мера (без неё канал открыт), предпосылки (без них несущая не работает), компенсирующие (страхуют отказ несущей). Уровни доказанности эффективности: A полевые контролируемые исследования · B крупные наблюдательные данные · C консенсус, механизм понятен, измерений нет · D заявления без методологии.
Группа 1 — нет легального доступа
| Канал | Несущая мера | Док. | Предпосылки | Компенсирующие |
|---|---|---|---|---|
| 1.1 Через приложение | Контроль доступа в приложении + защита от инъекций | C | Инвентаризация всех приложений с доступом к БД | WAF C/D; минимальные права учётки приложения C |
| 1.2 Украденная учётка | MFA → SEC-CTRL-0001 | B | Парольная политика → SEC-CTRL-0002 B; защита процедуры восстановления | Мониторинг аномальных входов C |
| 1.3 Прямое подключение | Сегментация: СУБД достижима только из серверов приложений и админ-сегмента | C | Актуальная схема сети, контроль правил | Обновления СУБД/ОС C; детект сканирования C |
Группа 2 — администрирует, но не вправе читать
| Канал | Несущая мера | Док. | Предпосылки | Компенсирующие |
|---|---|---|---|---|
| 2.1 Администраторы | Шифрование на стороне приложения; ключи вне досягаемости тех, кто управляет СУБД и ОС (разрыв связи «форма → смысл») | C | Управление ключами как отдельный процесс с отдельными владельцами | PAM + независимая запись действий C. Диагноз по уровням: «прозрачное» TDE работает на уровне носителя (кража диска), инвариант сформулирован на уровне смысла против штатного интерпретатора — TDE этот канал не закрывает |
| 2.2 Копии формы | Шифрование бэкапов + маскирование в тестовых и аналитических средах | C | Инвентаризация всех представлений: реплики, DWH, выгрузки, тест | Сроки хранения и гарантированное уничтожение C |
Группа 3 — вправе читать
| Канал | Несущая мера | Док. | Предпосылки | Компенсирующие |
|---|---|---|---|---|
| 3.1 Избыточный доступ | Разграничение до need-to-know: роли + построчный/поатрибутный доступ → SEC-CTRL-0005 | C | Фактические права = модели (регулярный анализ путей доступа) | Журналирование чтения + поведенческая аналитика C |
| 3.2 Вынос формы | Снижение цены легитимного пути: рабочие инструменты удобнее обходных (закономерность среды: неудобный легитимный канал гарантированно проигрывает — Herley, Adams–Sasse) | C (сильная поведенческая база) | Знание реальных рабочих сценариев | DLP C/D — против ненамеренного выноса; против намеренного слаб по построению (контролирует форму, выносится смысл — SEC-FOUND-0001 §5.2) |
| 3.3 Вынос смысла без формы | Минимизация смысла на экране: маскирование, выдача порциями под задачу, запрет массовых «показать всё» | C | Ревизия интерфейсов и выгрузок | Осведомлённость о последствиях C. Теорема: технически канал полностью не закрывается — меры уровня носителя/формы не достают до инварианта уровня смысла; остаток страхует контур 2 |
| 3.4 Инференция и агрегация | Контроль выводимости: оценка отчётов, агрегатов и «обезличенных» выгрузок на восстановимость сведений (k-анонимность и строже) | C (механика повторной идентификации — B: Sweeney, Narayanan–Shmatikov) | Учёт агрегатов и выгрузок как представлений смысла | Ограничение детальности публикуемых агрегатов C |
Остаточный канал — неизвестный
| Канал | Закрывается | Док. |
|---|---|---|
| Не предусмотренный моделью путь | Только канало-независимым обнаружением (контур 2, раздел 5): канарейки, watermarking, мониторинг внешних площадок. Превентивных мер у этого канала не существует по определению | C |
4. Условия целостности конструкции
Каждое условие — точка управленческого контроля; нарушение любого открывает конкретный канал:
- Неизвестное представление данных (забытая выгрузка, реплика, отчёт) = открытый канал 2.2 или 3.4. Самая частая причина провала.
- Исключение из MFA «для удобства» = открытый канал 1.2 для самой ценной учётки.
- Права, не пересмотренные за год, = эрозия канала 3.1: модель на бумаге, в реальности все видят всё.
- Неудобные рабочие инструменты = гарантированно открытый канал 3.2 — это закономерность среды, а не риск.
- Ключи в руках администратора СУБД = фиктивный канал 2.1: мера оплачена, разрыв «форма → смысл» не состоялся.
- Никто не смотрит в журналы и не обслуживает канарейки = слепой контур 2, то есть незастрахованная неполнота модели.
5. Проверка: два контура обратной связи
Инвариант — утверждение обо всех путях, включая неизвестные; напрямую он не наблюдаем. Наблюдаемы попытки нарушения и состоявшиеся нарушения — отсюда два контура.
Контур 1 — упреждающий (по модели каналов)
Единица проверки: попытка нарушить инвариант через канал — не аудит наличия механизма.
| Проверка | Канал | Периодичность |
|---|---|---|
| Красная команда: получить содержимое БД, стартуя как внешний фишер и как рядовой сотрудник | 1.1–1.3, 3.1–3.2 | Ежегодно |
| Контрольная попытка администратора СУБД прочитать данные в открытом виде | 2.1 | Ежегодно |
| Инвентаризация представлений: где физически существует смысл клиентской базы | 2.2, 3.4, условие №1 | Раз в полгода |
| Анализ фактических прав: кто реально может читать (включая скрытые пути) | 3.1, 1.3 | Ежеквартально |
| Тест выводимости: восстановимы ли сведения о конкретных клиентах из выдаваемых отчётов и выгрузок | 3.4 | При каждом новом виде выгрузки + ежегодно |
| Наблюдение обходных практик: чем реально пользуются сотрудники и почему | 3.2 | Раз в полгода |
Метрика контура 1 (суррогатная): N из 9 каналов закрыто фактически. Её достоверность равна полноте модели — поэтому она не может быть единственной.
Контур 2 — результирующий (независимый от модели)
Обнаруживает состоявшееся нарушение, через какой бы канал — включая остаточный — оно ни произошло.
| Механизм | Что ловит |
|---|---|
| Канарейки: записи-маркеры в базе, обращение к которым извне сигнализирует само | Утечку содержимого любым путём |
| Watermarking выгрузок: каждая выгрузка несёт скрытую метку получателя | Источник утечки конкретной копии |
| Мониторинг внешних площадок (рынки данных, публикации) | Появление данных у внешней стороны |
Метрика контура 2 (конечная): нарушений инварианта не обнаружено за период — с явной оговоркой о чувствительности обнаружения.
Связка контуров: срабатывание контура 2 при «9 из 9 закрыто» в контуре 1 — не парадокс, а команда: модель неполна, ищи канал, пересматривай карту. Каждый инцидент классифицируется: «канал был в модели — отказала мера» (чинится мера) или «канала в модели не было» (чинится модель, версия карты повышается).
Руководителю — обе метрики. Подмена конечной суррогатной — та же ошибка, что отчёт «MFA включена, DLP куплен», этажом выше.
6. Артефакт для руководства
К карте прилагается одностраничный отчёт: цель → инвариант → 9 каналов + остаточный → статус «закрыт/открыт» по последней проверке → обе метрики → план и цена на период. Это документ, с которым исполнитель возвращается к поставившему задачу.
7. Связанные материалы
Карты мер: SEC-CTRL-0001 MFA · SEC-CTRL-0002 Парольная политика · SEC-CTRL-0005 Разграничение доступа · (в очереди: сегментация, защита сессий, шифрование и ключи, контроль выводимости, канарейки/watermarking). Фундамент: SEC-FOUND-0001 Три уровня информации · SEC-FOUND-0002 Метод декомпозиции каналов (в работе).
8. История пересмотров
| Версия | Дата | Изменения |
|---|---|---|
| 1.0 | 2026-06-09 | Первая публикация («карта защитной задачи», 8 каналов, один контур проверки). |
| 2.0 | 2026-06-10 | Переведена на полную методику. Объявлен уровень инварианта (смысл) и принцип. Добавлены каналы 3.4 (инференция/агрегация) и остаточный; 3.3 переформулирован как вынос смысла без формы. Проверка разделена на два контура с суррогатной и конечной метриками. Добавлено обоснование полноты разбиения. Диагноз TDE переписан в терминах уровней. |
Источники
- Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных»
- Sweeney L. k-Anonymity: A Model for Protecting Privacy. 2002
- Narayanan A., Shmatikov V. Robust De-anonymization of Large Sparse Datasets (Netflix Prize). IEEE S&P, 2008
- Herley C. So Long, and No Thanks for the Externalities: The Rational Rejection of Security Advice by Users. NSPW, 2009
- Adams A., Sasse M.A. Users Are Not the Enemy. Communications of the ACM, 1999
- CISA. Implementing Phishing-Resistant MFA. 2022