Опубликован анализ и подробности 0day CVE-2012-4792 в Internet Explorer 6-8

В самый разгар подготовки к новогодним праздникам хакеры решили выпустить эксплойт для новоиспеченной уязвимости CVE-2012-4792, которая затрагивает 32-битные браузеры Internet Explorer 6-8 во всех линейках Windows от Windows XP до Windows 7. В злодеянии подозревают китайских хакеров, якобы совершивших атаку на сайт совета по международным отношениям.

Экспертам из Лаборатории Касперского удалось получить ссылку на работающий эксплойт и провести детальный анализ работы. Схема работы выглядит следующим образом:

1. Сначала пользователь попадает на страницу exploit.html.Скрипт проверяет версию браузера, наличие Flash плагина и системный язык. Если браузер не является IE8, или в системе не установлено Flash, или системный язык не является китайским, английским, японским или русским, то скрипт прекращает свою работу. Далее скрипт загружает с помощью XMLHttpRequest файл под названием xsainfo.jpg, и если файл был успешно скачан, то осуществляются проверки на наличие Windows XP, либо Windows 7. Причем в случае с Windows 7 также необходимо, чтобы присутствовал либо пакет Office 2007/2010, либо версия Java Runtime Environment 1.6. Этот софт необходим эксплойту для обхода DEP и ASLR. Если эти требования выполнены, то на страницу вставляется флеш-ролик today.swf и iframe news.html.

2. Флеш-ролик выполняет роль «заполнителя» памяти: он размещает в памяти процесса Internet Explorer множество копий шеллкода стандартным HeapSpray методом.

3. После того как память оказывается заполнена, управление передается на скрипт страницы news.html. Этот скрипт, снова используя XMLHttpRequest, загружает, расшифровывает и исполняет содержимое файла robots.txt, в котором как раз содержится эксплойт для Internet Explorer.

4. Когда зловред перебирает загруженные модули, он ищет не только kernel32.dll, но также еще prloader.dll, входящий в состав KIS, и ccVrTrst.dll (от Symantec). Если шеллкод обнаруживает загруженные антивирусные модули, то он прекращает работу, не совершив ничего вредоносного.

5. Если же антивирусных модулей не было и инициализация прошла успешно, шеллкод копирует из кеша Internet Explorer загруженную ранее «картинку» и расшифровывает, получая на выходе вредоносный DLL файл, на который впоследствии передается управление через LoadLibraryA.