Calcweb.ru

Информационный портал
3 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Эволюция CryptoLocker: первый в мире саморазмножающийся шифратор Win32/Virlock

CryptoLocker: Что это такое и как его избежать

CryptoLocker – это новое семейство программ-вымогателей ( ransomware ), чья бизнес-модель (да, вредоносные программы – это бизнес для кого-то!) основана на вымогательстве денег у пользователей. Эта программа продолжает тенденцию, начатую другой печально известной вредоносной программой, которая также вымогает деньги у своих жертв – так называемый « Полицейский вирус », который просит пользователей заплатить «штраф» за разблокировку их компьютеров . Однако, в отличие от «полицейского вируса», CryptoLocker взламывает документы пользователей и просит их заплатить выкуп (с очень ограниченным сроком платежа).

Установка вредоносной программы

CryptoLocker использует техники социальной инженерии, чтобы заставить пользователя запустить эту программу. Если говорить более конкретно, то жертва получает по электронной почте письмо с ZIP-файлом, защищенным паролем, якобы от логистической компании.

Троян запускается в тот момент, когда пользователь открывает вложенный ZIP-файл, вводя пароль, указанный в сообщении, в надежде открыть содержащийся в архиве PDF-файл. CryptoLocker использует возможности стандартной возможности Windows скрывать расширения в названиях файлов, чтобы скрыть реальное расширение.EXE у вредоносного файла.

Как только жертва запускает его, троян «садится» в память компьютера и выполняет следующие действия:

  • Сохраняет себя в папку с профилем пользователя (AppData, LocalAppData).
  • Добавляет ключ в реестр, чтобы гарантировать запуск программы при каждом включении компьютера.
  • Запускает два процесса: один процесс является основным, а второй предназначен для защиты основного процесса от его прекращения.

Шифрование файлов

Торян генерирует случайный симметричный ключ для каждого файла, который он собирается шифровать , после чего шифрует содержимое файла с помощью алгоритма AES, используя данный ключ. Затем программа шифрует случайный ключ, используя алгоритм шифрования с помощью ассиметричного открытого-закрытого ключа (RSA) и ключи длиной более 1024 бит (мы видели образцы, которые использовали ключи длиной 2048 бит), и добавляет его в зашифрованный файл. Таким образом, троян гарантирует, что только владелец закрытого ключа RSA сможет получить случайный ключ, который был использован для зашифровки файла. Кроме того, т.к. компьютерные файлы перезаписываются, то невозможно получить доступ к ним с использованием специальных методов.

После запуска первое, что делает троян, — это получает открытый ключ (PK) со своего сервера C&C. Чтобы найти активный сервер C&C, троян включает в себя алгоритм генерации доменов (DGA), известный как «Вихрь Мерсенна» (Mersenne twister) для генерации случайных доменных имен. Этот алгоритм использует текущую дату за основу и способен генерировать до 1000 различных доменов фиксированного размера каждый день.

После того как троян скачал PK, он сохраняет его в следующем ключе реестра Windows: HKCUSoftwareCryptoLockerPublic Key. Затем он начинает шифрование файлов на жестком диске компьютера, а также на каждом сетевом диске зараженного пользователя, к которому получает доступ.

CryptoLocker не шифрует каждый найденный файл, а он шифрует только неисполняемые файлы с расширениями, содержащимися в коде вредоносной программы:

Дополнительно, CryptoLocker логирует каждый зашифрованный файл в следующий ключ реестра:

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

Любопытно, что вредоносная программа не просит у пользователей одной и той же суммы денег, но содержит свою собственную таблицу конверсии валют.

Как защититься от CryptoLocker

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

Win32/Virlock – первый саморазмножающийся вымогатель

Вредоносная программа Win32/Virlock представляет из себя первый известный на сегодняшний день вымогатель (ransomware), который специализируется на заражении исполняемых файлов, т. е. ведет себя как файловый вирус. Virlock умеет блокировать рабочий стол пользователя с требованием выкупа, шифровать файлы пользователя, а также размножать свое тело как полиморфный вирус.

