NullifAI ломает PyTorch модели на Hugging Face

Два вредоносных ML-модуля были найдены на платформе Hugging Face и описаны в отчёте под названием "Malicious ML Models on Hugging Face Leverage Broken Pickle Format to Evade Detection". Специалисты обнаружили, что оба проекта, glockr1/ballr7 и who-r-u0000/0000000000000000000000000000000000000, используют «битые» Pickle-файлы в формате PyTorch для обхода защитных механизмов.
NullifAI ломает PyTorch модели на Hugging Face
Изображение носит иллюстративный характер

Исследованием занимался специалист по кибербезопасности Карло Занки (ReversingLabs), который представил свои выводы в отчёте для The Hacker News. Вредоносная часть находилась в начале PyTorch-архива, скомпрессированного не через стандартный ZIP, а с помощью 7z.

Злонамеренный участок кода включал обратную платформо-зависимую оболочку, подключающуюся к заранее прописанному IP-адресу. Сама атака оценивается как демонстрационная, поскольку специалисты сходятся во мнении, что проект носит характер proof-of-concept, а не массового компрометирования цепочки поставок.

Техника получила название "nullifAI" и замышлялась как способ обойти инструменты защиты, в частности Picklescan. Авторы зловредных репозиториев стремились показать, что достаточно изменить схему сжатия и расположение нежелательного кода, чтобы пройти мимо стандартной проверки.

Формат Pickle издавна считается рискованным, поскольку при загрузке способен исполнять произвольный код. Эти два PyTorch-модуля хранятся в виде сжатых Pickle-файлов, где вместо полных данных по модели первой же строкой запускается вредоносная нагрузка, а затем процесс разрушается, провоцируя ошибку десериализации.

«В извлечённых из упомянутых PyTorch-архивов Pickle-файлах обнаружился вредоносный фрагмент Python-кода, расположенный в начале файла», — отметил Карло Занки. «Любопытно, что объектная сериализация, для которой обычно и применяется Pickle-файл, прерывается практически сразу после срабатывания вредоносной нагрузки, из-за чего дальнейшая декомпиляция объекта терпит неудачу».

«Причина заключается в поочерёдном выполнении опкодов Pickle. Как только в начале потока Pickle встречается вредоносный код, он успевает выполниться прежде, чем десериализация будет прервана, что не позволяет инструментам Hugging Face вовремя определить вредоносную природу модели», — добавил исследователь. После выявления этой схемы Picklescan, используемый сервисом Hugging Face, был обновлён, чтобы учитывать «битые» Pickle-файлы и сжатие через 7z.


Новое на сайте

19712Китайский спутник с «рукой осьминога» прошёл орбитальный тест дозаправки 19711Кто такие поэты и почему поэзия важна сегодня? 19710Фальшивые установщики и ISO-файлы: как киберпреступники зарабатывают на майнинге и троянах 19709Почему большие языковые модели так и не научились думать 19708WhatsApp предупредил 200 пользователей о поддельном iOS-приложении со шпионским по:... 19707Открытый код под давлением ИИ: уязвимостей стало втрое больше за один квартал 19706Мышей с диабетом первого типа вылечили, создав «смешанный» иммунитет 19705Кости для азартных игр придумали коренные американцы 12 тысяч лет назад? 19704Артемида II летит навстречу солнцу на пике его ярости 19703Комета, которая вращается задом наперёд 19702Microsoft обнаружила вредоносную кампанию с доставкой малвари через WhatsApp 19701Фишинг с динамическими PDF: как бразильская группировка атакует латинскую Америку и Европу 19700Почему блокировка AI-инструментов делает компании уязвимее, чем сами угрозы? 19699Экстремальные пожары, засухи и штормы возможны даже при умеренном потеплении 19698Крапивница от воды: редчайший диагноз, который врачи не могли разгадать
Ссылка