Post Thumbnail

Trail of Bits выпустила gosentry - форк тулчейна Go, который заменяет штатный фаззинг-движок на LibAFL, добавляя возможность фаззить структуры и композитные типы напрямую, использовать грамматики для генерации корректных входных данных, а также детектировать целочисленные переполнения, data race, утечки горутин и таймауты - то есть те классы ошибок, которые стандартный go test -fuzz не ловит.

При этом все существующие testing.F-харнесы остаются совместимыми. Достаточно собрать бинарник форком и добавить несколько флагов типа --catch-races и --catch-leaks.

Уже в ходе тестирования gosentry нашел реальные баги в ethereum-optimism и revm(реализация Ethereum Virtual Machine на Rust), включая расхождения в обработке каналов и паники при неизвестном типе батча.

Похожее

Post Thumbnail

Soppo

Пятничный язык программирования! Я про него уже писал, но он продолжает развиват...

Post Thumbnail

Typescript Defer

Автор экспериментировал с добавлением оператора defer из Go в компилятор TypeScr...

Post Thumbnail

Raft сломан

Ребята из Antithesis(я хз кто это) протестировали несколько популярных реализаци...