Содержание статьи
WARNING
Если троян зашифровал файлы, сразу выключи компьютер! Затем загрузись с флешки и постарайся собрать максимум данных. В идеале нужно сделать посекторный образ диска и уже после этого спокойно анализировать ситуацию.
Всадники шифрокалипсиса
Сегодня у большинства пользователей стоит какой-нибудь популярный антивирус или хотя бы MSRT – встроенное в Windows «средство для удаления вредоносных программ». Однако ransomware спокойно запускаются, шифруют файлы и оставляют сообщение с требованием выкупа. Обычно ключ для расшифровки обещают прислать после оплаты каким-нибудь полуанонимным способом. Например, зайти через Tor на страницу с дальнейшими инструкциями и перечислить выкуп на одноразовый номер кошелька.
Антивирусы реагируют на это так редко, что их разработчиков даже стали обвинять в сговоре. Это не первый случай, когда вирусологов подозревают в преступных целях, но технически здесь все объясняется проще. Дело в том, что троян-шифровальщик не выполняет никаких действий, однозначно свидетельствующих о его вредоносной активности. Сам троян-шифровальщик — это простейшая программа с набором библиотек общего назначения. Иногда это просто скрипт или батник, запускающий другие портейбл-утилиты. Давай разберем общий алгоритм действий шифровальщиков подробнее.
Обычно пользователь сам скачивает и запускает ransomware. Трояна подсовывают жертве под видом обновления, нужной утилиты, документа с фишинговой ссылкой и другими давно известными методами социальной инженерии. Против человеческой наивности антивирусы бессильны.
Попавший в систему троян-шифровальщик может быть опознан по сигнатуре только в том случае, если он уже есть в базах. Новые образцы в них заведомо отсутствуют, а модификации старых троянов дополнительно проверяют на детекты перед распространением.
После запуска трояна поведенческий анализатор антивируса молчит, поскольку, с его точки зрения, не выполняется никаких потенциально опасных действий. Какая-то программа ищет файлы по маске? Да пожалуйста! Создает копии файлов? Без проблем! Шифрует копии? Тоже не повод для паники. Функции шифрования поддерживаются большинством современных программ, а троян использует те же стандартные криптографические библиотеки. Он удаляет пользовательские файлы? Это тоже не запрещено — они ведь не системные. Затирает свободное место? Безопасное удаление также востребованная и легальная функция. Он добавляется в автозапуск? И это тоже разрешенное поведение.
В отличие от классических вирусов, троян-шифровальщик не пытается модифицировать файлы, не внедряется в активные процессы и вообще ведет себя скучно. Он просто создает копии документов и баз данных, шифрует их, а затем удаляет без возможности восстановления оригинальные файлы пользователя и ключ шифрования, оставляя текст с требованием выкупа. Во всяком случае, авторам троянов хотелось бы видеть именно такое идеальное поведение. В действительности же эта цепочка процессов может дать сбой на любом этапе, благодаря чему становятся возможными альтернативные методы расшифровки.
Превентивные меры
Обычные антивирусы не в силах бороться с новыми шифровальщиками, сигнатуры которых пока отсутствуют в их базах. Они могут лишь распознавать наиболее грубые модификации на уровне эвристики. Комплексные решения (вроде Dr.Web Security Space и Kaspersky Internet Security / Total Security) уже умеют устранять их деструктивные последствия. Они заранее создают копии пользовательских файлов, скрывают их и блокируют доступ к ним сторонних программ. В случае если троян доберется до фоток и документов из стандартных каталогов, всегда можно будет восстановить их из копий, а зашифрованные файлы просто удалить.
Поскольку антивирусный комплекс загружает свой драйвер и модуль резидентной защиты еще до входа пользователя, это довольно надежный метод хранения резервных копий. Однако их можно делать и сторонними утилитами. Главное, чтобы они размещались на внешнем носителе, который отключается сразу после создания бэкапа. Иначе троян обнаружит резервные копии на постоянно подключенном винчестере и также зашифрует их или повредит.
Из универсальных программ для бэкапа функцией дополнительной защиты от действий вредоносных программ обладает бесплатная утилита Veeam Endpoint Backup Free. Она умеет автоматически отключать USB-диски сразу после завершения создания резервных копий и сохранять несколько версий файлов.
К дополнительным особенностям программы относится умение бэкапить системные разделы без их отключения (теневая копия), практически мгновенное восстановление отдельных файлов и каталогов (их можно открывать прямо из образа по ссылкам) и другие интересные опции. Также она умеет создавать загрузочный диск со своей средой восстановления на тот случай, если троян заблокировал нормальную работу ОС.
Кроме универсальных утилит для резервного копирования с дополнительными функциями защиты от шифровальщиков, есть целый ряд специализированных программ превентивной защиты. Одни из них бесплатно доступны только на стадии бета-тестирования, а затем становятся новым модулем платного антивируса (например, так было с Malwarebytes Anti-Ransomware). Другие пока существуют именно как отдельные бесплатные решения.
GridinSoft Anti-Ransomware
Эта украинская утилита для предотвращения заражения программами-вымогателями как раз находится в стадии бета-тестирования. Разработчики описывают ее как универсальное средство, препятствующее любым попыткам выполнить несанкционированное шифрование файлов. Они обещают эффективно блокировать атаки ransomware и предотвращать вызываемую ими потерю данных. На практике утилита оказалась бесполезной. Первый же троян-шифровальщик из старой подборки преспокойно запустился, сделал свое грязное дело и повесил на рабочий стол требования о выкупе.
CryptoPrevent Malware Prevention
Эта утилита оставила самое неоднозначное впечатление. CPMP действует проактивно на основе большого набора групповых политик и множества поведенческих фильтров, контролируя действия программ и состояние пользовательских каталогов. В ней доступны несколько режимов защиты, включая уровень «Максимальный», который работает по принципу «включил и забыл».
Интерфейс программы обеспечивает быстрый доступ к десяткам настроек, но после изменения большинства из них требуется перезагрузка. Само приложение CPMP не должно работать все время. Его требуется запускать только для мониторинга и обслуживания. Например, для проверки состояния, чтения логов, обновления или изменения параметров.
При этом графическая надстройка очень долго запускается и в ней нет оповещений в реальном времени. Также нет и привычного карантина. В режиме «Максимальная защита» все файлы, опознанные как опасные, просто удаляются без вопросов.
Для проверки мы попробовали поставить в CPMP максимальный уровень защиты и последовательно выпустить на волю семь разных троянов-вымогателей. Три из них были удалены CPMP сразу при попытке запуска. Никаких сообщений при этом не отображалось. Четыре других благополучно стартовали, однако до финиша не добрались. CPMP не давал им создать новые файлы и зашифровать пользовательские, но и не удалял. Загрузка процессора все время была 100%, диск стрекотал, и делать что-либо в тестовой системе было невозможно.
С трудом нам удалось добраться до клавиши Kill Apps Now
в окне CPMP. Через секунду все программы, запущенные от имени пользователя (включая Process Explorer), были принудительно выгружены. В оперативной памяти остались только системные процессы.
За время боя некоторые зловреды обосновались на рабочем столе, а троян Satan.f
добавил в автозапуск вывод текстового требования о выкупе. Шифрования файлов при этом не произошло, но и полного удаления малвари тоже.
Получилась патовая ситуация: даже максимально жесткие ограничения не обеспечили надежной защиты от троянов-вымогателей. В некоторых случаях активное противодействие им приводило к тому, что все системные ресурсы оказывались полностью заняты. Уведомлений при этом не выводится никаких. Понять, что происходит в системе, можно только по анализу логов, но до них еще нужно добраться.
Cybereason RansomFree
Это поведенческий анализатор для Windows 7–10, предназначенный предотвращать заражение известными и новыми троянами-вымогателями, включая шифровальщики и винлокеры. По заявлению разработчиков, программа написана бывшими военными экспертами в области информационной безопасности, которые получили 90 миллионов долларов инвестиций от Lockheed Martin и Softbank.
Первый троян-шифровальщик запустился, но тут же вылетел с ошибкой. Второй стал активным процессом в памяти. Cybereason тут же определил его и предложил не просто выгрузить, а заодно и удалить созданный трояном файл.
Третий троян также был успешно заблокирован. Cybereason не дал ему зашифровать файлы. Процесс 58CD2A07
был выгружен, а единичный детект на VirusTotal у Wininit.exe — ложноположительное срабатывание.
Двух следующих троянов Cybereason проморгал. Они были активны всего несколько секунд, но этого хватило для преодоления проактивной защиты.
Старый знакомый Petya принудительно перезагрузил компьютер, заблокировал запуск Windows и зашифровал файлы. Даже жаль, что Cybereason так быстро сдался. У нас еще столько коней было из числа ветеранов кавалерии!
Kaspersky Anti-Ransomware Tool for Business
Эта бесплатная программа призвана защищать от всех видов ransomware, включая новые шифровальщики и винлокеры. Работает в современных версиях Windows (7–10) любой разрядности. Она определяет новые версии ransomware по репутационной характеристике файлов в облачной сети Kaspersky Security Network и поведенческому анализу, который выполняет компонент «мониторинг активности». KART for Business может использоваться с любым сторонним антивирусом, но эта программа несовместима с собственными решениями «Лаборатории Касперского», так как в них уже включена аналогичная функциональность.
Работает KART в фоне и не отъедает системные ресурсы сколь-нибудь заметно. Настройки у программы минимальные и не касаются собственно проверки. Она всегда выполняется через облачную сеть KSN, а пользователя лишь уведомляют о найденных угрозах.
Если срабатывание на какое-то приложение ты считаешь ложным, то можно добавить его в список исключений, кликнув Manage Applications... но лучше дважды подумай.
Любой детект требует времени, поэтому KART хранит историю активности приложений на тот случай, если троян успеет выполнить какие-то изменения в системе до того, как его заблокируют.
При запуске на уже зараженном компьютере Kaspersky Anti-Ransomware Tool for Business автоматически обнаруживает зашифрованные трояном файлы и помещает их в отдельное хранилище для последующей передачи специалистам на расшифровку.
Bitdefender Anti-Ransomware Tool
Еще одна программа с говорящим названием от румынской компании Bitdefender. BART может использоваться параллельно с любыми антивирусами, кроме созданных в Bitdefender — в них уже есть соответствующие модули. Внешне BART работает аналогично KART. У них общие заявленные принципы детекта известных и новых троянов через фирменную сеть облачной проверки и поведенческий анализатор. Разработчик указывает, что в основу BART легли методы противодействия четырем основным семействам троянов-шифровальщиков: CTB-Locker, Locky, Petya и TeslaCrypt.
Возможно, именно от них утилита и защищает, однако даже краткое знакомство с BART оставило неприятное впечатление. Он не смог предотвратить запуск первого же трояна, причем его сигнатура давно есть в базах Bitdefender. Троян без проблем прописался в автозапуск и начал хозяйничать в системе, в то время как BART показывал зеленый свет.
Осматриваем дареного коня
Если троян-шифровальщик все же запустился в системе и успел натворить дел, то не паникуй и не пытайся удалить его из работающей операционки. Теперь твой компьютер — место преступления, на котором надо сохранить все следы.
Вопреки пословице, в случае шифровальщиков у дареного коня надо смотреть всё — дизассемблером и hex-редактором. Лучше поручить это аналитикам антивирусных лабораторий, поскольку они в любом случае будут изучать новый образец малвари. Часто в коде удается найти зацепки, помогающие разработать способ расшифровки файлов. Поэтому ни в коем случае не прибивай коня до полной расшифровки. Просто стреножь его, удалив из автозапуска и поместив в архив с паролем.
Именно ошибки в коде трояна помогают найти ключ быстрее, чем за 100500 тысяч лет, как это было бы в случае корректной реализации его авторами AES-256. Этот стандарт шифрования часто упоминают создатели троянов в своих угрозах. Считается, что это внушит жертвам мысль о невозможности расшифровки файлов без ключа, но реально многие трояны основаны на более простых алгоритмах.
У тех же зловредов, в которых действительно пытались использовать AES, из-за грубых недочетов множество вероятных ключей сужается до такого объема, который уже можно перебрать на обыкновенной персоналке за несколько дней или даже часов. Встречаются среди ransomware и такие варианты, которые вообще не требуют особой квалификации для расшифровки. У них либо ключ хранится локально, либо все «шифрование» построено на операции не сложнее XOR.
Эксперт компании Emsisoft Фабиан Восар (Fabian Wosar) часто шутит в своем блоге, что вскрытие алгоритма шифрования очередного недотроянца заняло у него меньше времени, чем написание требований о выкупе у его авторов. Он бесплатно выкладывает утилиты для дешифровки файлов на сайте компании.
Универсальной программы расшифровки не существует, поэтому приходится подбирать подходящую в каждом конкретном случае. Собственные каталоги бесплатных утилит для дешифровки есть и у других разработчиков антивирусного софта. Например, у «Лаборатории Касперского» это все программы, содержащие в названии Decryptor
. Также утилиты расшифровки можно найти на сайте совместного проекта No More Ransom. Он запущен по инициативе Национального подразделения по киберпреступлениям полиции Нидерландов, Европейского центра по борьбе с киберпреступностью Европола и двух антивирусных компаний — «Лаборатории Касперского» и Intel Security.
Начинать стоит именно с поиска бесплатных утилит на этих сайтах, но что делать, если нужная среди них так и не нашлась? К сожалению, это тоже весьма вероятно. Новые версии троянов-шифровальщиков появляются постоянно, да и не все из них ломаются на раз-два. С отдельными образцами аналитики могут провозиться больше месяца. Изредка бывает и так, что метод расшифровки не удается обнаружить вообще. Это либо результат особенно качественного шифрования (большая редкость), либо наоборот — максимально кривого кода троянца, алгоритм которого портит файлы и в принципе не предполагает корректную расшифровку.
Если известные бесплатные утилиты не помогли, то можно отправить письмо Фабиану, создать запрос на сервисе Crypto Sheriff, а заодно написать в техническую поддержку Emsisoft и других антивирусных компаний.
В любом случае новую малварь стоит прислать вирусным аналитикам. Причем отправить им лучше не только файл самого троянца, но также все созданные им временные файлы и три-пять образцов зашифрованных файлов. Если у тебя в бэкапах где-то остались оригинальные (незашифрованные) версии этих же файлов, то прикрепи их к запросу. Сопоставление пар «открытый текст / шифртекст» — один из основных методов криптоанализа. Чем больше таких пар ты сможешь найти, тем быстрее отыщут метод расшифровки.
Дополнительно аналитики выполняют ту же атаку по известному тексту, используя стандартные заголовки файлов. Например, у файлов .doc это D0 CF 11 E0 A1 B1 1A E1
, а у картинок .png — 89 50 4E 47 0D 0A 1A 0A
. Подробнее см. таблицу файловых сигнатур. У текстовых файлов (TXT) содержимое полностью произвольное, поэтому их расшифровку выполнить сложнее всего.
По моему опыту, лучше всех расшифровывать файлы получается у Dr.Web и «Лаборатории Касперского». Если у тебя есть действующая лицензия на любой их коммерческий продукт, то аналитики бесплатно расшифруют файлы. Если ты не их пользователь — то за деньги. Как правило, услуга расшифровки стоит в разы дороже годовой лицензии на антивирус, но такую политику можно понять. Криптоанализ, особенно в случае AES и RSA, отнимает много времени, которое специалистам целесообразнее тратить на поддержку своих постоянных клиентов.
В октябре один из наших читателей словил новую модификацию трояна-шифровальщика и одновременно обратился в техподдержку разных компаний.
Уже через три дня ему ответили из Dr.Web: «Решение найдено. Расшифровка возможна. Для не пользователей Dr.Web услуга платная. Путь к получению расшифровки на коммерческой основе: приобретение Dr.Web Rescue Pack стоимостью 5299 рублей без НДС. В состав пакета Dr.Web Rescue Pack входит услуга по расшифровке и лицензия на Dr.Web Security Space на два года для защиты одного ПК».
Читателя не устроила цена, поэтому он стал ждать ответа от других компаний. Примерно через месяц на сайте «Лаборатории Касперского» появилась новая версия бесплатной утилиты RannohDecryptor, которой он и расшифровал свои файлы.
Расшифровка выполнялась локально и, судя по длительной стопроцентной загрузке процессора, методом перебора. Полная расшифровка 565 файлов заняла девять с половиной часов на десктопном Core i5. Нерасшифрованным остался только один файл, оказавшийся копией другого.
Выводы
Трояны-шифровальщики создают массу проблем, заставляя тратить много времени и/или денег на расшифровку своих файлов. Простого антивируса для борьбы с ними недостаточно. Рано или поздно он пропустит новую малварь, сигнатуры которой еще нет в базах. Поэтому стоит прямо сейчас озаботиться дополнительными мерами защиты. Среди них есть множество бесплатных вариантов, но их эффективность пока оставляет желать лучшего. Как минимум есть смысл регулярно делать бэкапы и ограничивать доступ к ним, а также заранее сделать подборку утилит для дешифровки.