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

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

Open Source-проекты, принятые в OSS-Fuzz
Open Source-проекты, принятые в OSS-Fuzz / Иллюстрация с сайта GitHub

«Недавние истории из мира ИТ-безопасности подтверждают, что ошибки вроде переполнения буфера или 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 и многие другие.

P.S. Прошлым летом организация The Linux Foundation сообщала, что The Fuzzing Project стал одним из трёх проектов, получивших финансовые средства в рамках Core Infrastructure Initiative (CII) для поддержки важных инфраструктурных Open Source-проектов.

Дмитрий Шурупов по материалам Google Online Security Blog.







Интересные новости
Незавершенная версия Windows 7 работает лучше Vista
Программист открыл заблокированные возможности Windows 7
Quick Slide Show 2.32: создание flash-презентаций
Покупатели гоняются за старыми компьютерами ради Windows XP
Визуализатор V-Ray 1.5 Service Pack 2 с поддержкой 3ds Max 2009
Блок рекламы


Похожие новости

Сем Альтман повернеться на посаду СЕО OpenAIСем Альтман повернеться на посаду СЕО OpenAI
Скандал в OpenAI: 90% працівників пригрозили перейти в MicrosoftСкандал в OpenAI: 90% працівників пригрозили перейти в Microsoft
Microsoft найняла колишнього главу OpenAIMicrosoft найняла колишнього главу OpenAI
Засновники OpenAI закликали до регулювання, щоб ШІ не захопив людствоЗасновники OpenAI закликали до регулювання, щоб ШІ не захопив людство
Гендиректор OpenAI «побоюється» ChatGPT і впевнений, що через даний ШІ зникне низка професійГендиректор OpenAI «побоюється» ChatGPT і впевнений, що через даний ШІ зникне низка професій
Більш креативна та рідше вигадує факти: OpenAI запустила нову модель модель GPT-4Більш креативна та рідше вигадує факти: OpenAI запустила нову модель модель GPT-4
Microsoft хоче інвестувати $10 мільярдів у компанію OpenAI, яка розвиває штучний інтелектMicrosoft хоче інвестувати $10 мільярдів у компанію OpenAI, яка розвиває штучний інтелект
Google випустив оновлення Chrome з режимом економії заряду батареїGoogle випустив оновлення Chrome з режимом економії заряду батареї
Google попередив користувачів про небезпеку: їм потрібно терміново оновити браузерGoogle попередив користувачів про небезпеку: їм потрібно терміново оновити браузер
Программистов из РоSSии и Беларуси отстранили от участия в конкурсе GoogleПрограммистов из РоSSии и Беларуси отстранили от участия в конкурсе Google
Последние новости

Подгружаем последние новости