Началось формирование ASan-сборок Firefox для выявления проблем при работе с памятью
Как сообщает opennet.ru в рамках проекта ASan Nightly разработчики Mozilla начали публикацию ежедневно обновляемых сборок Firefox, собранных с AddressSanitizer для выявления проблем в процессе работы с памятью, в том числе вызванных обращением к областям памяти после их освобождения (use-after-free) и различными вариантами переполнения буферов и стека.
Сборки примечательны включением автоматической отправки уведомлений о выявленных проблемах. Более того, на автоматически создаваемые уведомления распространяется действие программы выплаты вознаграждения за выявление уязвимостей. Т. е. пользователь может просто использовать браузер обычным образом, а в случае возникновения нештатной ситуации при просмотре какого-то сайта, например, краха, будет отправлено уведомление о проблеме, за которое пользователь может получить денежное вознаграждение в случае, если проблема будет признана уязвимостью.
Размер вознаграждения может составить от 500 до 3000 долларов, в зависимости от опасности проблемы. Для участия в программе выплаты вознаграждения пользователь должен идентифицировать себя, указав свой email в поле asanreporter.clientid через интерфейс about:config (если email не будет указан отчеты будут отправляться анонимно, а присужденное вознаграждение будет рассматриваться как пожертвование проекту).
В качестве причины создания отдельной ASan-сборки называется желание восполнить недостаток информации, присылаемой в результате отчетов о крахах - подобные отчеты часто указывают на наличие потенциальной уязвимости, но причину краха не всегда удается оперативно выявить из-за отсутствия необходимых отладочных данных. Например, в обычных сборках очень трудно локализовать проблемы use-after-free, так как крах обычно происходит значительно позднее выполнения кода с ошибкой при освобождении памяти.
Из-за необходимости сохранения всех освобожденных блоков сборка ASan потребляет заметно больше памяти по сравнению со штатными сборками, поэтому для комфортной работы рекомендуется 16 Гб ОЗУ и ежедневный перезапуск браузера. ASan-сборка пока доступна только для Linux. С точки зрения производительности ASan-сборока незначительно отличается от обычных ночных сборок.