Семейства вымогателей, который мы наблюдали ранее, фактически, можно разделить на две большие группы: блокировщики экрана (LockScreen) и шифровальщики файлов (Filecoder). В первом случае вымогатель блокирует пользователю доступ к рабочему столу до получения выкупа, а во втором шифрует файлы пользователя, делая невозможным их использование. При этом сообщение с требованием выкупа может появится в качестве обоев рабочего стола, в виде открытого текстового файла, а также через простое окно (как в случае с Cryptolocker).

Читайте так же:
Kingston HyperX Fury Red Series CL10 Kit of 2 – интересная ОЗУ

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

В октябре мы зафиксировали новый тип такого вредоносного ПО как вымогатель. Вредоносная программа Win32/Virlock могла блокировать рабочий стол пользователя с требованием выкупа, шифровать файлы, а также заражать исполняемый файлы как полиморфный вирус, встраивая в них свой код. Недавно мы обнаружили несколько новых модификаций этого вируса, что указывает на его активное развитие со стороны злоумышленников. Код VirLock демонстрирует высокий уровень технической подготовки авторов этой вредоносной программы.

Win32/Virlock использует особый прием для шифрования файлов. Вместо обычного метода побайтового шифрования всего файла или его начала, такой файл преобразуется в исполняемый и к нему дописывается код Virlock. Вредоносная программа специализируется на компрометации следующих типов файлов: *.exe, *.doc, *.xls, *.zip, *.rar, *.pdf, *.ppt, *.mdb, *.mp3, *.mpg, *.png, *.gif, *.bmp, *.p12, *.cer, *.psd, *.crt, *.pem, *.pfx, *.p12, *.p7b, *.wma, *.jpg, *.jpeg. При этом Virlock способен заражать файлы на сетевых дисках и съемных носителях.

При заражении (шифровании) файла, который не является исполняемым, Virlock создает для него новый исполняемый Win32 PE-файл, в который записывается код вируса и зашифрованное содержимое документа. Оригинальный файл удаляется, а на его месте появляется новый с тем же именем и добавленным расширением .exe к имени. При запуске такого файла на исполнение, он расшифровывает оригинальный файл, записывает его в текущую директорию и открывает.

Запуск зараженного Virlock файла сопровождается созданием двух его новых файлов, которые аналогичны оригинальному дропперу, но из-за полиморфизма содержат разный исполняемый код. Один файл создается в директории %userprofile%, а второй в %alluserprofile%. Для обеспечения автозагрузки, вредоносная программа прописывает путь к своему файлу в соответствующем разделе реестра Run обоих разделов HKLM и HKCU. Мы также наблюдали модификации Virlock, которые извлекали из себя третий исполняемый файл. Он регистрировался в качестве сервиса. Эти извлеченные файлы отвечали за дальнейшее заражение файлов в системе.

Часть кода вымогателя ответственна за отображение пользователю экрана блокировки, при этом используя уже ставшие типичными методы самозащиты, в том числе завершение процессов проводника и диспетчера задач.


Рис. Экран блокировки одной из модификаций вредоносной программы.

Сообщение в окне блокировки содержит текст предупреждения для пользователя и предлагает оплатить сумму выкупа в биткоинах. Недавно мы писали про другой вымогатель TorrentLocker, который также вымогает у пользователя денежные средства в этой криптовалюте. Ниже представлен экран блокировки более новой версии Virlock, он позволяет пользователю использовать приложения веб-браузер и блокнот.


Рис. Другой вид экрана блокировки. Отображается вкладка оплаты.


Рис. Вкладка с информацией о работе с биткоинами в случае с Канадой.

Код вредоносной программы, который отвечает за вывод экрана блокировки, способен выполнять некоторую локализацию интерфейса самого экрана (окна). Для этого используется соединение с веб-сайтом google.com и дальнейший анализ домена, на который осуществляется перенаправление, например, google.com.au, google.ca, google.co.uk, google.co.nz. Также используется функция GetUserGeoID. Для стран, соответствующих вышеперечисленным доменам, отображается свой флаг, стоимость биткоинов и текущий курс национальной валюты.

