
Примечание: это перевод свежего поста из блога Mozilla о том, что дало использование ИИ для поиска уязвимостей в Firefox. Ранее на схожие темы уже высказывались мейнтейнеры Linux, но пост Mozilla интересен общим оптимистичным прогнозом для индустрии.
С февраля команда Firefox непрерывно работает с передовыми ИИ-моделями, чтобы выявлять и устранять скрытые уязвимости в браузере. Ранее мы уже писали о нашем сотрудничестве с Anthropic по сканированию Firefox с помощью Opus 4.6, благодаря чему были исправлены 22 критические ошибки в Firefox 148.
Далее в рамках сотрудничества с Anthropic мы смогли применить к Firefox раннюю версию Claude Mythos Preview. И выпущенная на этой неделе версия Firefox 150 включает исправления 271 уязвимости, которые были выявлены в ходе этого тестового использования.
Сейчас такие возможности становятся доступны всё большему числу специалистов по безопасности, и многие команды сейчас испытывают то же головокружение, которое испытали мы, когда впервые обратили на это внимание. В 2025 году для закалённого временем проекта даже одна такая уязвимость стала бы поводом для «красной тревоги», а когда их обнаруживается столько сразу — задумываешься, возможно ли вообще поспевать за этим.
Но наш опыт звучит обнадёживающе для команд, которые избавляются от головокружения и приступают к работе. Вам может понадобиться пересмотреть приоритеты всего остального, чтобы сосредоточиться на этой задаче бескомпромиссно, но при этом есть свет в конце туннеля. Мы очень гордимся тем, как наша команда справилась с этим вызовом, и другие тоже справятся. Наша работа еще не закончена, но мы переломили ситуацию и можем увидеть будущее, которое гораздо лучше, чем просто «попытки не отставать». У стороны защиты наконец-то появился шанс одержать решительную победу.
До сих пор отрасль в основном сражалась с угрозами безопасности «вничью». Поставщики критически важного программного обеспечения с интернет-подключением, вроде Firefox, относятся к безопасности чрезвычайно серьёзно, у таких целые команды каждое утро просыпаются с мыслью о безопасности пользователей. Однако мы все давно молчаливо признавали, что свести количество уязвимостей к нулю — цель нереалистичная. Вместо этого мы стремились сделать их настолько дорогостоящими, чтобы только злоумышленники с практически неограниченными бюджетами могли себе их позволить, и чтобы не лишиться такого актива, им бы не хотелось с лёгкостью к нему прибегать.
Это связано с тем, что сейчас в сфере безопасности доминируют наступательные методы: поверхность атаки не бесконечна, но достаточно велика, чтобы её было сложно защитить всесторонне с помощью имеющихся у нас инструментов. Это дает злоумышленникам асимметричное преимущество, поскольку им достаточно найти всего лишь одну брешь в защите.
Мы используем принцип глубокой защиты (defense-in-depth), применяя целый ряд перекрывающихся слоев защиты, но ни один из них не является непробиваемым. Firefox запускает каждый веб-сайт в отдельной песочнице, но злоумышленники пытаются сочетать баги в коде рендеринга с багами в песочнице, чтобы выйти в более привилегированный контекст. Мы лидируем в отрасли по работа над Rust и его внедрением, но и мы не можем позволить себе остановить всю работу, чтобы переписать десятилетия кода на C++, особенно учитывая, что Rust устраняет лишь определённые классы уязвимостей (просто очень распространённые).
Мы сочетаем инженерию глубокой защиты с внутренней «красной командой» (red team), которой поручено быть на острие технологий автоматизированного анализа. До недавнего времени это были в основном методы динамического анализа вроде фаззинга. Фаззинг довольно полезен, но некоторые части кода сложнее подвергнуть ему, чем другие, что приводит к неравномерному покрытию.
Элитные специалисты находят ошибки, которые фаззеры не могут обнаружить, логически анализируя исходный код. Это эффективно, но отнимает много времени и ограничивается дефицитом человеческой экспертизы. Еще несколько месяцев назад компьютеры были совершенно неспособны на это, а теперь они преуспевают в этом. У нас есть многолетний опыт анализа работы лучших в мире исследователей в области безопасности, и Mythos Preview обладает точно такими же возможностями. Пока что мы не обнаружили ни одной категории или степени сложности уязвимостей, которые могут найти люди, но не может найти эта модель.
В краткосрочной перспективе это может пугать, но в конечном итоге это отличная новость для стороны защиты. Разрыв между ошибками, обнаруживаемыми машинами, и ошибками, обнаруживаемыми людьми, играет на руку злоумышленнику, который может сконцентрировать многомесячные затратные усилия людей на поиске одной-единственной ошибки. Устранение этого разрыва подрывает долгосрочное преимущество злоумышленника, делая все обнаружения недорогими.
Обнадёживает также то, что мы не увидели ни одной ошибки, которую не смог бы обнаружить высококлассный живой исследователь. Некоторые комментаторы прогнозируют, что будущие модели ИИ обнаружат совершенно новые формы уязвимостей, которые выходят за пределы нашего нынешнего понимания, но мы так не думаем. Программное обеспечение, такое как Firefox, разработано модульным образом, чтобы люди могли оценивать его корректность. Оно сложное, но не произвольно сложное.
(Есть риск, что кодовые базы начнут превосходить человеческое понимание из-за широкого использования ИИ в процессе разработки, усложняя ошибки параллельно с возможностями их обнаружения (или даже быстрее). Понятность для человека — это важное свойство, которое необходимо сохранять, особенно в критически важном программном обеспечении, вроде браузеров и операционных систем.)
Дефектов конечное число, и мы вступаем в мир, где наконец-то сможем найти их все.
ссылка на оригинал статьи https://habr.com/ru/articles/1026390/