Согласно отчету Google Project Zero, в Apple Safari уже в третий раз исправляют одну и ту же уязвимость, которая изначально была обнаружена в 2013 году, затем вновь проявилась в 2016 году после обновления кода, а теперь была обнаружена и исправлена снова.

Проблема, о которой идет речь, отслеживается под идентификатором CVE-2022-22620 (8,8 балла по шкале CVSS) и представляет собой use-after-free баг в компоненте WebKit. Уязвимость может использоваться для выполнения произвольного кода, и в начале февраля 2022 года Apple выпустила патчи для этой проблемы в Safari, iOS, iPadOS и macOS, предупредив, что уязвимость уже могла находиться под атаками.

«Уже почти середина 2022 года, а мы, похоже, наблюдаем тренд на такие “зомби-уязвимости”, — пишет Мэдди Стоун (Maddie Stone), ведущая исследовательница команды Google Project Zero — Злоумышленникам не нужны новые ошибки, чтобы эффективно атаковать пользователей с помощью 0-day, вместо этого они могут использовать уязвимости, тесно связанные с ранее обнаруженными ошибками».

В прошлом году Стоун уже писала о том, что четверть всех уязвимостей нулевого дня, замеченных Google Project Zero в 2020 году, оказалась тесно связана со старыми уязвимостями, информация о которых была раскрыта публично. Как правило, такое происходит из-за неполного исправления багов.

Тем не менее, ситуация с Safari немного отличается. В этом случае Apple полностью исправила проблему в 2013 году, но патч был «испорчен» в 2016 году, после реструктуризации кода.

«Мы не знаем, как долго злоумышленники эксплуатировали эту уязвимость, но известно, что уязвимость присутствовала в коде (опять) в течение пяти лет: с декабря 2016 года по январь 2022 года», — пишет Стоун.

Эксперт рассказала, что оригинальная проблема 2013 года и родственная ей ошибка, обнаруженная в этом году, связаны с History API и могли быть использованы с помощью специально подготовленного веб-контента для удаленного выполнения произвольного кода.

«Это та же ошибка, но ее срабатывание достигается другим путем. Вот почему тестовый кейс 2013 года не приводил к сбою той версии WebKit, которая должна быть уязвима для CVE-2022-22620», — объяснила исследовательница.

По мнению Стоун, рефакторинг кода является одной из основных проблем, стоящих перед разработчиками. Дело в том, что разработчикам и командам безопасности нужно время для проверки исправлений, особенно тех, которые относятся безопасности.

«В данном случае, спустя девять лет после того, как уязвимость была отсортирована, исправлена, а патч протестирован и выпущен [в релиз], весь процесс пришлось повторить снова, только на этот раз под давлением продолжающейся эксплуатации», — резюмирует Стоун.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии