![image](https://habrastorage.org/getpro/habr/post_images/2e3/faf/18b/2e3faf18be5c9594ae6cd172dfec4b08.png)
Вспоминания
После того, как я прочитал пост о том, как TipTop не смог посмотреть кино, я сразу же вспомнил аналогичный случай. Как-то открыв обычный mp3 файл, вместо того, чтобы началось воспроизведение, к моему удивлению, открылась неизвестная веб-страница. Самое интересное, что страница была открыта в Internet Explorer'е (несмотря на то, что по умолчанию был установлен другой браузер), а ведь на той странице, автор файла мог бы добавить и какой-нибудь специальный эксплоит для IE.В тот момент я не думал о странице с эксплоитом и вместо того, чтобы внимательно проанализировать файл и разобраться в чём проблема я просто его удалил. Единственное о чем я подумал, увидев необычное поведение системы это то, что кто-то довольно оригинально раскручивает свой сайт. Прошло уже несколько лет, но c тех пор такие случаи я не встречал. Прочитав статью о видео-вирусе я решил, что хотя бы на этот раз не упустить возможность узнать насколько безопасны являются одни из самых безобидных и распространенных файлов во всём мире.
Видео-Файл
И так как уважаемый TipTop, оставил комментарий, указав ссылку на файл, я не стал терять время даром и быстренько скачал торрент-файл. Но я был не один — одновременно со мной этот же видео-файл скачали ещё около 15 человек которые, подумал я, тоже хотят анализировать его. Но сейчас понял, что скорее всего у большинства из них были другие намерения и не знали они, что сегодня кина не будет ©.После того, как скачивание завершилось, зная что другие плееры не могут воспроизвести этот файл, сразу открыл его в Windows Media Player'е, и первое, что я увидел, было сообщение: «Download media usage rights»:
![image](https://habrastorage.org/getpro/habr/post_images/336/5bd/204/3365bd20487150dc6f036e9feb9e2a29.png)
После этого, появилось более убедительное сообщение, предлагающее скачать файл License-Installer который, между прочим, уже был проверен антивирусом и оказался на 100% чист:
![image](https://habrastorage.org/getpro/habr/post_images/244/846/1bf/2448461bfacaa8bed9bb126956d17ba9.png)
Внимательно просмотрев сообщение, нажал на кнопку 'Download Now' и в ожидание какой-либо реакции со стороны антивируса, увидел многим знакомое окошко, предлагающее скачать файл с сервера license.compress.to:
![](https://habrastorage.org/getpro/habr/post_images/f72/da6/58a/f72da658ac8b2c9ab3ab31c4a24d2e06.png)
И тут же возник первый вопрос, если на первом окошке указан сервер free-license.imgpop.com, тогда зачем этот замечательный файл, предлагает скачать лицензию с сервера license.compress.to? Чтобы выяснить в чём проблема, посетил оба сайта, в надежде найти там что-нибудь вкусненькое, но как и следовало ожидать, ничего там не обнаружил.
DRM защита
После этого, первое что пришло в голову, было «запустить сниффер», но воздержался (и правильно сделал) — решив открыть файл в Hex-редакторе. Открыл в Hex-редакторе файл, который весил 150 MB и к моему счастью, всё было очень просто, так как уже на 20-ой строке нашел вот такой кусок текста:![image](https://habrastorage.org/getpro/habr/post_images/ee7/23e/9bb/ee723e9bb7fa0ce9deec3d3cac21e00b.png)
Стало намного интересней. Открыл страницу httр://free-license.imgpop.com/venuf.php?id=Movie_0001.wmv, которая перенаправляла (HTTP/1.1 302) на страницу: httр://free-license.imgpop.com/venuf/index.htm, а там увидел знакомую картинку, только чуть побольше, да ещё и в браузере:
![image](https://habrastorage.org/getpro/habr/post_images/ae1/d78/7ab/ae1d787ab558ef256e965a172b1c1135.png)
Пока всё шло хорошо и желая немножко поэкспериментировать, решил изменить ссылку из видео-файла на своё. Но, увидев что после изменения строки даже WMP не может открыть файл и не зная что делать, спросил Google'а, не может ли он рассказать, что это за строка, WRMHEADER version='2.0.0.0', которую (помимо многих других) нашёл с помощью Hex-редактора?
![image](https://habrastorage.org/getpro/habr/post_images/5f2/fae/27c/5f2fae27c3c861f4b5cc4b06804ae3d6.png)
Ответ был короткий и ясный как дневной свет — я имею дело с DRM-защитой видео-файлов. То есть, обнаружил как с помощью легальных и довольно убедительных методов, злоумышленники успешно и с уверенностью могут распространять вредоносные файлы, так как: во-первых, ни один антивирус не обнаружит, что видео-файл заражён, а во-вторых, большинство пользователей доверяют Microsoft и однозначно будут запускать такие файлы.
Более того, WMP не единственный плеер, который может открыть DRM защищенные файлы. Полный список плееров я не нашёл, но могу с уверенностью сказать что Nero ShowTime поддерживает DRM, только в отличие от WMP он реагирует более осторожно… только если подтвердить скачивание лицензии, веб-страница открывается в IE (несмотря на то, что он не является браузером по умолчанию).
![image](https://habrastorage.org/getpro/habr/post_images/2e0/ea0/bd8/2e0ea0bd835ddde8e650ccc1c71f8e75.png)
![image](https://habrastorage.org/getpro/habr/post_images/900/d2a/f76/900d2af76794932df24280c08f0f8029.png)
А сейчас самое интересное: если изменить расширение файла из .wmv в .asf или в .wma, ничего не измениться, то есть плееры всё равно будет воспроизводить медиа-файл и что самое опасное, в большинстве случаев .wma-файлы будут открыты в Windows Media Player. Кстати, забыл сказать, после того как открыл видео-файл в Hex-редакторе, для удобства, удалил ненужные байты и в итоге размер файла стал равен 5.31KB.
Internet Explorer
Наверно, многие думают что «Опасности в этом нет! Никакие лицензии не буду скачивать! Да и вообще, причём тут Internet Explorer, WMP и видео-файлы?». Сначала я тоже так думал, ведь там есть кнопочка «Cancel», но как оказалось, опасность есть и не маленькая, а «Cancel» никого не спасет, если файл открылся в WMP. А Internet Explorer — это же браузер, программное обеспечение для просмотра веб-сайтов…Я нашёл информацию о том что можно взломать DRM-защиту, но делать этого не стал. Во-первых, не знал удастся ли изменить ссылку, а во-вторых, выбрал более легкий путь. В файле hosts добавил строку:
127.0.0.1 free-license.imgpop.com
В корень локального сервера создал файл venuf.php и с помощью WMP открыл видео-ролик — через несколько секунд появилось следующее сообщение:
![image](https://habrastorage.org/getpro/habr/post_images/5a7/d99/b55/5a7d99b55ba8ddfb0360248c0cb55387.png)
Дальше, с помощью alert(), решил попробовать, поддерживает ли он JavaScript — в результате получил пустую страницу. Подумал, что действительно не работает, но подключив свою интуицию, быстренько изменил функцию alert() на document.write(). Результат вызывал улыбку: на этот раз страница была не пуста, значит Windows Media Player поддерживает JavaScript.
Теперь, мысли о том, что медиа-плеер может открыть веб-страницы, да ещё и поддерживает JavaScript, не давали мне покоя. Желая узнать, что это за необыкновенный плеер, добавил в файле venuf.php строку:
echo $_SERVER['HTTP_USER_AGENT'];
и несмотря на то, что у меня установлен MSIE 8.0, я получил следующее сообщение:
![image](https://habrastorage.org/getpro/habr/post_images/b4b/8c8/89f/b4b8c889fbd31deb95dead1fc6a02fb7.png)
Напоследок, решил проверить один эксплоит для MSIE, написан на JavaScript, вызывающий отказ в обслуживании браузера. Добавил эксплоит на страницу, открыл видео-файл и не успел я моргнуть, как Windows заявляет, что «Windows Media Player перестал работать»:
![image](https://habrastorage.org/getpro/habr/post_images/13f/e87/94e/13fe8794e1db4b54fbd79ec02c7c2091.png)
![image](https://habrastorage.org/getpro/habr/post_images/d56/4c2/291/d564c229119a6205d2e285bebf69f55c.png)
Как Вы поняли, пытаясь воспроизвести видео-файл, WMP принудительно отключился, а это значит, что он уязвим к эксплоиту предназначенному для MSIE. Я проверил только один эксплоит, но этого было достаточно, чтобы изменились мои представления о безопасности медиа-файлов.
Вместо постскриптума
Написав последние строки этой статьи, вдруг посетила меня одна идея: скачать, установить и тестировать один из самых популярных мультимедийных плееров — Winamp. Что я и сделал… А когда попробовал воспроизвести файл появилось следующее сообщение:![image](https://habrastorage.org/getpro/habr/post_images/3cf/52e/e0d/3cf52ee0d9fa970a541028c2d8761e16.png)
Я
![image](https://habrastorage.org/getpro/habr/post_images/b3e/021/89a/b3e02189ab333e58750c4c0b041d65ce.png)
![image](https://habrastorage.org/getpro/habr/post_images/5f0/deb/08e/5f0deb08e1ac5962c5b54b14e945f8af.png)
Не сразу понял в чём проблема, думая, что всякое может случится, но спустя несколько секунд, вспомнил что в файле venuf.php остался код эксплоита для MSIE. Дальше, используя переменную $HTTP_USER_AGENT выяснил, что также как и WMP для своих целях Winamp использует
![image](https://habrastorage.org/getpro/habr/post_images/bab/401/b81/bab401b816fea5d86ea119ec3adb5e49.png)
Правда, в отличие от Windows Media Player, Winamp не предупреждает откуда будет скачан файл лицензии, но разрешает использовать правый клик и посмотреть исходный код страницы… а также для него срабатывают алерты:
![image](https://habrastorage.org/getpro/habr/post_images/3ab/cb0/74c/3abcb074c573ca279090f963dc9a8071.png)
Заключение
С первого взгляда, не всё так страшно как кажется, но хочу обратить Ваше внимание на то, что открывая такой файл, пользователь никак не сможет остановить запуск эксплоита, а антивирусная программа помочь не в состоянии, так как, если это новый эксплоит, то, скорее всего, он не ещё добавлен в базу антивируса.Просто, не забывайте о том, что не у всех пользователей установлены другие аудио и видео проигрыватели. А ещё, я далеко не верю, что пользователь, который ждал 2 часа (в лучшем случае) чтобы скачать долгожданный файл, увидев что он не проигрывается, просто так удалит его, и никакое «не открывайте файлы в этом плеере!»— не поможет.
UPD:
Защита
Чтобы существенно снизить риск возможных атак, рекомендую отключить в WMP автоматическое получение лицензии для DRM-защищенных файлов. Для этого, открываем Параметры (Options) и во вкладке Конфиденциальность (Privacy) снимаем галочку с пункта 'Получать лицензии автоматически для защищенного содержимого' (Download usage right automatically when I play or sync a file):![image](https://habrastorage.org/getpro/habr/post_images/d14/c9f/1f2/d14c9f1f24f163625e6bd13c6a231c24.png)
Теперь, при открытии файла, WMP будет спросить, если 'Вы действительно хотите открыть веб-страницу, чтобы получить лицензию':
![image](https://habrastorage.org/getpro/habr/post_images/15b/a28/15d/15ba2815d2a9142399aebebba4123ec4.png)
Несмотря на то что, разработчики предупреждают об опасности и знают что 'веб-страницы могут содержать элементы, которые могут представлять опасность для компьютера' — они всё-таки по умолчанию отключили данную опцию. Странно, не правда ли?
UPD 2: (Большое спасибо хабраюзеру Dragonizer за замечание)
Не смотря на то, что User Agent определяется как MSIE 7.0, на самом деле это не так. Дело в том, что WMP открывает веб-страницы в режиме совместимости, а это значит что:
• В строке версии браузера веб-браузер обозначается как MSIE 7.0, а не MSIE 8.0;
• Условные комментарии и векторы версий распознают веб-браузер как IE 7, а не IE 8;