Команда безопасников Google призналась, что готова променять производительность браузера Chrome на защиту от ряда уязвимостей. Другими словами, в будущем интернет-обозреватель может стать медленнее, но при этом безопаснее.
В своих рассуждениях специалисты Google ссылаются на исследования, показавшие, что 70% всех проблем в безопасности связаны с памятью. В блоге эксперты перечисляют три метода, которые помогут избавить пользователей от таких багов:
- Проверка времени компиляции.
- Проверка времени выполнения.
- Использование более безопасных языков программирования.
Из-за C++ первый способ сразу отбросили, однако для проверки времени выполнения можно использовать что-то вроде MiraclePtr.
«MiraclePtr нивелирует эксплуатацию багов класса "use-after-free", поскольку позволяет отправлять в карантин память, к которой всё ещё можно получить доступ. На многих мобильных устройствах память является весьма ценным ресурсом, поэтому с карантином могут возникнуть проблемы», — пишет команда безопасности Google.
«Тем не менее у MiraclePtr всё равно есть шанс избавить нас от 50% подобных уязвимостей в Chrome, что будет просто огромным шагом на пути к безопасному браузеру».
Параллельно разработчики рассматривают возможность задействовать язык программирования Rust, чтобы в итоге всё-таки реализовать проверку компиляции. В этом случае производительность Chrome не должна пострадать.
«Мы пока ещё выясняем, можно ли грамотно использовать вместе C++ и Rust. Даже если бы мы завтра начали писать ключевые компоненты браузера на Rust, избавляться от уязвимостей пришлось бы несколько лет».