Недавно обнаруженный шифровальщик MarsJoke, как оказалось, имеет слабость в алгоритме шифрования. Это позволило экспертам Лаборатории Касперского создать дешифратор, чтобы помочь пользователям расшифровать файлы бесплатно.
Этот вымогатель был впервые обнаружен в августе, а привлек к себе внимание на прошлой неделе, когда была замечена крупная кампания по его распространению. MarsJoke, также известный как Polyglot, копирует ранее обнаруженный CTB-Locker и атакует главным образом государственные учреждения и учебные заведения.
MarsJoke/ Polyglot распространяется через спам-письма, в которых содержится либо ссылка на вредоносный файл, либо во вложении прикреплен исполняемый файл или RAR-архив. Сразу после заражения вымогатель копирует себя сразу в несколько мест и записывается в папку Автозагрузка и в Планировщик задач (TaskScheduler).
В процессе шифрования вредонос не изменяет имя зашифрованных файлов, но делает их содержание недоступным для пользователей. После того, как файлы зашифрованы, вымогатель меняет обои рабочего стола (уникальные для каждой жертвы) и выводит сообщение с требованиями. Как
Пользователям нужно будет заплатить выкуп в биткоинах. Шифровальщик связывается с командным центром, расположенным в сети Tor, чтобы получить информацию о сумме выкупа и адресе, на который сумма должна быть переведена. Если оплата не будет произведена в течение определенного периода времени, вредоносная программа уведомляет пользователя о том, что файлы уже не могут быть расшифрованы.
Проанализировав MarsJoke, эксперты пришли к выводу, что он имитирует все особенности CTB-Locker, включая графический интерфейс, обои рабочего стола и последовательность действий. Однако код у них разный, говорят исследователи.
Дальнейший анализ показал, что вредоносная программа выполняет трехступенчатое шифрование: он помещает файл в защищенный паролем ZIP-архив с именем исходного файла и расширением "A19"; шифрует архив с алгоритмом ECB AES-256 и меняет расширение на "ap19"; удаляет исходный файл и A19 архив и меняет расширение на то, что было у исходного файла.
Вымогатель генерирует отдельный AES-ключ для каждого файла, каждый ключ основан на случайно сгенерированном массиве символов. Слабая реализация генератора привела к тому, что ключи оказалось легко подобрать.
Хотя полученный файл представляет собой архив, защищенный паролем, исследователи обнаружили, что этот пароль также слаб. Ключ всего 4 байта и эти байты были выбраны из строки MachineGuid, уникального идентификатора, который операционная система присваивает компьютеру.
Возможности расшифровки файлов, зашифрованных MarsJoke уже были включены в утилиту Лаборатории Касперского RannohDecryptor.