Pull to refresh

Насколько опасна DRM-защита, или Видео-вирус часть 2

Reading time6 min
Views16K
image

   Вспоминания

После того, как я прочитал пост о том, как TipTop не смог посмотреть кино, я сразу же вспомнил аналогичный случай. Как-то открыв обычный mp3 файл, вместо того, чтобы началось воспроизведение, к моему удивлению, открылась неизвестная веб-страница. Самое интересное, что страница была открыта в Internet Explorer'е (несмотря на то, что по умолчанию был установлен другой браузер), а ведь на той странице, автор файла мог бы добавить и какой-нибудь специальный эксплоит для IE.

В тот момент я не думал о странице с эксплоитом и вместо того, чтобы внимательно проанализировать файл и разобраться в чём проблема я просто его удалил. Единственное о чем я подумал, увидев необычное поведение системы это то, что кто-то довольно оригинально раскручивает свой сайт. Прошло уже несколько лет, но c тех пор такие случаи я не встречал. Прочитав статью о видео-вирусе я решил, что хотя бы на этот раз не упустить возможность узнать насколько безопасны являются одни из самых безобидных и распространенных файлов во всём мире.



   Видео-Файл

И так как уважаемый TipTop, оставил комментарий, указав ссылку на файл, я не стал терять время даром и быстренько скачал торрент-файл. Но я был не один — одновременно со мной этот же видео-файл скачали ещё около 15 человек которые, подумал я, тоже хотят анализировать его. Но сейчас понял, что скорее всего у большинства из них были другие намерения и не знали они, что сегодня кина не будет ©.

После того, как скачивание завершилось, зная что другие плееры не могут воспроизвести этот файл, сразу открыл его в Windows Media Player'е, и первое, что я увидел, было сообщение: «Download media usage rights»:
image


После этого, появилось более убедительное сообщение, предлагающее скачать файл License-Installer который, между прочим, уже был проверен антивирусом и оказался на 100% чист:
image


Внимательно просмотрев сообщение, нажал на кнопку 'Download Now' и в ожидание какой-либо реакции со стороны антивируса, увидел многим знакомое окошко, предлагающее скачать файл с сервера license.compress.to:


И тут же возник первый вопрос, если на первом окошке указан сервер free-license.imgpop.com, тогда зачем этот замечательный файл, предлагает скачать лицензию с сервера license.compress.to? Чтобы выяснить в чём проблема, посетил оба сайта, в надежде найти там что-нибудь вкусненькое, но как и следовало ожидать, ничего там не обнаружил.


   DRM защита

После этого, первое что пришло в голову, было «запустить сниффер», но воздержался (и правильно сделал) — решив открыть файл в Hex-редакторе. Открыл в Hex-редакторе файл, который весил 150 MB и к моему счастью, всё было очень просто, так как уже на 20-ой строке нашел вот такой кусок текста:
image


Стало намного интересней. Открыл страницу httр://free-license.imgpop.com/venuf.php?id=Movie_0001.wmv, которая перенаправляла (HTTP/1.1 302) на страницу: httр://free-license.imgpop.com/venuf/index.htm, а там увидел знакомую картинку, только чуть побольше, да ещё и в браузере:
image


Пока всё шло хорошо и желая немножко поэкспериментировать, решил изменить ссылку из видео-файла на своё. Но, увидев что после изменения строки даже WMP не может открыть файл и не зная что делать, спросил Google'а, не может ли он рассказать, что это за строка, WRMHEADER version='2.0.0.0', которую (помимо многих других) нашёл с помощью Hex-редактора?
image


Ответ был короткий и ясный как дневной свет — я имею дело с DRM-защитой видео-файлов. То есть, обнаружил как с помощью легальных и довольно убедительных методов, злоумышленники успешно и с уверенностью могут распространять вредоносные файлы, так как: во-первых, ни один антивирус не обнаружит, что видео-файл заражён, а во-вторых, большинство пользователей доверяют Microsoft и однозначно будут запускать такие файлы.

Более того, WMP не единственный плеер, который может открыть DRM защищенные файлы. Полный список плееров я не нашёл, но могу с уверенностью сказать что Nero ShowTime поддерживает DRM, только в отличие от WMP он реагирует более осторожно… только если подтвердить скачивание лицензии, веб-страница открывается в IE (несмотря на то, что он не является браузером по умолчанию).
image

