Рис. 2.Письма, рассылавшиеся в ходе атаки Troldesh
Очевидно, такая стратегия продиктована общеизвестными постулатами социальной инженерии: у сообщения от известного отправителя больше шансов быть открытым, чем у послания, автор которого адресату совершенно незнаком. Во всех без исключения изученных мной письмах ссылки вели на взломанные сайты, работающие под управлением WordPress или Joomla. И скрипт-загрузчик, и собственно энкодер злодеи хранили в открытых на запись папках <site>/content/icons/, <site>/templates/, <site>/wp-admin/css/ или <site>/wp-content/themes/. Вероятно, чтобы размещать вредоносное содержимое, они приобрели на каком-то из хакерских форумов базу скомпрометированных аккаунтов либо воспользовались одним из известных эксплоитов для этих популярных CMS.
При нажатии на линк с удаленного хоста скачивался ZIP-архив, внутри которого хранился скрипт-загрузчик, написанный на JScript. Чтобы скрипт выполнился, пользователь должен самостоятельно извлечь из архива и попытаться открыть этот файл. Загрузчик представляет собой обфусцированный и зашифрованный файл JSE размером 5,7 Кбайт. В случае с сообщением, отправленным якобы от имени компании «Рольф», скрипт имел имя Группа компаний Рольф подробности. jse, при этом злодеи даже не попытались подменить стандартный значок сценария, что опытного пользователя должно хотя бы немного насторожить.
Принцип действия загрузчика в целом стандартен для подобных вредоносов. Для выполнения кода на языке JScript в Windows используется приложение wscript.exe, именуемое Windows Script Host. Запустившись с помощью этого приложения, сценарий расшифровывает строки, в которых хранится URL сайта с полезной нагрузкой, скачивает файл шифровальщика в %TEMP% и запускает его в скрытом окне. В качестве «дембельского аккорда» загрузчик открывает свернутое окошко cmd и отправляет туда команду на самоудаление.
Исследователи из Group-IB в своей публикации сообщили, что Troldesh имеет «творческие псевдонимы»: Shade, XTBL и Trojan.Encoder.858. ESET детектирует его под именем Win32/Kryptik, «Антивирус Касперского» как Trojan-Ransom.Win32. Shade.psq. Что нам известно об этом энкодере? Первые случаи заражения Trojan.Encoder.858 датируются еще 2015 годом, при этом вредонос, скорее всего, является потомком другого шифровальщика Trojan.Encoder.686, распространение которого началось на год раньше, в июле 2014-го. 686-я модификация, названная его создателями CTB-Locker, успешно продавалась на одном из хакерских форумов. Троянец активно использует возможности OpenSSL и эллиптическую криптографию, а для генерации случайных данных применяет CryptoAPI. Зашифрованные файлы получали расширение .ctbl.
Файл шифровальщика, о котором идет речь в публикации Group-IB, имеет размер 1,05 Mбайт. Внутри хранится библиотека для работы с Tor. Энкодер упакован с использованием написанного на. NET кастомного пакера, под которым находится двоичный файл, сжатый UPX. Кроме того, строки в трояне зашифрованы с использованием симметричного алгоритма AES.
После запуска и инициализации шифровальщик создает свою копию в папке %ALLUSERSPROFILE%\application data\windows\ под именем csrss.exe. Затем он регистрируется в автозагрузке. Он ищет ветку реестра [<HKCU>\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\] и записывает в нее значение 'Client Server Runtime Subsystem' = '"%ALLUSERSPROFILE%\Application Data\Windows\csrss.exe»'.
На следующем этапе энкодер собирает информацию об инфицированной машине, а именно определяет версию операционной системы, серийный номер дискового раздела, из которого запущен исполняемый файл, имя компьютера и тип установленного на нем процессора. На основе этих данных формируется уникальный для каждой инфицированной машины ключ. Этот ключ сохраняется в ветви реестра [<HKLM|HKCU>\ SOFTWARE\System32\Confguration\] в параметре i. Туда же записывается версия вредоносной программы.
Затем троянец инициализирует Tor-клиент и пытается соединиться с одним из бридж-релеев (bridge relay), адрес которого в зашифрованном виде хранится в его теле. По этому адресу шифровальщик отправляет запрос на регистрацию, содержащий его ID, а в ответ получает данные, необходимые для шифрования файлов на зараженной машине. В том числе ключ RSA длиной 2048 бит и его MD5-хеш для проверки.
Файлы на всех локальных и подключенных к машине сетевых дисках шифруются с использованием алгоритма AES (Advanced Encryption Standard) в режиме CBC (Cipher Block Chaining), при этом для каждого файла создается отдельный ключ при помощи генератора псевдослучайных чисел. Этот ключ шифруется полученным через Tor ключом RSA и сохраняется в зашифрованном файле. Для файлов, имеющих атрибут Read Only, перед шифрованием указанный атрибут сбрасывается. На прощание троян удаляет все точки восстановления системы.
Казалось бы, угроза давно известная и хорошо изученная, раз уж распространяется она как минимум четыре года, только вот есть одна загвоздка. Trojan.Encoder.858, о котором говорят авторы публикации Group-IB, присваивает зашифрованным файлам расширение .xtbl, а троянец, заражающий компьютеры в ходе рассматриваемой нами атаки, использует другое расширение .crypted000007. Вывод: исследователи ошиблись. Это не Trojan.Encoder.858.
На самом деле речь, скорее всего, идет о более свежей модификации 858-го, которая в номенклатуре Dr.Web носит гордое наименование Trojan.Encoder.10507. Эта модификация энкодера датируется 2017 годом и почти не отличается от своего предшественника, но кое-какие нововведения все же имеются.
В теле вредоноса хранится 100 публичных ключей RSA длиной 3072 бита каждый. Перед началом шифрования энкодер случайным образом выбирает один из них, номер этого ключа сохраняется в текстовом файле с требованиями вымогателей. Каждый файл шифруется с отдельным ключом длиной 256 бит, его имя другим ключом такой же длины, после чего оба сессионных ключа шифруются ранее выбранным публичным ключом RSA, а результат дописывается в конец зашифрованного файла. По завершении шифрования троянец создает на диске текстовые файлы README с порядковым номером от 1 до 10, в которых содержатся требования выкупа. Затем вредонос меняет обои рабочего стола Windows, и жертва вирусописателей наблюдает жизнерадостную картину, показанную на рис. 3.
Рис. 3. Веселенькие обои рабочего стола, устанавливаемые шифровальщиком Troldesh
Все, файлы зашифрованы. Помимо прочего, в процессе своей работы троянец пытается прочитать файлы %APPDATA%\thunderbird\profles.ini и %APPDATA%\mozilla\frefox\profles.ini, вероятно, надеясь получить доступ к паролям и настройкам почтового клиента пользователя, чтобы обеспечить свое дальнейшее распространение.
На сегодняшний день наиболее эффективным методом противодействия троянцам-энкодерам является использование современного антивирусного ПО, обладающего механизмами превентивной защиты, и своевременное резервное копирование всей актуальной информации на независимые носители, хранящиеся отдельно от основного компьютера пользователя в качестве таковых могут, в том числе, выступать отключаемые облачные хранилища.
Банковские троянцы
Банковские троянцы предназначены для кражи денег со счетов жертвы, пользующейся системами дистанционного банковского обслуживания то есть системами «банк клиент», или другими электронными платежными инструментами. Сегодня практически любой банк оказывает своим клиентам услуги дистанционного банковского обслуживания (ДБО): как правило, для частных лиц они сводятся к предоставлению доступа на специальный защищенный сайт, где клиент может проверить состояние своего счета, перевести средства с одного счета на другой, а также оплатить ряд услуг в организациях, с которыми у банка имеется соответствующий договор. В простейших случаях доступ к подобным системам осуществляется по протоколу HTPS с использованием логина и пароля. Также в качестве меры безопасности некоторые банки применяют подтверждение входа по СМС или с использованием электронной цифровой подписи клиента. Порой для организации связи применяется специализированное программное обеспечение.
Безусловно, использование ДБО крайне удобно для большинства клиентов: не нужно тратить время на поездки в офис банка или поход до ближайшего банкомата, чтобы уточнить баланс счета простые операции с безналичными средствами выполняются одним щелчком мыши. Однако подобные системы неизбежно привлекают внимание злоумышленников.
Пик распространения так называемых банковских троянцев вредоносных программ, предназначенных для кражи учетных данных и необходимых для организации доступа к системам ДБО файлов пришелся на 2011 год, однако инциденты, связанные с хищением денежных средств держателей банковских счетов при помощи таких вредоносных программ, происходят с завидной регулярностью и сегодня. К категории наиболее опасных можно отнести сразу несколько банковских троянцев это Trojan.Carberp, Trojan.PWS.Ibank, Trojan.PWS.Panda (также известная под именами Zeus и Zbot) и Trojan.PWS.SpySweep (также известный под именем SpyEye).
Запускаясь на инфицированной машине, банковский троянец предпринимает целый ряд действий для того, чтобы уйти от всевозможных средств контроля и наблюдения. Так, например, Trojan.Carberp внедряется в другие работающие приложения, а свой основной процесс завершает; таким образом, вся дальнейшая работа происходит частями внутри сторонних приложений, что является его характерным свойством и затрудняет лечение заражения. Среди команд, которые способен выполнять Trojan.Carberp, имеются директивы запуска произвольных файлов на инфицированном компьютере, команда установки сеанса «удаленного рабочего стола» по протоколу RDP, и даже удаления на зараженном ПК операционной системы. Кроме того, в этом троянце скрыта возможность деактивации антивирусов, уничтожения «конкурирующих» банковских троянцев, а также кража паролей от множества различных программ: браузеров, мессенджеров, FTP-клиентов, почтовых программ и т. д. Помимо прочего, благодаря расширяемой архитектуре данная троянская программа имеет возможность скачивать специальные встраиваемые дополнения (плагины) для выполнения других деструктивных действий.
Для перехвата связанной с работой ДБО информации Trojan.Carberp использует различные методы: это логирование нажатий пользователем клавиш, вклинивание в HTP-трафик в поисках учетных данных и передаваемых значений экранных форм, встраивание в процессы программ системы «банк клиент», создание снимков экрана в моменты ввода важной информации, перехваты отдельных функций, которые могут участвовать в передаче данных, поиск и похищение цифровых сертификатов и ключей. Вредоносные программы семейства Trojan.Carberp способны объединяться в ботнеты, координируемые из одного (или нескольких) командных центров.