13 июл. 2009 г.

Fixed: HHCTRL 1903 Event Logger

Наконец-то поймал того зверя за яйца, кто вываливает мне в системный журнал каждые полчаса вот такие вот события:

Ссылка, приведенная в описании этого эвента, говорит ни много ни мало о том, что "MS05-026: Уязвимость в элементе управления HTML Help делает возможным удаленный запуск программного кода". В результате я стал security concerned и стал искать, кто же это меня хачит на моем домашнем ноутбуке.
На ноуте стоит WinXP SP3 со всеми последними апдейтами. Установлен DoctorWeb 5 с последними базами. Запускаю полное сканирование всех дисков в максимальных настройках эвристики - ничего не находит.
Окей, скачиваю широко известную в узких кругах программу SpyBot S&D - она также ничего не находит. Пробую искать троянов программой Ad-Aware, она тоже ничего страшного не находит. Иду, скачиваю демо-версию (на месяц) антивируса Касперского.
Касперский действительно находит кое-что, но это оказалось не помогло:
- сообщил мне что мой плеер Winamp (который я обновлял пару недель назад) - имеет страшную уязвимость и заставил проапгрейдиться на последнюю версию 5.56.
- vmware 5.5, из-под которой я запускаю Linux, тоже оказалось с уязвимостью
- Самый неожиданный результат сканирования касперским: оказывается, одна из программ от Adobe (Adobe Bridge) тащит с собой старую версию Adobe flash player plugin, в котором есть уязвимость. При этом Adobe Updater обновляет Flash player plugin в системных путях, но не обновляет в папке с Adobe Bridge (!) - жесть, кто вообще тестировал Adobe Updater?

Но и касперский ничего не находит. И тут я вспомнил про замечательную программу procmon.exe от компании sysinternals, которая у меня много лет входит в список любимых системных утилит. Скачал последнюю версию и обнаружил потрясающую связь с вот этим постом, взглянув на то, кто же автор этой программы. Никогда не запоминал фамилии, поэтому раньше Русинович и sysinternals/procmon у меня никогда не ассоциировались.

Итак, что же нам сказал Procmon? А он нам совершенно недвусмысленно сказал, что этот OCX контрол пытается раз в полчаса использовать не кто иной, как сам Dr.Web (!) - точнее, DrWebUpW.exe, модуль, который обновляет антивирусные базы доктора веба:



Пипец! Сам антивирус регулярно создает опасные ситуации, во время которых исполняются уязвимые части кода, которые могут привести к security issues!
На кой ляд доктор веб, при обновлении своих баз, использует эту библиотеку, которая позволяет использовать справку к программе в формате CHM?
При этом, перед тем как загрузить эту библиотеку и вызвать из нее функцию (уж не HtmlHelp() ли?), Доктор веб проверяет, не приаттачен ли к событию загрузки этой библиотеки дебаггер (!):
проверяется на существование вот этот ключ реестра:
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\hhctrl.ocx

Кажется, вот зачем апдейтер доктора веба постоянно лезет в реестр и проверяет этот ключик при выкачивании обновлений:
Evil can be done with the Image File Execution Options key. Malware can install themselves as the "debugger" for a frequently-run program (such as Explorer) and thereby inject themselves into the execution sequence.
(короче говоря, хочет быть уверенным, что скачанный файл с базами не перехвачен и не подменен вирусом... Только я ума не приложу, как можно с помощью hhctrl.ocx выкачивать апдейты из интернета..).

В процессе разборок было выяснено, что вот такой вот эксплоит на базе HHCTRL (сохранить отмеченное как sp2rc.htm в файл) доктором вебом с последними базами не опознается как опасный (вообще DrWeb не реагирует!), тогда как касперский его ловит сразу же. Касперский рулит.
Кстати, даже движок этого блога не допускает приведения текста этого эксплоита непосредственно в тексте записи (наверное тоже догадывается что этот код вредоносный).

Итак, что мы имеем? По непонятным причинам Dr.Web использует hhctrl.ocx (CLSID ADB880A6-D8FF-11CF-9377-00AA003B7A11) для того, чтобы скачивать апдейты. При этом случается неизвестная ошибка 1903 с модуле hhctrl, что подозрительно. Также мы знаем, что именно этот модуль hhctrl, будучи внедренным в html (который, возможно, скачивается в качестве апдейтов и потом парсится), позволяет закоспромизить систему...

2 комментария:

  1. У меня та же история.
    Так я не понял!? каково же решение проблемы? Деинсталл дрвеба?
    Почему на других компах это событие не возникает?
    Система на компе работает около 3-х лет переустанавливать не хочу.
    Что делать?

    ОтветитьУдалить
  2. Thank you for your sharing. I want to post quickly but I do not know the way. Your article helps me, thank you so much
    "VoIP Phone Wholesale":http://products.telecomb2b.com/internet-phones-voip.html

    ОтветитьУдалить