image


А сейчас самое интересное: если изменить расширение файла из .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


Дальше, с помощью alert(), решил попробовать, поддерживает ли он JavaScript — в результате получил пустую страницу. Подумал, что действительно не работает, но подключив свою интуицию, быстренько изменил функцию alert() на document.write(). Результат вызывал улыбку: на этот раз страница была не пуста, значит Windows Media Player поддерживает JavaScript.

Теперь, мысли о том, что медиа-плеер может открыть веб-страницы, да ещё и поддерживает JavaScript, не давали мне покоя. Желая узнать, что это за необыкновенный плеер, добавил в файле venuf.php строку:
echo $_SERVER['HTTP_USER_AGENT'];
и несмотря на то, что у меня установлен MSIE 8.0, я получил следующее сообщение:
image


Напоследок, решил проверить один эксплоит для MSIE, написан на JavaScript, вызывающий отказ в обслуживании браузера. Добавил эксплоит на страницу, открыл видео-файл и не успел я моргнуть, как Windows заявляет, что «Windows Media Player перестал работать»:
image

image


Как Вы поняли, пытаясь воспроизвести видео-файл, WMP принудительно отключился, а это значит, что он уязвим к эксплоиту предназначенному для MSIE. Я проверил только один эксплоит, но этого было достаточно, чтобы изменились мои представления о безопасности медиа-файлов.


   Вместо постскриптума

Написав последние строки этой статьи, вдруг посетила меня одна идея: скачать, установить и тестировать один из самых популярных мультимедийных плееров — Winamp. Что я и сделал… А когда попробовал воспроизвести файл появилось следующее сообщение:
image


Я почти был уверен, что всё будет также как и с Nero ShowTime, но любопытство заставило мена нажать на кнопку 'Yes'… Вместо запуска IE, я увидел следующее:
image

image


Не сразу понял в чём проблема, думая, что всякое может случится, но спустя несколько секунд, вспомнил что в файле venuf.php остался код эксплоита для MSIE. Дальше, используя переменную $HTTP_USER_AGENT выяснил, что также как и WMP для своих целях Winamp использует MSIE 7 Internet Explorer:
image


Правда, в отличие от Windows Media Player, Winamp не предупреждает откуда будет скачан файл лицензии, но разрешает использовать правый клик и посмотреть исходный код страницы… а также для него срабатывают алерты:
image



   Заключение

С первого взгляда, не всё так страшно как кажется, но хочу обратить Ваше внимание на то, что открывая такой файл, пользователь никак не сможет остановить запуск эксплоита, а антивирусная программа помочь не в состоянии, так как, если это новый эксплоит, то, скорее всего, он не ещё добавлен в базу антивируса.

Просто, не забывайте о том, что не у всех пользователей установлены другие аудио и видео проигрыватели. А ещё, я далеко не верю, что пользователь, который ждал 2 часа (в лучшем случае) чтобы скачать долгожданный файл, увидев что он не проигрывается, просто так удалит его, и никакое «не открывайте файлы в этом плеере!»— не поможет.


UPD:

   Защита

Чтобы существенно снизить риск возможных атак, рекомендую отключить в WMP автоматическое получение лицензии для DRM-защищенных файлов. Для этого, открываем Параметры (Options) и во вкладке Конфиденциальность (Privacy) снимаем галочку с пункта 'Получать лицензии автоматически для защищенного содержимого' (Download usage right automatically when I play or sync a file):
image


Теперь, при открытии файла, WMP будет спросить, если 'Вы действительно хотите открыть веб-страницу, чтобы получить лицензию':
image


Несмотря на то что, разработчики предупреждают об опасности и знают что 'веб-страницы могут содержать элементы, которые могут представлять опасность для компьютера' — они всё-таки по умолчанию отключили данную опцию. Странно, не правда ли?

UPD 2: (Большое спасибо хабраюзеру Dragonizer за замечание)
Не смотря на то, что User Agent определяется как MSIE 7.0, на самом деле это не так. Дело в том, что WMP открывает веб-страницы в режиме совместимости, а это значит что:
• В строке версии браузера веб-браузер обозначается как MSIE 7.0, а не MSIE 8.0;
• Условные комментарии и векторы версий распознают веб-браузер как IE 7, а не IE 8;
Tags:
Hubs:
Total votes 130: ↑119 and ↓11+108
Comments63

Articles