Атаковать антивирус можно чистыми файлами. И это работает

МЕНЮ


Главная страница
Поиск
Регистрация на сайте
Помощь проекту
Архив новостей

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



Это Let IT be!

История, которая попала в Reuters в 2015 году и до сих пор кочует по докладам про ML-безопасность. Не вирус, не эксплойт, не нулевой день. Просто рабочие, ничем не примечательные исполняемые файлы заливают в VirusTotal с пометкой «вредоносный». Один движок проглатывает разметку. Через перекрёстный обмен данными за ним подтягиваются остальные. И у пользователей по всему миру антивирус начинает удалять нормальный софт.

Сразу оговорка для аккуратности: история вышла как обвинение бывших сотрудников Касперского в адрес работодателя, сама компания всё отрицала, доказанным «инцидентом» в юридическом смысле это не стало. Но как иллюстрация механики атаки — она почти учебная. Дмитрий из Анодаты разбирал её во второй лекции цикла по безопасности ML именно поэтому: атакуют не код антивируса. Атакуют цепочку доверия между вендорами и обучающие выборки, которые из этой цепочки растут.

И вот тут начинается интересное. Если на минуту отвлечься от антивирусов, оказывается, что ML-модель в проде — это не «искусственный интеллект», а конкретная поверхность атаки. Со своими классами уязвимостей, которые уже отрисованы в OWASP ML Top 10 и в NIST AI 100-2. Если коротко, атаки делятся на «до деплоя» (когда злоумышленник дотягивается до данных или процесса обучения) и «после» (когда у него есть только API).

До деплоя — data poisoning. Подмена меток в публичном датасете. В ImageNet порядка десяти тысяч классов, и руками их никто перед дообучением не пересматривает. Достаточно вшить класс с битой разметкой — и модель в проде уже не та, что в тестах. Отдельный подвид — backdoor через outsource обучения. Если модель учится в чужом облаке или собирается из подмоделей нескольких участников федеративного обучения, скомпрометировать достаточно одного. Пример из лекции — три госпиталя, которые по закону не могут обмениваться картами пациентов и поэтому учат подмодели локально. Один из них взломан — отравлена общая модель, и никто этого даже не увидит сразу.

После деплоя — четыре сценария. Model extraction: дёргаешь API, собираешь пары «вход — выход», обучаешь свою копию. Никакой математики. Дмитрий приводил кейс российского классифайда, который таким образом реконструировал, как другой крупный сервис автоматически замазывает номера машин на фото. Загрузили картинки, получили обратно, обучили реплику, дальше её можно изучать уже как whitebox. Evasion — те самые adversarial examples с шумом, который не видно глазу, но классификатор уверенно даёт другой ответ. На слайдах эффектно, в проде — тяжелее, потому что нужен либо доступ к архитектуре сети, либо очень много запросов к API. Membership inference: по поведению модели определить, был ли конкретный человек в обучающей выборке. На модели кредитного скоринга это значит «брал ли он раньше кредит» — без доступа к базе банка. И model inversion: из чёрного ящика восстановить характерные черты лица из обучающего датасета. На слайде у лектора — пара картинок: справа оригинал, слева реконструкция, мужчина узнаваем.

Отдельная история — extraction обучающих данных из языковых моделей. Это уже не теория. Carlini с коллегами в 2021 году показал на GPT-2, что специально подобранными промптами из модели достаются куски тренировки: email-адреса, имена, ники, телефоны, UUID, фрагменты кода. Каждый из них встречался в обучающем корпусе ровно один раз. Чем больше модель — тем больше она запоминает. Если у вас в проде что-то дотюнено на внутренней переписке, на тикетах поддержки или на логах с PII — стоит хотя бы подумать, что произойдёт, если кто-то начнёт целенаправленно тянуть из модели именно эти данные.

В лекции есть и анти-хайповый момент, который я бы отдельно подчеркнул. Дмитрий говорит, что большинство «страшных» атак из академических статей в проде воспроизводятся плохо: на университетских кластерах нет ни лимитов API, ни промышленного контроля доступа, ни ансамблей. По его оценке, на градиентные атаки приходится не больше 15% от того, что встречается в реальной индустрии — это его рабочая эвристика, не цифра из NIST. Но направление мысли понятное: настоящий риск чаще не в красивом adversarial-шуме, а в скучных вещах. Кривая разметка, протекающие API, дрифт данных, который никто не мониторит.

Полная лекция — у Дмитрия из Анодаты, вторая часть цикла по безопасности ML. Там же — про дифференциальную приватность, водяные знаки в моделях (тот самый трюк Netflix с «Заклятием 2») и реальный список инструментов: IBM ART под LF AI, Evidently, Seldon Alibi.

И вопрос в зал. У кого в проде уже ловили что-то такое — поплывшую модель из-за дрифта, странные запросы к API, которые выглядят как сбор пар «вход — выход», утечки PII через autocomplete? Интересно, на чём чаще обжигаются — на классике (poisoning, дрифт) или на чём-то менее ожидаемом.


Телеграм: t.me/ainewsline

Источник: vk.com

Комментарии: