Одолел ли Adobe Reader X новый эксплойт?

Одолел ли Adobe Reader X новый эксплойт?

В четверг, 3 февраля, произошло знаменательное событие: последний выпуск программного продукта Adobe Reader X успешно отразил атаку со стороны вредоносного PDF-файла, массово распространявшегося в мусорной корреспонденции. Однако ни антивирусные эксперты, ни специалисты Adobe до сих пор так и не могут точно определить, благодаря чему эксплойт потерпел поражение.



Первыми соответствующий вопрос подняли представители исследовательской лаборатории компании Invincea. Они подтвердили, что при открытии опасного объекта в Reader X эксплойт не сработал, однако в целом у них сложилось впечатление, будто пользователей спасло вовсе не новое средство защиты просмотрщика ("песочница"), а техническое несовершенство атакующего кода: вроде бы он был нацелен на поражение предыдущих версий Reader - 8 и 9.


Следом этим же вопросом задались специалисты Sophos, которые детально изучили как сам вредоносный PDF-файл, так и результаты его открытия в различных версиях Reader. По итогам исследования консультант Чет Висневски смог уверенно заявить, что эксплойт нацелен на уже закрытую уязвимость, существовавшую в прежних версиях просмотрщика, но, как и сотрудники Invincea, не сумел точно сказать, кого же следует благодарить за неэффективность атакующего кода в Reader X.


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


В конечном счете г-н Висневски ограничился предположением, что с учетом тех вредоносных действий, которые злоумышленники намеревались совершить с помощью опасного объекта, технология виртуализации Adobe Reader X все-таки обеспечила бы защиту, будь эксплойт направлен именно против этой версии продукта. "Однако в любом случае это победа Adobe - ведь все-таки в отношении Reader X атакующий код оказался бессилен", - заключил эксперт.


После этого с Sophos связались специалисты самой Adobe, которые запросили подробную информацию о вредоносном файле и об уязвимости, для эксплуатации которой объект был создан. Они провели свое собственное внутреннее исследование, однако тоже не смогли однозначно подтвердить, что именно "песочница" остановила атаку. Представитель компании ограничилась комментарием:


"Исходя из описания эксплойта, и, в частности, из того факта, что он пытается загрузить и отправить на исполнение вредоносный код, мы можем заключить, что безопасная среда предотвратила бы успешное совершение этих действий - подобная активность входит в число блокируемых операций, - даже если бы целевая уязвимость присутствовала в коде Adobe Reader X".


Также пресс-секретарь подчеркнула, что с момента выхода десятой версии Reader сообщений о преодолении или обходе виртуализационной защиты просмотрщика ни разу не поступало.


В итоге вопрос так и остался открытым. Стоит, однако, заметить, что г-н Висневски охарактеризовал Reader X как "самую защищенную версию программы", а также призвал всех без исключения пользователей этого продукта обновиться до десятого выпуска и следить за выходом обновлений к нему.


Computerworld

Расширения Chrome могут слить секреты URL через атаку по стороннему каналу

Как оказалось, расширения Chrome можно использовать для слива кодов авторизации, сеансовых ID и других секретов из URL любой открытой вкладки. Никаких специальных разрешений для этого не понадобится, только доступ к declarativeNetRequest API.

Этот механизм, пришедший на смену webRequest API, позволяет расширениям сообщать браузеру, что следует изменить или заблокировать на загружаемой странице (заголовки, реклама, трекеры).

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

Исследователь Луан Эррера (Luan Herrera) обнаружил, что блокировку, диктуемую правилами, Chrome производит почти мгновенно, за 10-30 мс, а остальные запросы выполняются дольше (~50-100ms) — из-за сетевых подключений. Эту разницу во времени расширение может использовать для бинарного поиска с целью посимвольного слива URL.

// extensions/browser/api/web_request/extension_web_request_event_router.cc:1117-1127
case DNRRequestAction::Type::BLOCK:
  ClearPendingCallbacks(browser_context, *request);
  DCHECK_EQ(1u, actions.size());
  OnDNRActionMatched(browser_context, *request, action);
  return net::ERR_BLOCKED_BY_CLIENT;

Оракул для подобной тайминг-атаки строится с использованием chrome.tabs.reload для перезагрузки страницы и перехватчика chrome.tabs.onUpdated, помогающего отследить событие status === "complete". Замер времени между reload и завершением загрузки покажет, заблокирован запрос или успешно обработан.

Повторение проверок и бинарного поиска позволяет получить полный URL (с довеском после «?»), затратив на каждый знак строки несколько прогонов. Таким образом, можно незаметно для пользователя украсть включенные приложением в адрес секреты — токены OAuth и сброса пароля, API-ключи, ссылки на контент, закрытый для поисковых систем.

Проверка PoC проводилась на Windows 11 24H2 с использованием Chrome разных версий:

  • 144.0.7559.97 (Stable)
  • 145.0.7632.18 (Beta)
  • 146.0.7647.4 (Dev)
  • 146.0.7653.0 (Canary)

В Google подтвердили возможность подобной атаки по стороннему каналу, но заявили, что решить проблему нереально.

RSS: Новости на портале Anti-Malware.ru