14.07.2009

Уязвимости нулевого дня и защита от текущих угроз

В этой статье речь пойдет об уязвимости в Microsoft Office Web Components ActiveX компоненте и других уязвимостях нулевого дня.

Марчук Валерий
Редактор SecurityLab.ru, MVP in Enterprise Security

Введение

Уязвимость нулевого дня или 0-day – это ранее неизвестная уязвимость, которая эксплуатируется злоумышленниками в сетевых атаках. Подобные уязвимости мы оцениваем как критические и рекомендуем всем читателям немедленно принимать меры по их устранению.

В этой статье речь пойдет об уязвимости в Microsoft Office Web Components ActiveX компоненте и других уязвимостях нулевого дня.

Уязвимости нулевого дня в 2006-2009 гг.

В период с 2006 по июль 2009 года было обнаружено 24 уязвимости нулевого дня. Из них 19 уязвимостей в продуктах Microsoft.

Уязвимости нулевого дня за 2006-2009 гг, статистика SecurityLab.ru
Рис.1 Уязвимости нулевого дня за 2006-2009 гг, статистика SecurityLab.ru

Как видно на Рис. 1, количество уязвимостей нулевого дня в первом полугодии 2009 года превышает общее количество уязвимостей, обнаруженных в 2007 и 2008 годах. Это свидетельствует о повышении интереса злоумышленников к подобным уязвимостям. Не исключено, что именно финансовый кризис стал этому причиной.

Уязвимость

Месяц выхода

Дней до выхода исправления

2006

Выполнение произвольного кода в Microsoft Word

Май

25

Множественные уязвимости в Microsoft Excel

Июнь

24

Переполнение буфера в службе Server в Microsoft Windows

Август

0*

Переполнение буфера в Ichitaro Document Viewer

Август

0*

Выполнение произвольного кода в Microsoft Office

Сентябрь

35

Выполнение произвольного кода в Microsoft Visual Studio WMI Object Broker ActiveX компоненте

Ноябрь

41

Выполнение произвольного кода в Microsoft Word

Декабрь

64

2007

Выполнение произвольного кода в Microsoft Word

Январь

18

Множественные уязвимости в Microsoft Word

Февраль

81

Уязвимость при обработке анимированного курсора в Microsoft Windows

Март

4

2008

Выполнение произвольного кода в Microsoft Access Snapshot Viewer ActiveX компоненте

Июль

100

Выполнение произвольного кода в Microsoft Word

Июль

34

Множественные уязвимости в Microsoft Visual Basic ActiveX компонентах

Август

117

Выполнение произвольного кода в WordPad и Office Text Converters

Декабрь

125

Выполнение произвольного кода в Microsoft Internet Explorer

Декабрь

7

2009

Множественные уязвимости в Adobe Reader и Acrobat

Февраль

19

Выполнение произвольного кода в Microsoft Office Excel

Февраль

49

Выполнение произвольного кода в продуктах JustSystem Ichitaro

Март

0*

Выполнение произвольного кода в Microsoft Office PowerPoint

Апрель

49

SQL-инъекция в PJBlog3

Май

67 **

Выполнение произвольного кода в Microsoft DirectX

Июль

46 **

Загрузка произвольных файлов в FCKeditor

Июль

3

Выполнение произвольного кода в Microsoft DirectShow MPEG2TuneRequest ActiveX

Июль

8 **

Выполнение произвольного кода в Microsoft Office Web Components Spreadsheet ActiveX компоненте

Июль

1 **

* - количество дней эксплуатации уязвимости до выхода исправления определить не удается
** - уязвимость не устранена в настоящее время

На момент написания статьи не устранено 4 уязвимости, из них 3 уязвимости в продуктах Microsoft и одна в PJBlog3.

Временное решение по устранению уязвимостей

  • Уязвимость в Microsoft Office Web Components Spreadsheet ActiveX компоненте

Уязвимость существует из-за ошибки проверки границ данных в методе msDataSourceObject() в Office Web Components Spreadsheet ActiveX компоненте. Удаленный пользователь может с помощью специально сформированного Web сайта вызвать переполнение стека и выполнить произвольный код на целевой системе. В настоящий момент в публичном доступе находится 3 варианта эксплоита к этой уязвимости.

