«Приговор» шифровальщика подлежит обжалованию
17 июля 2017
Почему антивирусные компании могут расшифровать файлы, зашифрованные троянцами-энкодерами, и насколько это сложно сделать?
За не очень длинным словом «шифрование» кроется достаточно сложный комплекс.
Во-первых, алгоритм (описание процесса, а не программа или библиотека) шифрования. Каждый из них проходит длительную проверку на стойкость ко взлому.
Trojan.Encoder.398, способен использовать до 18 различных алгоритмов шифрования.
Это почти рекорд!
Но важен не сам по себе алгоритм, а программный код – реализация алгоритма. Это – первый момент, где разработчики шифровальщика могут допустить ошибку. К сожалению, сейчас шифровальщики все чаще используют покупные библиотеки или вообще встроенную в ОС систему шифрования. В этом случае вероятность ошибки реализации алгоритма можно признать ничтожной.
Есть два типа алгоритмов – с симметричными и несимметричными ключами. Так, американский алгоритм Advanced Encryption Standard (AES) использует симметричные ключи (один и тот же ключ для шифрования и расшифровки). Сразу видно, что если ключ один, то его можно перехватить и использовать для расшифровки.
Другой вариант – использование несимметричных ключей. Например, RSA. Для работы с ним генерируется пара из общедоступного и приватного ключей. Ключ общего пользования используется для шифрования, а приватный ключ – для расшифровки. Эти ключи обычно генерируются на сервере хакеров, и только общедоступный ключ отправляется на машину жертвы. Понятно, что блокировка доступа к серверам злоумышленников делает невозможным получение ключа – и, соответственно, шифрование.
По описанию видно, что система с несимметричными ключами симпатичнее. Но и ресурсов потребляет больше, а значит – работа троянца может быть замечена. Авторы различных шифровальщиков делают разный выбор. Например, публичный ключ алгоритма RSA используется только для шифрования ключа шифрования, используемого AES, который до этого создается на локальной машине. Зашифрованный по RSA ключ AES затем вставляется в начало каждого зашифрованного файла вместе с оригинальными разрешениями файла и вектором инициализации, используемым AES.
WannaCry шифрует файлы с использованием алгоритма AES-128 (128 – длина ключа), при этом используется два режима: тестовый и обычный.
С помощью функции CryptGenKey энкодер создает RSA-пару, публичная часть сохраняется в файле 00000000.pky, приватная – шифруется авторским публичным ключом и сохраняется в файле 00000000.eky. Ключ генерируется для каждого шифруемого файла с использованием функции CryptGenRandom.
В тестовом режиме шифрование производится с помощью зашитого в троянце второго RSA-ключа. В процессе шифрования создается список файлов, которые могут быть расшифрованы в тестовом режиме. Он сохраняется в файле f.wnry. В связи с этим расшифровка тестовых файлов возможна.
Длина ключа. При коротком ключе можно взломать шифрование перебором их возможных комбинаций.
Генерация ключа. Ключи должны быть разными для каждого атакуемого пользователя – это очевидно. И вот тут злоумышленники совершают множество ошибок. Чтобы генерация ключа была случайной, используются случайные простые числа. И хранить их нужно с не меньшей аккуратностью, чем сами ключи: если известен алгоритм генерации ключа, то по сохранившемуся числу можно заново его сгенерировать. Именно поэтому стала возможной расшифровка файлов, испорченных WannaCry.
В ходе своей работы WannaCry генерирует ключи шифрования компьютера жертвы на основе простых чисел. Чтобы жертва не получила доступ к закрытому ключу и не дешифровала заблокированные файлы самостоятельно, троянец удаляет ключ из системы. Но два простых числа, используемые в формуле, генерирующей ключи шифрования, из памяти не стираются и могут быть найдены в процессе wcry.exe.
Способ восстановления ключа работает только под Windows XP, 7, Vista, Server 2003 и 2008, причем при условии, что:
- Компьютер после заражения не перегружался.
- Соответствующая память не была выделена и стерта каким-либо другим процессом.
То есть нужна некоторая доля везения – этот способ будет работать не всегда.
Обнаружил этот способ Adrien Guinet, французский исследователь в области безопасности от Quarkslab.
#Trojan.Encoder #Windows #вознаграждение #выкуп #вымогательство #защита_от_потери_данных #криптография #поддержка #расшифровка #троянец #технологии_Dr.Web #шифровальщик #шифрованиеАнтивирусная правДА! рекомендует
- Зашифрованные файлы – это не всегда окончательный приговор.
- Если ваши файлы зашифрованы, и утилиты дешифровки не существует – не удаляйте их. Бывает, что алгоритм расшифровки удается найти спустя некоторое время.
Компания «Доктор Веб» сообщает об успешном создании алгоритма расшифровки файлов, пострадавших от действия троянца-шифровальщика Trojan.Encoder.398. Благодаря разработанному в ходе исследовательских работ инструментарию теперь полное восстановление данных, зашифрованных одной из модификаций этого опасного троянца, возможно примерно в 90% случаев.
Нам важно ваше мнение
Чтобы оставить комментарий, нужно зайти через свой аккаунт на сайте «Доктор Веб». Если аккаунта еще нет, его можно создать.
Комментарии пользователей
Toma
13:54:26 2018-10-29
Денисенко Павел Андреевич
13:27:34 2018-08-05
vasvet
20:28:48 2018-04-05
Инквизитор
14:03:23 2017-08-02
duduka
13:11:14 2017-07-20
Kdeniss_84
07:56:05 2017-07-20
AntonIT
11:15:37 2017-07-19
razgen
22:54:15 2017-07-17
Геральт
22:00:08 2017-07-17
К...н
21:23:13 2017-07-17
aleks_ku
21:05:23 2017-07-17
Zserg
20:44:28 2017-07-17
vla_va
20:24:02 2017-07-17
В...а
19:54:04 2017-07-17
B0RIS
19:26:56 2017-07-17
НинаК
19:10:38 2017-07-17
ek
18:08:45 2017-07-17
kva-kva
17:38:27 2017-07-17
mk.insta
17:19:50 2017-07-17
Вячeслaв
15:45:36 2017-07-17
Вячeслaв
15:42:26 2017-07-17
Вячeслaв
15:39:29 2017-07-17
Вячeслaв
15:34:35 2017-07-17
Sasha50
14:58:47 2017-07-17
Любитель пляжного футбола
13:59:14 2017-07-17
Dvakota
13:44:54 2017-07-17
Марина
13:31:55 2017-07-17
МЕДВЕДЬ
12:49:38 2017-07-17
DrKV
11:59:07 2017-07-17
Пожалуй, что эта мысль, высказанная @Alexander, есть основа основ ИБ.
Согласен.
DrKV
11:51:55 2017-07-17
Вячeслaв
11:45:15 2017-07-17
Alexander
11:43:05 2017-07-17
@admin, прошу Вас, по возможности, пояснить, - почему троянец не шифрует файлы *.txt; может ли быть зашифрован файл, не имеющий расширения?
Радует рекомендация Dr.Web философски относиться к факту шифровки, - зашифрованные файлы – это не всегда окончательный приговор (~90%), но ... нужна некоторая доля везения.
Полагаю, что наличие резервных копий нужных файлов на внесистемном носителе информации - это наилучший способ обезопасить себя от троянов-шифровальщиков. А для сохранения информации на системном диске - необходимо использовать функцию "Защита от потери данных" в Dr.Web Security Space.
a13x
11:31:22 2017-07-17
razgen
11:27:38 2017-07-17
Вот если бы почти всегда, тогда действительно было бы хорошо. А что хорошего в "иногда".
dyadya_Sasha
11:16:54 2017-07-17
Интерсно и познавательно. Раскрытие одних способов шифрования - стимул для создания новых, более изощренных. Дальше будет сложнее:(((;).
maestro431
11:11:05 2017-07-17
Sasha50
11:08:47 2017-07-17
amethystium
10:20:16 2017-07-17
Родриго
10:13:56 2017-07-17
npzarikov
10:11:16 2017-07-17
AleksLv24
10:05:50 2017-07-17
ada
09:12:04 2017-07-17
Viktoria
09:09:49 2017-07-17
Пaвeл
09:05:06 2017-07-17
Mefch
08:56:20 2017-07-17
Влад
08:35:03 2017-07-17
user
08:10:54 2017-07-17
ka_s
08:09:35 2017-07-17
Littlefish
08:01:01 2017-07-17
A1037
07:46:52 2017-07-17