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

TigerFS

Файловая система — это просто API. А TigerFS — это файловая система, работающая ...

Post Thumbnail

Иггдрасиль

В статье про использование Yggdrasil в качестве встраиваемой Go-библиотеки. ...

Post Thumbnail

Мультиплеер

В статье автор рассказывает про архитектуру управления состоянием своей многопол...

Post Thumbnail

httptrace

Пакет net/http/httptrace из стандартной библиотеки Go позволяет отслеживать внут...