- PVSM.RU - https://www.pvsm.ru -

Blackhole + CVE-2012-0507 = Carberp

На этой неделе известный набор эксплойтов Blackhole обновился [1] до версии 1.2.3 и в его составе появился новый эксплойт для Java на уязвимость CVE-2012-0507 [2] (Java/Exploit.CVE-2012-0507). Первыми обратила внимание общественности на актуальность этой уязвимости компания Microsoft, которая опубликовала в своем блоге сообщение [3] об интересном способе выполнения Java-кода за пределами песочницы JRE (Java Runtime Environment).

Первые упоминания о боевом эксплойте для этой уязвимости появились от компании Immunity, которая выпустила [4] специальный модуль для своего продукта Immunity CANVAS еще в начале марта 7.03.2012. Эта уязвимость была закрыта 15 февраля в рамках критического обновления [5]от Oracle. Буквально вчера поздним вечером, на момент подготовки этой публикации, появился публичный эксплойт [6] для CVE-2012-0507 в составе Metasploit Framework. Отдельно стоит отметить его кроссплатформенность и возможность эксплуатации на системах Windows, Linux, Solaris и OSX. Последняя особенно интересна в свете увеличения количества вредоносных программ [7] для нее, распространяющихся в том числе и посредством эксплуатации Java уязвимостей. Эксплойт из Metasploit Framework выглядит очень похожим на тот, что был обнаружен в обновленном Blackhole и складывается впечатление, что он был рипнут по большей части оттуда…

В последнее время я часто писал об эксплойтах для Java и они действительно в последний год самые пробивные в инцидентах массового распространения вредоносных программ. Разработчики наборов эксплойтов, таких как Blackhole, используют только так называемые 1-day уязвимости, т.е. уже содержащие официальное исправление от разработчиков. Потому что использование 0-day слишком дорого для их целей и совершенно себя не окупает, но бывают исключения, когда 0-day попадает на паблик вместе с PoC. Использование уязвимости нулевого дня на данный момент можно чаще всего увидеть в целенаправленных атаках. Кстати, довольно занимательный пост о ценах на 0-day и карме ресечеров можно почитать тут [8].

Вернемся к нашему эксплойту, на этой неделе снова было замечено распространение Win32/TrojanDownloader.Carberp через популярные веб-ресурсы, посредством внедрения iFrame конструкций для перенаправления на ресурс с набором эксплойтов.

Первым нам попался ресурс lifenews.ru, на котором содержался следующий iFrame:

image

Как видно из внедренного кода, сразу происходила атака именно CVE-2012-0507, а доменное имя, на котором был расположен Blackhole,<> очень схоже с именем атакованного веб-ресурса. Результат выполнения кода в iFrame можно увидеть даже визуально на модифицированной оригинальной странице.

image

После этого отображается старая, но недобрая, страница ожидания и именно в этот момент происходит активная стадия эксплуатации.

image

Аналогичная атака была замечена на веб-ресурсе izvestia.ru и устанавливалась так же модификация из семейства Win32/TrojanDownloader.Carberp. Вообще первые детекты эксплуатации Java/Exploit.CVE-2012-0507 были замечены ближе к середине марта.

Полный лог событий при посещении модифицированной страницы веб-ресурса livenews.ru выглядит так:

image

В обоих случаях заражение происходило при посещении URL вида:

izvestia.ru/banners/index.php?p=55 [9]

lifenews.ru/banners/index.php?p=2 [10]

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

Кстати у читателя может возникнуть закономерный вопрос, а как же недавний шум в прессе о задержании группы кибепреступников распространявших Win32/TrojanDownloader.Carberp и зарабатывавших на мошенничестве в системах ДБО. Все верно было задержано восемь человек, которые являлись различными звеньями преступной сети и представляли собой лишь одну группу, которая работала с Carberp. Но ведь на свободе остались еще другие и естественно чуда не произошло и они не прикатили свою деятельность.

Но давайте все же вернемся к эксплойту на уязвимость CVE-2012-0507, именно он представляет наибольший интерес из всей этой атаки (Carberp был ранее известной нам модификации и лишь перепакован для обхода обнаружения). Уязвимость скрывается в реализации класса AtomicReferenceArray, в которой происходит не верная проверка на принадлежность к типу Object[]. Эта уязвимость относится к так называемому классу «Type Confusion Vulnerabilities», раньше подобные уязвимости встречались на уровне верификатора байт-кода, но сейчас они уже закрыты и коллизия находятся непосредственно в Java API. Все это позволяет выполнить специально подготовленный апплет или класс за пределами песочницы JRE.

Структура объектов в Java/Exploit.CVE-2012-0507 выглядит следующим образом:

image

Метод init() класса Ner создает объект типа AtomicReferenceArray для выполнения кода за пределами песочницы.

image

На следующем шаге выполняется метод doWork() из класса Hal, именно с помощью этого метода создается код класса, который в последствии будет выполнен за пределами песочницы.

image

Код класса, который должен выполниться за пределами песочница зашифрован простым перестановочным алгоритмом щифрования и перед выполнением происходит его расшифровывание, которое в итоге приводит к появлению DownloadAndExec, который уже за пределами изолированной среды скачивает полезную нагрузку в виде троянца Carberp в каталог вида %TEMP%vdsh89gyu<file_number> и выполняет его.

image

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

Я думаю в этом году мы еще не раз вернемся к теме эксплуатации узявимостей для платформы Java и это далеко не последняя уязвимость для нее.

Автор: Aleks Matrosov

Автор: SVH


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/java/4778

Ссылки в тексте:

[1] обновился: http://xylibox.blogspot.com/2012/03/blackhole-v123.html

[2] CVE-2012-0507: http://weblog.ikvm.net/PermaLink.aspx?guid=cd48169a-9405-4f63-9087-798c4a1866d3

[3] сообщение: http://blogs.technet.com/b/mmpc/archive/2012/03/20/an-interesting-case-of-jre-sandbox-breach-cve-2012-0507.aspx

[4] выпустила: https://www.immunityinc.com/ceu-index.shtml

[5] обновления : http://www.oracle.com/technetwork/topics/security/javacpufeb2012-366318.html

[6] эксплойт: https://community.rapid7.com/community/metasploit/blog/2012/03/29/cve-2012-0507--java-strikes-again

[7] вредоносных программ: http://blog.eset.com/2012/03/28/osxlamadai-a-the-mac-payload

[8] тут: http://asintsov.blogspot.com/2012/03/0day.html

[9] izvestia.ru/banners/index.php?p=55: http://izvestia.ru/banners/index.php?p=55

[10] lifenews.ru/banners/index.php?p=2: http://lifenews.ru/banners/index.php?p=2