Специалисты компании JFrog раскрыли информацию о трех критических брешах в безопасности популярной утилиты Picklescan. Данные уязвимости позволяют злоумышленникам обходить механизмы сканирования, выполнять произвольный код через ненадежные модели PyTorch и нейтрализовывать защиту инструментов безопасности. Фактически, эти недостатки создают условия для реализации атак на цепочки поставок, позволяя маскировать вредоносные файлы под безопасные компоненты.

Picklescan представляет собой утилиту с открытым исходным кодом, разработанную и поддерживаемую Матье Мэтром (известным под ником @mmaitre314). Основная функция инструмента заключается в парсинге файлов Python pickle для выявления подозрительных импортов или вызовов функций до момента их выполнения. Анализ производится на уровне байт-кода, при этом результаты сверяются с «черным списком» (blocklist) известных опасных операций. Эксперты отмечают, что использование метода блокировки известных угроз вместо разрешения только доверенных действий (allowlisting) делает систему уязвимой перед новыми векторами атак, которые разработчики не предусмотрели заранее.
Формат сериализации Pickle широко используется в сфере машинного обучения, однако он несет в себе фундаментальный риск: при загрузке файлов может автоматически запускаться произвольный код Python. Библиотека PyTorch использует этот формат для сохранения и загрузки моделей. До обнаружения ошибок стандартные меры предосторожности включали работу только с доверенными моделями или использование весов из альтернативных библиотек, таких как TensorFlow или Flax.
Первая из обнаруженных уязвимостей связана с обходом проверки расширений файлов. Злоумышленники могут подорвать работу сканера, предоставляя стандартный файл pickle, но используя расширения, ассоциированные с PyTorch, такие как.bin . Это позволяет вредоносному содержимому избежать детектирования, эксплуатируя доверие системы к определенным типам файлов.
Вторая проблема безопасности получила идентификатор CVE-2025-10156 с оценкой по шкале CVSS 9.3 / 7.5. Данная уязвимость позволяет отключить сканирование ZIP-архивов путем намеренного введения ошибки циклического избыточного кода (CRC). Механизм сканирования не может корректно обработать поврежденный архив, в результате чего содержимое пропускается без проверки на наличие угроз.
Третья и наиболее опасная уязвимость, зарегистрированная как CVE-2025-10157 (оценка CVSS 9.3 / 8.3), касается обхода проверки небезопасных глобальных переменных. Эксплуатация этого недостатка позволяет злоумышленникам обойти «черный список» опасных импортов. Это открывает прямой путь к выполнению произвольного кода в системе, на которой производится сканирование или загрузка модели.
Дэвид Коэн, исследователь безопасности из JFrog, прокомментировал серьезность ситуации, отметив потенциал для глобальных угроз. По его словам, «каждая обнаруженная уязвимость позволяет злоумышленникам уклоняться от обнаружения вредоносного ПО системой Picklescan и потенциально осуществлять крупномасштабные атаки на цепочки поставок».
Коэн также подчеркнул системную проблему отставания средств защиты от темпов развития технологий. «Библиотеки искусственного интеллекта, такие как PyTorch, становятся сложнее с каждым днем... Этот расширяющийся разрыв между инновациями и защитой оставляет организации уязвимыми», — заявил эксперт. В качестве решения проблемы предлагается внедрение «научно обоснованного прокси-сервера безопасности», созданного специалистами, понимающими логику как атакующих, так и защитников.
Проблема усугубляется тем, что архитектуры безопасности становятся уязвимыми из-за несоответствия в обработке файлов между защитными инструментами и самой библиотекой PyTorch. Упомянутые уязвимости затрагивают функциональность, которая присутствовала вплоть до версии 0.31, дата релиза которой пришлась на 9 сентября. Reliance на единственный инструмент сканирования в условиях быстро меняющегося ландшафта угроз ML-индустрии признана экспертами критическим риском.

Изображение носит иллюстративный характер
Picklescan представляет собой утилиту с открытым исходным кодом, разработанную и поддерживаемую Матье Мэтром (известным под ником @mmaitre314). Основная функция инструмента заключается в парсинге файлов Python pickle для выявления подозрительных импортов или вызовов функций до момента их выполнения. Анализ производится на уровне байт-кода, при этом результаты сверяются с «черным списком» (blocklist) известных опасных операций. Эксперты отмечают, что использование метода блокировки известных угроз вместо разрешения только доверенных действий (allowlisting) делает систему уязвимой перед новыми векторами атак, которые разработчики не предусмотрели заранее.
Формат сериализации Pickle широко используется в сфере машинного обучения, однако он несет в себе фундаментальный риск: при загрузке файлов может автоматически запускаться произвольный код Python. Библиотека PyTorch использует этот формат для сохранения и загрузки моделей. До обнаружения ошибок стандартные меры предосторожности включали работу только с доверенными моделями или использование весов из альтернативных библиотек, таких как TensorFlow или Flax.
Первая из обнаруженных уязвимостей связана с обходом проверки расширений файлов. Злоумышленники могут подорвать работу сканера, предоставляя стандартный файл pickle, но используя расширения, ассоциированные с PyTorch, такие как.bin . Это позволяет вредоносному содержимому избежать детектирования, эксплуатируя доверие системы к определенным типам файлов.
Вторая проблема безопасности получила идентификатор CVE-2025-10156 с оценкой по шкале CVSS 9.3 / 7.5. Данная уязвимость позволяет отключить сканирование ZIP-архивов путем намеренного введения ошибки циклического избыточного кода (CRC). Механизм сканирования не может корректно обработать поврежденный архив, в результате чего содержимое пропускается без проверки на наличие угроз.
Третья и наиболее опасная уязвимость, зарегистрированная как CVE-2025-10157 (оценка CVSS 9.3 / 8.3), касается обхода проверки небезопасных глобальных переменных. Эксплуатация этого недостатка позволяет злоумышленникам обойти «черный список» опасных импортов. Это открывает прямой путь к выполнению произвольного кода в системе, на которой производится сканирование или загрузка модели.
Дэвид Коэн, исследователь безопасности из JFrog, прокомментировал серьезность ситуации, отметив потенциал для глобальных угроз. По его словам, «каждая обнаруженная уязвимость позволяет злоумышленникам уклоняться от обнаружения вредоносного ПО системой Picklescan и потенциально осуществлять крупномасштабные атаки на цепочки поставок».
Коэн также подчеркнул системную проблему отставания средств защиты от темпов развития технологий. «Библиотеки искусственного интеллекта, такие как PyTorch, становятся сложнее с каждым днем... Этот расширяющийся разрыв между инновациями и защитой оставляет организации уязвимыми», — заявил эксперт. В качестве решения проблемы предлагается внедрение «научно обоснованного прокси-сервера безопасности», созданного специалистами, понимающими логику как атакующих, так и защитников.
Проблема усугубляется тем, что архитектуры безопасности становятся уязвимыми из-за несоответствия в обработке файлов между защитными инструментами и самой библиотекой PyTorch. Упомянутые уязвимости затрагивают функциональность, которая присутствовала вплоть до версии 0.31, дата релиза которой пришлась на 9 сентября. Reliance на единственный инструмент сканирования в условиях быстро меняющегося ландшафта угроз ML-индустрии признана экспертами критическим риском.