ClusterFuzzLite, система за организиране на тестове за размиване на код

наскоро Google представи чрез публикация в блога проектът ClusterFuzzLite, който позволява организиране на fuzzing тестове на код за ранно откриване на потенциални уязвимости в етапа на работа на системите за непрекъсната интеграция.

В момента ClusterFuzz може да се използва за автоматизиране на fuzz тестване на заявки за изтегляне в GitHub Actions, Google Cloud Build и Prow, но се очаква в бъдеще той да бъде съвместим с други IC системи. Проектът е базиран на платформата ClusterFuzz, създадена за координиране на работата на клъстерите за тестване на размиване и се разпространява под лиценза Apache 2.0.

Трябва да се отбележи, че след въвеждането от Google на услугата OSS-Fuzz през 2016 г., повече от 500 големи проекта с отворен код бяха приети в програмата за непрекъснато тестване на фазинг. От извършените проверки са елиминирани над 6.500 потвърдени уязвимости и са коригирани над 21.000 XNUMX грешки.

Относно ClusterFuzzLite

ClusterFuzzLite продължава да разработва механизми за тестване на размиване със способността да се идентифицират проблемите по-рано във фазата на партньорска проверка на предложените промени. ClusterFuzzLite вече е въведен в процесите на преглед на промените в systemd и curl проекти, и направи възможно идентифицирането на грешките, които не бяха открити в статичните анализатори и линтери, използвани в началния етап на проверка на нов код.

Днес имаме удоволствието да обявим ClusterFuzzLite, решение за непрекъснато размиване, което работи като част от работните потоци на CI/CD за намиране на уязвимости по-бързо от всякога. Само с няколко реда код, потребителите на GitHub могат да интегрират ClusterFuzzLite в своя работен процес и да улавят бъгове, преди да бъдат направени, подобрявайки цялостната сигурност на веригата за доставка на софтуер.
От стартирането му през 2016 г. повече от 500 критични проекта с отворен код бяха интегрирани в програмата на Google OSS-Fuzz, което доведе до коригиране на повече от 6.500 уязвимости и 21.000 XNUMX функционални грешки. ClusterFuzzLite върви ръка за ръка с OSS-Fuzz, откривайки грешки при регресия много по-рано в процеса на разработка.

ClusterFuzzLite поддържа валидиране на проекти в C, C ++, Java (и други базирани на JVM езици), Go, Python, Rust и Swift. Тестовете за размиване се извършват с помощта на двигателя LibFuzzer. Инструментите AddressSanitizer, MemorySanitizer и UBSan (UndefinedBehaviorSanitizer) също могат да бъдат извикани за откриване на грешки и аномалии в паметта.

От основните характеристики ClusterFuzzLite подчертава например бърза проверка на предложените промени за намиране на грешки в етапа преди приемането на кода, както и изтегляне на доклади за условията на възникване на сривове, способността да се движите към по-усъвършенствани тестове за размиване за идентифициране на по-дълбоки грешки, които не са се появили след проверка на промяната на кода, също генериране на отчети за покритие за оценка на покритието на кода по време на тестовете и модулната архитектура, която ви позволява да изберете необходимата функционалност.

Големи проекти, включително systemd и curlya, използват ClusterFuzzLite по време на преглед на код, с положителни резултати. Според Даниел Стенберг, автор на curl, „Когато човешките рецензенти се съгласят и одобрят кода и техните статични кодови анализатори и линтери не могат да открият повече проблеми, размиването е това, което ви отвежда до следващото ниво на зрялост и стабилност на кода. OSS-Fuzz и ClusterFuzzLite ни помагат да поддържаме curl като качествен проект през целия ден, всеки ден и при всеки ангажимент.

Трябва да помним, че тестовете за размиване генерират поток от всякакви произволни комбинации от входни данни, близки до действителните данни (напр. html страници с произволни параметри на маркера, файлове или изображения с необичайни заглавки и т.н.) и коригират възможните неуспехи в процеса.

Ако някоя последователност се провали или не съответства на очаквания отговор, това поведение най-вероятно показва грешка или уязвимост.

Накрая ако се интересувате да научите повече за това, можете да проверите подробностите В следващия линк.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.