RUS  ENG
Полная версия
ЖУРНАЛЫ // Записки научных семинаров ПОМИ // Архив

Зап. научн. сем. ПОМИ, 2023, том 530, страницы 38–50 (Mi znsl7431)

Python fuzzing for trustworthy machine learning frameworks

[Фаззинг Python для надежных фреймворков машинного обучения]

I. Yegorovab, E. Kobrinba, D. Paryginaab, A. Vishnyakovba, A. Fedotovab

a Ivannikov Institute for System Programming of the RAS
b Lomonosov Moscow State University

Аннотация: Обеспечение безопасности и надежности сред машинного обучения имеет решающее значение для создания надежных систем на базе искусственного интеллекта. Фаззинг – популярная техника в жизненном цикле разработки безопасного программного обеспечения (SSDLC), которая может использоваться для разработки безопасного и надежного программного обеспечения. Популярные платформы машинного обучения, такие как PyTorch и TensorFlow, сложны и написаны на нескольких языках программирования, включая C/С++ и Python. Мы предлагаем конвейер динамического анализа для проектов Python с помощью набора инструментов Sydr-Fuzz. В нашем конвейере есть фаззинг, минимизация корпуса, сортировка сбоев и сбор покрытия. Классификация сбоев и оценка их серьезности являются важными шагами, гарантирующими, что наиболее критические уязвимости будут устранены оперативно. Кроме того, предлагаемый конвейер интегрирован в GitLab CI. Чтобы выявить наиболее уязвимые части фреймворков машинного обучения, мы проанализировали их потенциальные поверхности атаки и разработали цели фаззинга для PyTorch, TensorFlow и связанных с ними проектов, таких как h5py. Применяя наш пайплайна динамического анализа к этим целям, мы смогли обнаружить 3 новые ошибки и предложить исправления для них. Библ. – 35 назв.

Ключевые слова: фаззинг, доверенный ИИ, фреймворки машинного обучения, TensorFlow, PyTorch, Python, искусственный интеллект, анализ ошибок, динамический анализ, жизненный цикл разработки надёжного ПО, SSDLC, компьютерная безопасность.

УДК: 004.852

Поступило: 06.09.2023

Язык публикации: английский



© МИАН, 2024