С технической точки зрения наиболее интересной частью вредоносной программы является механизм заражения файлов и полиморфизм. Полиморфизм Virlock гарантирует уникальность тела вредоносной программы в каждом зараженном файле. Virlock использует несколько слоев шифрования файла.

Исполняемый файл Virlock включает в себя специальный код, который мы называем XOR stub builder. Он располагается в файле в не зашифрованном состоянии. Остальные данные вредоносной программы и ее код, а также данные оригинального файла (в случае, если мы имеем дело не с оригинальным дроппером, а файлом который был заражен) находятся в зашифрованном виде.

Упоминаемый XOR stub builder состоит из восьми блоков кода и используется для генерации инструкций типа XOR, которые будут использоваться для расшифровки данных файла. Один из таких блоков изображен ниже на рисунке.


Рис. Блок кода XOR stub builder.

Блоки кода XOR stub builder являются полиморфными, т. е. различаются от одного зараженного файла к другому. В любом случае, исполнение каждого из них приводит к вычислению определенного двойного слова (DWORD) и его записи по фиксированному смещению в памяти. Эти слова представляют из себя инструкции XOR stub, т. е. заглушки с инструкциями XOR, которые расшифровывают остальную часть файла.

Читайте так же:
Передача файлов по локальной сети между устройствами Windows, Apple и Android с помощью Daemon Tools Catch!

Мы говорили про многоуровневый подход, который Virlock использует при шифровании файла. В такой схеме, XOR заглушка используется для расшифровки небольшого участка кода исполняемого файла (Часть 1). Такой код состоит из нескольких функций. На скриншоте ниже приведен фрагмент кода XOR заглушки. Для расшифровки использовался ключ 0x6B130E06, причем размер расшифровываемой части равен 0x45c.


Рис. Код XOR заглушки. Далее управление передается на расшифрованный блок кода размером 0x45C байт.

Интересной особенностью Virlock является строение его расшифрованного кода (Часть 2). Почти каждая функция в нем зашифрована еще раз и начинается с заглушки, которая расшифровывает код самой функцию. Это существенно осложняет анализ вредоносной программы, поскольку код функций нельзя проанализировать в дизассемблере. Код заглушки достаточно прост и использует алгоритм XOR для расшифровки тела функции. После исполнения функции, ее код в памяти зашифровывается обратно, при этом шифрование производится с использованием нового ключа. Ниже на рисунке показан пример такого кода. Инструкция rdtsc используется для получения ключа шифрования, далее операция XOR применяется для шифрования нескольких переменных и тела функции.


Рис. Код шифрования тела функции после ее исполнения.

Такую особенность вредоносной программы можно назвать полиморфизмом периода исполнения (run-time polymorphism). При запуске нескольких ее копий, дампы памяти исполняемого файла будут различаться.

При расшифровке Части 2, код вредоносной программы также прибегает к применению еще одной процедуры расшифровки. Как мы упоминали, Часть 1, которая расшифрована с использованием XOR stub, расшифровывает остальную часть файла вредоносной программы и содержимое зараженного файла, в случае его присутствия. Процедура расшифровки состоит в применении операции циклического сдвига вправо ROR. Используемый ключ расшифровки жестко зашит в теле вредоносной программы.

Таким образом, Virlock использует трехуровневую схему шифрования:

  • Первая часть (Часть 1) кода вредоносной программы расшифровывается кодом XOR stub, который в свою очередь формируется с помощью XOR stub builder.
  • Вторая часть (Часть 2) кода вредоносной программы расшифровывается с помощью первой части (Часть 1).
  • Каждая функция кода второй части (Часть 2) зашифрована и расшифровывается своей собственной заглушкой, которая расположена в самом начале функции. После исполнения функции, ее код в памяти зашифровывается обратно.

Выполнив все указанные шаги, Virlock записывает сформированный файл, который содержит зашифрованное тело вируса и оригинальные данные файла на диск. Для этого оригинальный файл, который подвергся заражению, перезаписывается. В случае, если зараженный файл не являлся исполняемым PE-файлом, к его имени и существующему расширению дописывается новое расширение .exe.

Наша система телеметрии LiveGrid показывает, что заражению Virlock подверглось небольшое количество пользователей. Их количество не сравнимо с количеством пользователей, которые подверглись заражению TorrentLocker или других подобных ему вымогателей. Тем не менее, анализ транзакций, проведённых по указанному счету Bitcoin, показывает, что некоторые жертвы уже оплатили выкуп злоумышленникам.

CryptoLocker — по-настоящему опасный кибервымогатель

Вымогатели перестали просто угрожать. Они стали серьезно шифровать данные на компьютере жертвы, чтобы получить выкуп.

Как правило, вымогатели не являются чем-то уж особо страшным. Однако их новая разновидность, например CryptoLocker, вызывает особую тревогу, так как эти преступники не просто запугивают, а на самом деле шифруют содержимое вашего компьютера при помощи сильной криптографии.

Если вы до сих пор не в курсе, то существует целый ряд программ-вымогателей, которые при заражении какого-либо компьютера сообщают его хозяину, что система якобы заблокирована. И для разблокировки нужно заплатить выкуп. Понятно, что нет никакой гарантии, что этот выкуп как-то поможет. Иногда компьютер остается заблокированным и после перечисления дани по указанному адресу. А сам факт выкупа только подстегивает вымогателей на дальнейшее вытягивание денег из хозяина. Но от большинства программ такого плана легко избавиться с помощью антивируса или специальных утилит, а вот с CryptoLocker нет легких рецептов. Он шифрует ваши файлы, и никакого простого способа расшифровки нет.

Мы пишем о многих серьезных угрозах здесь, которые или сами по себе интересны, или же вы уже слышали о них в новостях. Нам очень хочется объяснить вам, как эти угрозы работают и что из себя представляют. О способах борьбы тоже рассказываем. Однако если многие угрозы не вызывают у нас особых опасений, поскольку они легко лечатся, то в случае с криптолокерами все гораздо неприятнее. Без правильно хранимых резервных копий CryptoLocker способен свести на нет плоды недельной, месячной или годичной работы.

Читайте так же:
2Browse — минималистичный гибрид браузера и Проводника

Совсем неудивительно, что некоторые жертвы, компьютеры которых были заблокированы, после оплаты выкупа так и не получали ключа разблокировки. Хотя, по некоторым сообщениям, хакеры все же стали рассылать ключи-дешифраторы. На данный момент известно о нескольких группах, использующих атаки на основе CryptoLocker. Об одной такой группе я написал в прошлом месяце. Заражению и шифровке подвергались фотографии, видео, документы и многое другое. Атакующие даже присылали жертвам полные списки заблокированных файлов. Для блокировки использовалось асимметричное шифрование RSA-2048 с уникальным для каждого компьютера секретным ключом. Вымогатели выводили на экран жертвы информацию о том, что этот ключ действителен всего лишь три дня, после чего уничтожается. И если за это время жертва не выкупала ключ, то данные восстановить уже было никак нельзя. Кстати, обычная сумма выкупа составляет $300, которые можно перевести различными способами, в том числе и биткоинами.

Масштаб угрозы оказался таким, что в дело включилась группа US-CERT (центр реагирования на компьютерные инциденты). Именно этой группе поручено изучить и проанализировать все аспекты возникшей угрозы. Группа подтвердила высокую опасность криптолокеров, однако рекомендовала в любом случае не платить выкупа вымогателям.
По большей части CryptoLocker распространяется через фишинговые письма, причем в ряде случаев используются письма от известных компаний. Например, службы отслеживания посылок и уведомлений UPS или Federal Express. По словам Костина Райю из «Лаборатории Касперского», эта угроза в первую очередь направлена на пользователей из США, Великобритании, а также Индии, Канады, Франции и Австралии.

