Недавно снова в новостях оказалась прошлогодняя история: Россия обвиняется во вмешательстве в последние президентские выборы в Америке. Сразу после выборов Обама объявил о санкциях против России. Кроме разведслужб и дипломатов, список обвиняемых включалет несколько компьютерных хакеров, которым вменяется в вину проникновение в компьютерные сети, обслуживающие демократов, и кража информации, опубликованной впоследствии WikiLeaks.
Примерно тогда же был атакован и мой домашний компьютер.
Точнее, на меня обрушился целый поток заражённых мейлов. Приходили они примерно раз в день, назывались по-разному, но имели сходную форму. Наконец, меня одолело любопытство, и, надев резиновые перчатки, я открыл заражённый мейл. Кроме короткого соблазняющего текста, он содержал компрессованное приложение, в котором оказался код на Javascript. Таким образом, я получил возможность поупражняться в неконвенциональном использовании этого языка (он позволяет выполнять им же самим сформированные, а значит, невидимые, команды). Отфильтровав уйму заметающих следы слов, между прочим, русских, я разобрался в последствиях опрометчивого клика по этому приложению. Будучи активированным, код обратился бы к некоторому серверу, скачал бы с него настоящую заразу, и запустил бы.
Не могу удержаться от технических деталей, кому интересно. В Javascript отсутствуют команды для не только для запуска аппликаций, но и для создания файлов. Сделано это, разумеется, умышленно, для сетевой безопасности. Но вот пришёл Microsoft и решил, обойдя все запреты, дать страницам Интернета доступ к продукции этой фирмы. Для сравнения, Google тяжело поработал, чтобы сделать доступными для нас такие услуги, как Google Sheets. А если разработчик тяжело работать не хочет, он может предоставить нам похожую услугу, просто поставив на страничку майкрософтовский Excel. С одним нюансом: такую страничку можно смотреть только майкрософтовским же браузером. Последний, запуская интерпретатор Javascript, определяет специальный объект (ActiveX) для работы с Excel. И с другими аппликациями Оффиса. И вообще, позволяет делать Всё (запускать интерпретатор команд). Наверно, Майкрософт рассчитывал, что, когда веб-страничек с Excel станет много, всем придётся установить их Explorer. В действительности, эффект оказался обратным: лично я, например, осознав, с чем имею дело, совершенно перестал пользоваться их браузером - страшно.
Прежде, чем рассказать, что именно произошло бы, если бы заражённый мейл запустился бы, я скажу пару слов о том, какие тут есть варианты. Когда-то, на заре сетевой эпохи, извращённые умы изобрели компьютерные вирусы. Такой вирус размножался в компьютере, дуплицируя сам себя, а затем активировался и производил всяческие издевательства. Скажем, буквы на экране компьютера вдруг начинали с тихим шелестом сыпаться вниз. Или происходило ещё что-нибудь яркое, безжалостное, запоминающееся. Но этот период романтического вандализма навсегда ушёл в прошлое. Таких вирусов больше нет, а те, что были, сданы в
музей. Они там теперь томятся в клетках, безопасные. Вот, например, тот, где сыпятся буквы.
Средства борьбы с вирусами сегодня развиты настолько, что преодолеть их романтику-одиночке уже не под силу. Но не настолько, чтобы это стало вовсе невозможно. Поэтому компьютерная зараза стала разновидностью преступного бизнеса, как распространение наркотиков.
Самым ощутимым последствием экономического фактора является абсолютная безвредность заражения. Точнее, безвредность для заражённого компьютера. Подсаживая непрошенный код, пират почти всегда делает всё, чтобы хозяин компьютера не почувствовал никаких неудобств, иначе он может заняться чисткой компьютера. А сам код, вместо бесполезного вредительства, теперь приносит доход хозяину, то есть, разумеется, хозяину кода, а не компьтера.
Заражённый компьютер превращается в своеобразный сервер, называемый C&C, что значит Control and Command Server. Он регулярно запрашивает другие копмьютеры пиратской сети и получает от них распоряжения. Например, отправить такой-то мейл по такому-то адресу. Или имитировать запрос к такому-то сайту. Все, наверно, слышали о банке, министерстве или газете, чей сайт оказался парализован в результате пиратской атаки. Но не каждый осознаёт, что, вполне возможно, в атаке участвовал его собственный компьютер.
Индустрия компьютерного домушничества развита по всем правилам современного разделения труда. Одни люди прочёсывают сеть в поисках незащищённых компьютеров. Другие разрабытывают код для проникновения и установки в таких компьютерах. Третьи покупают плоды работы первых двух и организуют нелегальные сети C&C серверов. Пользователи следующего уровня получают готовую аппликацию для управления такой сетью. Они не обязаны даже знать, откуда эта сеть взялась и как она работает. Они просто получают подряд, скажем, на отправку спама и оплачиваются сдельно по количеству адресатов. Кстати, списки адресатов - тоже товар, покупаемый за деньги. Поэтому обматерив спамера, вы переводите свой адрес в список активных, тем самым повышая его доходы.
Поскольку доить захваченный компьютер выгоднее, чем убивать, хозяин компьютера редко страдает от его захвата, но и такое бывает. Самая распространённая зараза такого рода называется ransomware, от слова ransom - выкуп. Все документы и фотографии зашифровываются, после чего предлагается заплатить за их расшифровку. Именно это и грозило произойти с моим компьютером в начале этого рассказа. Вот, как выглядел бы мой экран:
Как видите, файлы зашифрованы и переименованы, а прямо на десктопе объясняется, как их восстановить. Стоила эта операция полтора биткойна, тогда - несколько сотен долларов. Там же, на экране, с садистской пунктуальностью жертве рекомендуется сайт, где можно ознакомиться с системой шифровки и убедиться в её надёжности.
Чтобы узнать всё это, не заражая своего компьютера, пришлось поработать. Во-первых ручную прогонку кода Javascript надо было произвести быстро, потому что серверы, к которым этот код обращался жили не больше пары дней. Опоздал - жди следующего пиратского мейла и разбирай его заново. Узнав адрес сервера, я скачал с него файл так же, как это делал бы присланный код. Сервер послушно отгрузил мне файл. Простеньким скриптом раскодировал его по схеме, полученной из того же мейла. Теперь у меня в руках запускаемый бинарный код, осторожно.
Но, в отличие от маленького скрипта, прозвонить вручную аппликацию в четверть мегабайта мне, конечно, не по силам. Даже посмотреть какие она делает системные вызовы, я не могу, потому что они пока скрыты ещё одним слоем шифровки. К счастью, есть лаборатории, занимающиеся анализом таких аппликаций. Кроме того, в отличие от моего мейла, непохожего ни на какой другой, вариантов бинарных аппликаций совсем немного, все жертвы получают один и тот же. Поэтому аппликацию можно найти просто гуглом. Только искать надо по значению функции SHA-256, поскольку именно его лаборатории публикуют.
Поиск вывел меня на
техническую публикацию, из которой и почерпнуты мои сведения о Locky, так там назвали этот ransomware. Авторы запустили Locky на виртуальной машине и получили на экране вышеприведённую картинку. В другой лаборатории проанализировали системные вызовы Locky и обнаружили вот какую интересную особенность поведения.
Прежде, чем начать своё чёрное дело, Locky неожиданно запрашивает систему, на какой язык настроена клавиатура компьютера, в котором он очутился. И вот, если это оказался один из небольшого набора языков, среди которых, между прочим, русский, Locky просто завершается, не сделав ничего. О причинах такой милости можно догадываться, а вскоре я наткнулся на дополнительный источник, неожиданно связавший этот вирус с президентскими выборами.
Это была
статья о поисках некоего неуловимого хакера, сначала безымянного руководителя сети компьютерных грабителей, оказавшегося позднее русским по имени Славик, втайне от этой самой сети проводящим разведывательную операцию, и, наконец, попавшим в Обамовский список под именем Евгенией Богачёв. Меня в этой статье заинтересовали две вещи: как отмывают виртуальные деньги, и как менялся профиль работы хакера.
Предположим, злоумышленнику удалось проникнуть в чужой компьютер и украсть банковский пароль. Теперь он может переслать деньги своей жертвы, но куда? В кино используются счета на каких-то необитаемых островах, но в жизни, во-первых, счета зарегистрированы, а, во-вторых, суммы свыше порядка 10K$ отслеживаются. Поэтому в реальности используется большое количество мелких счетов. Организуется сеть вербовщиков, находящих бедных туристов или иммигрантов, готовых, за небольшой процент, открыть банковский счёт и закрыть его через пару дней, сняв пришедшие деньги. Завербованный, конечно, понимает, за что ему платят, но не идти же вместо этого на панель, как объяснила одна из пойманных туристок.
Что касается эволюции деятельности ‘Славика’, она представлена в этой статье так:
- Проникновение в тысячи компьютеров в надежде найти деньги. Через некоторые компьютеры, скажем, банковские, действительно, течёт много денег, но шансов, что такой окажется среди атакованных, немного.
- Использование неденежных компьютеров для взятия выкупа с владельца за возврат утерянных файлов. Эта идея позволила заработать на том подавляющем большинстве захваченных компьютеров, которое на первой стадии рассматривалось как отходы производства.
- И, наконец, действия неэкономического характера на захваченных компьютерах: поиск файлов по языку (грузинскому, украинскому) или именам. Предполагается, что эта смена деятельности была вызвана поимкой пирата и являлась уже не средством добывания прибыли, а способом откупиться от властей.
В результате многолетней компьтерной войны пиратскую сеть удалось подавить. Главный пират находится в списке участников вмешательства в выборы, и за его голову предлагается 3M$. Впрочем, это всего лишь декларации: ни к каким выборам его деятельность отношения не имела, да и 3M$ выплачивать явно не придётся. А главное, разработанные им методы компьютерного грабежа стали теперь рутинными.