Уязвимые приложения:

  • Microsoft Office XP Service Pack 3
  • Microsoft Office 2003 Service Pack 3
  • Microsoft Office XP Web Components Service Pack 3
  • Microsoft Office 2003 Web Components Service Pack 3
  • Microsoft Office 2003 Web Components for the 2007 Microsoft Office system Service Pack 1
  • Microsoft Internet Security and Acceleration Server 2004 Standard Edition Service Pack 3
  • Microsoft Internet Security and Acceleration Server 2004 Enterprise Edition Service Pack 3
  • Microsoft Internet Security and Acceleration Server 2006
  • Internet Security and Acceleration Server 2006 Supportability Update
  • Microsoft Internet Security and Acceleration Server 2006 Service Pack 1
  • Microsoft Office Small Business Accounting 2006

В качестве временного решения для устранения уязвимости мы рекомендуем деактивировать уязвимый ActiveX компонент. Для этого установите Compatibility Flags в DWORD значение 0x00000400 для ключей

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{0002E541-0000-0000-C000-000000000046}

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{0002E559-0000-0000-C000-000000000046}

Или скачайте и запустите .msi файл (http://go.microsoft.com/?linkid=9672747).

  • Выполнение произвольного кода в Microsoft DirectShow MPEG2TuneRequest ActiveX

Уязвимость существует из-за ошибки проверки границ данных при обработке потокового видео в BDATuner.MPEG2TuneRequest.1 ActiveX компоненте (msVidCtl.dll) в Microsoft DirectShow. Удаленный пользователь может с помощью специально сформированного Web сайта вызвать переполнение стека и выполнить произвольный код на целевой системе.

Уязвимости подвержены:

  • Microsoft Windows XP
  • Microsoft Windows 2003

Для устранения уязвимости следует деактивировать уязвимый ActiveX компонент. Microsoft выпустила утилиту, деактивирующую CLSID, относящиеся к Microsoft Video ActiveX компоненту. Скачать .msi файл можно по ссылке:
http://go.microsoft.com/?linkid=9672398

Проактивная защита

В качестве проактивной защиты мы рекомендуем администраторам осуществить следующие действия:

  • Заблокировать доступ к доменным именам, с которых устанавливается вредоносное ПО. Инструкции по настройке DNS серверов и список доменов для блокирования можно найти в блоге по адресу http://www.securitylab.ru/blog/personal/tecklord/9228.php
  • Осуществлять мониторинг сетей на предмет попыток эксплуатации уязвимостей. Пример правил обнаружения уязвимостей для Snort IDS:
    • alert tcp $EXTERNAL_NET $HTTP_PORTS -> $HOME_NET any (msg:"Microsoft OWC Spreadsheet 0-day Exploit Attempt"; flow:from_server, established; content:"0002E559-0000-0000-C000-000000000046"; nocase; pcre:"/<OBJECTs+[^>]*classids*=s*[x22x27]?s*clsids*x3as* x7B?s*0002E559-0000-0000-C000-000000000046/si";  classtype:attempted-user; sid:3000900; rev:1;)
    • alert tcp $EXTERNAL_NET $HTTP_PORTS -> $HOME_NET any (msg:"Microsoft OWC Spreadsheet 0-day Exploit Attempt"; flow:from_server, established; content:"0002E541-0000-0000-C000-000000000046"; nocase; pcre:"/<OBJECTs+[^>]*classids*=s*[x22x27]?s*clsids*x3as* x7B?s*0002E541-0000-0000-C000-000000000046/si"; classtype:attempted-user; sid:3000901; rev:1;)
    • alert tcp $EXTERNAL_NET $HTTP_PORTS -> $HOME_NET any (msg:"Possible MSVIDCTL.dll exploit attempt"; flow:to_client,established; content:"|00 03 00 00 11 20 34|"; content:"|ff ff ff ff 0c 0c 0c 0c 00|"; within:70; classtype:trojan-activity; reference:url,www.securitylab.ru/vulnerability/382197.php; sid:3000902; rev:1;)
    • alert tcp $EXTERNAL_NET $HTTP_PORTS -> $HOME_NET any (msg:"Possible MSVIDCTL.dll exploit attempt"; flow:to_client,established; content:"|00 03 00 00 11 20 34|"; content:"|ff ff ff ff 0c 0c 0c 0c 00|"; within:70; classtype:trojan-activity; reference:url,www.securitylab.ru/vulnerability/382197.php; sid: 3000903; rev:1;)

Заключение

Еще только середина июля, а мы уже наблюдаем 4 уязвимости нулевого дня -  это максимальное количество уязвимостей нулевого дня, обнаруженных в течении одного месяца за последние 4 года. Очень хочется надеяться, что июль 2009 является исключением и подобного более не повториться. Сегодня Microsoft планирует выпустить исправление для уязвимости в Microsoft DirectShow MPEG2TuneRequest ActiveX компоненте. Следите за публикацией уязвимостей на SecurityLab.ru.

comments powered by Disqus