Некоторые версии CryptoLocker, как сообщается, способны шифровать не только локальные файлы, но также подключенные съемные хранилища. Например, опасности могут подвергаться USB-флешки, переносные жесткие диски, карты памяти, а также сетевые устройства и облачные хранилища, которые могут синхронизировать данные локального диска с серверами. US-CERT предупреждает также, что этот вредонос может передаваться в локальной сети от машины к машине, поэтому необходимо незамедлительно отключать инфицированный компьютер от сети.

Авторитетный исследователь безопасности и журналист Брайан Кребс рассказал не так давно, что вымогатели увеличили 72-часовой срок на более длинный из-за нежелания терять большие деньги, которые жертвы не могут по разным причинам быстро заплатить. Например, не могут быстро разобраться с тем, как платить через Bitcoin или MoneyPak. В этом случае «контрольный срок» остается в силе, но ключ не уничтожается по его окончании. Правда, за просроченный ключ придется заплатить в 5–10 раз больше.

Привем сообщения криптолокера

Лоуренс Абрамс с сайта о технической поддержке BleepingComputer.com, на которого в своей статье как раз и ссылается Кребс, утверждает, что у ряда физических и юридических лиц просто нет выбора, кроме как заплатить этот выкуп. Я же с этим не согласен — это должно быть делом принципа. Если вы будете платить выкуп, то это только подстегнет злоумышленников на дальнейшие вымогательства. Поэтому рекомендую, не откладывая в долгий ящик, сделать резервную копию системы и всех ценных данных прямо сейчас, а также делать такие копии регулярно. И не держите хранилище с этими копиями постоянно подключенным к вашему компьютеру. И если вы заразились этой гадостью, то просто вылечите ее (это несложно, в отличие от расшифровки файлов) и только тогда подключите диск с резервной копией к машине и восстановитесь.

Некоторые антивирусы, к сожалению, удаляют CryptoLocker уже после того, как файлы зашифрованы. В этом случае если у жертвы и возникло желание отправить вымогателям выкуп, то сделать это уже проблематично. Кстати, интересное решение этой проблемы придумали сами авторы криптолокера. Они стали использовать в качестве информации о себе системные обои. В этом случае у жертвы даже после удаления криптолокера на обоях оставалась информация о том, где заново скачать себе вирус, чтобы расшифровать свою информацию.

Хорошие новости для пользователей Kaspersky Internet Security состоят в том, что мы блокируем все модификации CryptoLocker еще до запуска, поэтому не даем им шанса на захват системы.

Анатомия Cryptolocker

Он не прячет свой код под покровом обфускации и шифрования. Он не использует никаких техник антиотладки, детекта виртуальных машин и песочниц. Он не скрывается в недрах оперативной памяти и чудесно виден в диспетчере задач. Он прост, как автомат Калашникова. Но он реально опасен. Ведь это он заставил тысячи незадачливых пользователей платить деньги своим создателям, он ухитрился поставить на бабки сотрудников полиции Массачусетса (им пришлось покупать биткоины, чтобы расшифровать свои данные), он прославился «джентльменским» «снижением» цен в связи с резким ростом курса биткоина!

Заражение и внедрение в систему

В подавляющем большинстве случаев зловред попадает в систему путем рассылки по электронной почте от якобы служб доставки Fedex или UPS под видом отчета в формате PDF (а русский человек бы сразу понял, что письмо о доставке от Почты России — это палево ;). — Прим. ред.). Однако эксплуатацией какой-либо уязвимости этого формата здесь даже и не пахнет. Вместо отчета о доставке в письме лежит обыкновенный исполняемый файл с именем вроде FORM_1088.pdf.exe и с иконкой, очень и очень похожей на настоящую PDF’овскую. Несмотря на такую простую и избитую схему, в первые сто дней функционирования трояна, по некоторым оценкам, было заражено от 200 до 250 тысяч компьютеров (правда, преимущественно в США).

Читайте так же:
Clipdiary — менеджер истории буфера обмена

После первого запуска Cryptolocker собирает в реестре различную информацию о системе и на ее основе генерирует для себя уникальное имя файла, представляющее собой бессмысленный набор некоторого количества латинских букв. Далее зловред обретает пристанище на жестком диске жертвы в каталоге %AppData% (или %LocalAppData% в Win XP) с атрибутом скрытого файла.

