Приватность

Модель угроз локального ИИ: от чего он вас не защищает

Локальность снимает облачный класс рисков, оставляет нетронутым другой и часть рисков прямо ухудшает — концентрацией архива, открытым портом модели и отсутствием того, кто заметит взлом. Таблица угроз и минимальный набор мер.

Тезис «локально — значит безопасно» удобен нам самим, и именно поэтому его стоит разобрать честно. Локальность действительно снимает целый класс рисков. Она же оставляет нетронутым другой класс и — что обсуждают реже — часть рисков ухудшает: концентрирует данные в одном месте, добавляет сетевую службу без аутентификации и убирает того, кто заметил бы взлом.

Это не аргумент в пользу облака. Это условие, при котором локальность действительно даёт то, что обещает.

#Короткий ответ

Локальность решает вопрос «кто ещё имеет доступ к моим данным по умолчанию» и не решает вопрос «насколько защищена машина, на которой они лежат». Второй вопрос после перехода на локальное хранение становится единственным — и целиком вашим.

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

#Таблица угроз

Три отметки: локальность помогает, не помогает, ухудшает. Смотреть надо на нижнюю треть — верхнюю все и так знают.

Угроза Локальность
Утечка на стороне облачного провайдера Помогает: провайдера нет
Использование ваших данных для обучения Помогает: получателя нет
Запрос данных у провайдера третьей стороной Помогает: запрашивать не у кого
Смена условий или закрытие сервиса Помогает: копия работает без вендора
Кража выключенного ноутбука Не помогает: решается шифрованием диска
Вредонос под вашей учётной записью Не помогает: доступ к базе такой же, как у приложения
Посторонний за разблокированной машиной Не помогает: архив открывается без пароля
Фишинг и кража ключа провайдера Не помогает: ключ лежит в вашей базе
Концентрация данных в одном месте Ухудшает: весь архив на одном диске вместо фрагментов у разных сервисов
Открытая сетевая служба модели Ухудшает: появляется порт, которого раньше не было
Обнаружение взлома Ухудшает: у провайдера есть мониторинг, у вас — нет
Потеря данных от отказа диска Ухудшает: резервирования нет, если вы его не сделали
Устаревшие зависимости и обновления Ухудшает: обновляетесь вы, а не команда эксплуатации

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

#Разбор трёх рисков, которые локальность добавляет

#Концентрация

В облачном сценарии ваши данные размазаны: переписка у одного сервиса, документы у другого, календарь у третьего. Каждая утечка даёт фрагмент.

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

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

#Открытый порт модели

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

Последствия варьируются от «сосед по сети гоняет вашу видеокарту» до «кто угодно из интернета шлёт запросы к вашей модели», если порт оказался проброшен через маршрутизатор. Как настраивать доступ по сети и чем его ограничивать — в отдельном гайде про Ollama по сети.

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

#Отсутствие того, кто заметит

У облачного провайдера есть команда, мониторинг и обязанность уведомлять о нарушениях. У вас нет ничего из этого. Компрометация домашней машины обнаруживается в среднем тогда, когда что-то ломается заметным образом, — то есть иногда никогда.

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

#Минимальный набор мер

Восемь пунктов. Первые четыре обязательны, остальные — по мере серьёзности того, что лежит в архиве.

  1. Шифрование тома — BitLocker, FileVault или LUKS. Закрывает самый вероятный бытовой сценарий; что именно оно защищает, а что нет, разобрано в статье про шифрование данных ассистента.
  2. Блокировка экрана при отходе с коротким таймаутом. Даёт больше, чем любая настройка шифрования.
  3. Порт модели закрыт снаружи. Проверяется попыткой обратиться к нему с другого устройства в сети.
  4. Резервная копия по расписанию, зашифрованная, хранящаяся не на том же диске. Потеря данных — тоже нарушение безопасности, просто с другой стороны.
  5. Исключения и срок хранения настроены до включения захвата, а не после первой находки в архиве.
  6. Отдельный ключ провайдера с лимитом расходов вместо основного.
  7. Обновления системы и приложения ставятся. Это скучный пункт, который закрывает больше атак, чем все предыдущие вместе.
  8. Периодическая проверка исходящих соединений — раз в квартал по той же методике, что и при установке.

#Где интуиция подводит

«Нет интернета — нет угроз». Офлайн-машина уязвима к физическому доступу, к съёмным носителям и к тому, что вы на неё принесли. Отсутствие сети убирает удалённые атаки, а не все.

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

«Шифрование диска решает вопрос». Оно работает, пока машина выключена. В рабочем состоянии диск расшифрован для всех процессов, запущенных от вашего имени.

«Я никому не интересен». Массовые атаки не выбирают цель по интересности. Ноутбук с полным лайфлогом ценен сам по себе, независимо от того, кто вы.

«Локальная модель безопаснее по определению». Модель — это файл, который вы скачали из интернета, и запускающая её программа — обычное приложение со своими уязвимостями. Локальность говорит о маршруте данных, а не о качестве кода.

#Что здесь честно про нас

Основная база не зашифрована. Захват, распознанный текст, чаты и память лежат в обычном файле SQLite. Шифруются отдельные заметки и секреты владельца экземпляра, а не архив целиком.

Ключи API и токены участников хранятся в базе в открытом виде. Тот, у кого есть файл базы, видит ключ.

Отдельной защиты на просмотр архива нет. Кто сел за разблокированную машину, тот открывает таймлайн без дополнительного пароля. У части конкурирующих решений просмотр защищён биометрией; у нас — нет.

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

Проверить всё перечисленное чтением кода нельзя: репозиторий закрыт, публичной лицензии нет. Остаются внешние проверки.

#Частые вопросы

#Что опаснее — облачный ассистент или локальный?

Разные вещи. Облачный сценарий концентрирует риск на стороне провайдера, где есть профессиональная защита, но нет вашего контроля. Локальный концентрирует его на вашей машине, где есть контроль, но нет профессиональной защиты. Правильный ответ зависит от того, насколько хорошо защищена ваша машина, — и это единственный честный ответ.

#Нужен ли антивирус, если ассистент работает локально?

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

#Как понять, что порт локальной модели не торчит наружу?

Попробуйте обратиться к нему с другого устройства в той же сети по адресу вашей машины. Не отвечает — служба слушает только петлевой интерфейс. Отвечает — она открыта как минимум для локальной сети, и надо проверить, не проброшена ли она дальше на маршрутизаторе.

#Локальность защищает от изъятия устройства?

Нет, и в таблице выше эта строка честно отсутствует среди «помогает». Шифрование затрудняет доступ к выключенному устройству, но не защищает от требования выдать пароль. Криптография не решает задач, которые находятся вне её области.

#Стоит ли переходить на локальную конфигурацию, если я не готов заниматься безопасностью?

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

#Как часто пересматривать модель угроз?

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

#Вывод

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

Хотите ИИ, который помнит вас?

Persona держит контекст между чатами и работает на вашем железе — если развернуть её у себя и подключить локальную модель.

Создать аккаунт