Google выпустила инструмент OSS-Fuzz для постоянного fuzz-тестирования Open Source-проектов

Google выпустила инструмент OSS-Fuzz для постоянного fuzz-тестирования Open Source-проектов

1 декабря компания Google представила OSS-Fuzz – новый инструмент, разработанный в рамках Core Infrastructure Initiative (CII) для постоянного тестирования базового свободного программного обеспечения по технике fuzzing.

«Недавние истории из мира ИТ-безопасности подтверждают, что ошибки вроде переполнения буфера или use-after-free [обращения к памяти после её освобождения] могут иметь серьёзные и далекоидущие последствия, когда происходят в критически важном Open Source-софте. Эти ошибки не только серьёзны, но и сложны в обнаружении путём аудита кода, даже для опытных разработчиков. И тогда приходит на помощь fuzz testing. Техника fuzzing, генерируя случайные входные данные для проверяемой программы, быстро и последовательно выявляет ошибки и помогает их устранять», — поясняют назначение OSS-Fuzz разработчики из Google.

На данном (первом) этапе существования OSS-Fuzz, имеющего статус бета-версии, для реализации основной техники используется библиотека libFuzzer, которую в Google также применяют для fuzz-тестирования различных компонентов веб-браузера Chrome. Ей помогают утилиты Sanitizers, вместе с которыми инструмент помогает выявлять: проблемы в безопасности (переполнения буфера, use-after-free, плохие приведения типа, переполнения integer), баги в безопасности (утечки памяти, out-of-memory, сбои в утверждениях assertions) и иногда даже бреши в логике. Официально поддерживается код на языках C и C++ с примечанием, что «другие языки, поддерживаемые в LLVM, тоже могут работать».

С помощью OSS-Fuzz, который выполняет около 4 триллионов тестов в неделю, уже было обнаружено 150 багов в популярных Open Source-проектах. Разработчики Google призывают сделать fuzzing «стандартной частью разработки Open Source-проектов» и говорят о желании работать с широким сообществом разработчиков и тестеров, чтобы обнаружить и исправить ошибки в критически важных свободных приложениях, библиотеках и API.

Для запуска OSS-Fuzz подготовлены сценарии его развёртывания в Docker-контейнерах, реализована интеграция с Jenkins CI. В исходниках проекта, опубликованных на GitHub, представлен код на shell, Python и C++. Лицензия — Apache License 2.0.

Среди Open Source-проектов, уже принятых в репозиторий OSS-Fuzz для проверки кода, числятся coreutils, util-linux, zlib и libarchive, libxml2, libyaml, BoringSSL и OpenSSL, SQLite3 и PostgreSQL, Tor, FreeType 2, FFmpeg и многие другие.


Запись в группу: https://iteducenter.ua/apply

Наши контакты:

Тел.: [открыть контакты](044) 537-86-76, [открыть контакты](093) 47-5555-0, [открыть контакты](096) 99-99-560

Вебсайт: www.iteducenter.ua

Vkontakte: https://vk.com/iteducenter

Facebook: https://www.facebook.com/iteducenterua                           

Google Plus: https://plus.google.com/+IteducenterUaKiev


Оставить комментарий

Пожалуйста, введите Ваше имя
Пожалуйста, введите комментарий.
1000 символов

Пожалуйста, введите email
или Отменить

Другие статьи в категории Новости