Cryptolocker на жестком диске жертвыCryptolocker на жестком диске жертвы

Другие статьи в выпуске:

Хакер #182. Все о Bitcoin

Для обеспечения своего запуска одновременно с запуском системы троян создает в реестре в ветках автозапуска два ключа, в которых прописан путь к Criptolocker’у на диске:

  • HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunCryptoLocker
  • HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce*CryptoLocker

Ключ с символом звездочки позволяет запускать зловред при старте системы в Safe Mode.

Автозапуск Cryptolocker’а в реестреАвтозапуск Cryptolocker’а в реестре

Для сохранения содержимого этих ключей Cryptolocker постоянно мониторит их состояние и восстанавливает в случае необходимости.

Троян не предпринимает никаких действий по скрытию себя в диспетчере задач, а для предотвращения остановки своего процесса запускает самого себя в качестве второго дублирующего процесса, который контролирует наличие основного и в случае необходимости повторно его запускает. Прекратить это безобразие можно, выбрав в диспетчере задач «Завершить дерево процессов» для основного процесса Cryptolocker’а.

Связь с командными серверами

После запуска Cryptolocker по специальному алгоритму генерирует доменное имя и пытается подсоединиться к нему. В случае неудачи генерация доменного имени и попытки подключиться продолжаются.

В качестве исходных данных для алгоритма генерации доменного имени используется системное время, получаемое путем вызова API GetSystemTime.

Генерация доменного имени (в нижней части выделено сгенерированное доменное имя olphjvttuqdxm.com)Генерация доменного имени (в нижней части выделено сгенерированное доменное имя olphjvttuqdxm.com)

Доменное имя состоит из набора латинских букв в количестве от 12 до 15 и поочередно генерируется в следующих доменных зонах:

  • .org
  • .co.ua
  • .info
  • .com
  • .net
  • .biz
  • .ru

Попытки подключения к командному серверу могут продолжаться довольно долго, до тех пор, пока не будет сгенерировано нужное доменное имя, актуальное на данный момент.

В случае успешного подсоединения (когда статья создавалась, троян подключался к командному серверу и исправно работал) на сервере генерируется пара ключей для алгоритма шифрования RSA–2048. Закрытый ключ, предназначенный для расшифровки, остается храниться на сервере, а открытый, предназначенный для шифрования, передается на компьютер жертвы, где сохраняется в реестре в специально созданном разделе

  • HKEY_CURRENT_USERSoftwareCryptoLocker_0388

с именем параметра PublicKey.

В этом же разделе создается параметр с именем VersionInfo, в котором содержится информация о текущей версии трояна, IP-адрес командного сервера и время установки. На данный момент актуальная версия трояна — 0388, что также отражено в названии раздела, создаваемого им в реестре.

Параметры PublicKey и VersionInfo в реестреПараметры PublicKey и VersionInfo в реестре

Поиск и шифрование файлов

После успешного внедрения в систему и получения ключа для шифрования троян ищет нужные файлы на компьютере жертвы. Для начала с помощью функции GetLogicalDrives он получает список всех дисков в системе, далее с помощью API GetDriveType определяются диски, с которыми можно работать (Cryptolocker шифрует файлы на дисках, имеющие тип DRIVE _ FIXED, DRIVE _ REMOTE и DRIVE _ REMOVABLE). После этого начинается поиск нужных файлов на всех доступных дисках поочередно с применением API-функций FindFirstFile и FindNextFile. Отбор нужных файлов ведется по 72 маскам.

Читайте так же:
Что делать, если в Windows не хочет удаляться драйвер

Маски для отбора файловМаски для отбора файлов

Создатели Cryptolocker’а не стали обременять себя самостоятельной реализацией алгоритмов шифрования и использовали в своем творении возможности, предлагаемые компанией Microsoft в виде CryptoAPI и стандартного криптопровайдера Microsoft Enhanced RSA and AES Cryptographic Provider.

Содержимое файла криптуется с помощью алгоритма AES–256, ключ для которого генерирует API-функция CryptGenKey с параметром CALG _ AES _ 256. После шифрования файла этот AES-ключ шифруется алгоритмом RSA–2048 с помощью открытого ключа, полученного с командного сервера (и заблаговременно сохраненного в реестре), далее с открытого RSA-ключа снимается SHA-хеш длиной 20 байт.

Процесс шифрования файла TestDoc.rtfПроцесс шифрования файла TestDoc.rtf

Все это дело записывается поверх старого, незашифрованного содержимого файла в определенной последовательности: сначала пишется 20 байт хеша RSA-ключа, далее 256 байт зашифрованного AES-ключа, после чего пишется сам зашифрованный файл. В итоге длина зашифрованного файла увеличивается на 276 байт по сравнению с исходным, незашифрованным файлом. SHA-хеш нужен для того, чтобы, во-первых, избежать повторного шифрования файлов, а во-вторых, чтобы найти на командном сервере нужный закрытый ключ для расшифровки файла в случае, если жертва все-таки заплатила денежки.

Внутренности незашифрованного (вверху) и зашифрованного (внизу) файла TestDoc.rtfВнутренности незашифрованного (вверху) и зашифрованного (внизу) файла TestDoc.rtf

После того как файл зашифрован, Cryptolocker пишет путь и имя зашифрованного файла в реестр, в ветке

  • HKEY_CURRENT_USERSoftwareCryptoLocker_0388Files.

Оплата и расшифровка файлов

Как только все файлы на всех доступных дисках компьютера жертвы будут зашифрованы, Cryptolocker показывает свое «истинное лицо» в виде окна красного цвета с надписью «Your personal files are encrypted!», обратным счетчиком времени, который начинается с 72 часов, и требованием оплаты за получение приватного ключа для расшифровки файлов.

«Истинное лицо» Cryptolocker’а«Истинное лицо» Cryptolocker’а

Вариантов оплаты предлагается всего два — битокоинами и с помощью платежной системы MoneyPak (что говорит о большей направленности трояна на англоязычную аудиторию). В случае неуплаты в срок Cryptolocker грозит удалить приватный ключ с командного сервера и, соответственно, невозможностью расшифровки файлов в дальнейшем. Если попытаться самостоятельно или с помощью антивируса удалить файл трояна, то жертве представится возможность лицезреть новые обои рабочего стола с устрашающими надписями и предложением повторно скачать и запустить Cryptolocker для проведения оплаты и расшифровки файлов. Путь к этим обоям прописывается в реестре в том же разделе, где лежит открытый RSA-ключ и информация о версии зловреда, в параметр с именем Wallpaper.

Пугающие обои Cryptolocker’аПугающие обои Cryptolocker’а

Если по истечении трех дней троян оплаты так и не дождался, он убирает все, что записал в реестр, меняет обратно обои и самоуничтожается, оставив жертву один на один с зашифрованными файлами.

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

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

Сервис расшифровки файлов. До 18.00 9.01.2014 расшифровка мне бы обошлась всего в 0,5 биткоинов :)Сервис расшифровки файлов. До 18.00 9.01.2014 расшифровка мне бы обошлась всего в 0,5 биткоинов 🙂

WARNING

Cryptolocker шифрует файлы и на дисках с параметром DRIVE _ REMOTE, то есть на расшаренных сетевых дисках. Поэтому резервные копии на таких носителях тоже могут быть под угрозой.

Заключение

Это не примитивный Winlocker, требующий 200 рублей на счет мобильника. Файлы шифруются действительно стойкими алгоритмами, и без приватного ключа расшифровать их на данный момент практически не представляется возможным, даже если у тебя есть знакомые в АНБ. Поэтому резервное копирование, резервное копирование и еще раз резервное копирование. Все, что представляет ценность, должно периодически бэкапиться и складываться в надежном месте, куда не сможет протянуть свои руки Cryptolocker. Ну и в конце концов, сколько можно уже открывать аттачи от неведомых и нежданных отправителей?

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

голоса
Рейтинг статьи
Ссылка на основную публикацию