Злоумышленники атакуют доступность данных и сервисов в целевых системах, злонамеренно используя шифрование. Поскольку выкупное ПО остается финансово прибыльным бизнесом, а рост геополитической напряженности привел к увеличению числа атак на уничтожение данных, шифрование данных продолжает использоваться в кампаниях по распространению вредоносного ПО.
Использование злоумышленниками зашифрованных данных для нанесения удара
Злоумышленники используют передовые алгоритмы шифрования, чтобы сделать данные жертвы бесполезными. При атаках с выкупом злоумышленники удерживают ключ для расшифровки в надежде получить финансовую выгоду. Как показывает практика печально известных атак ransomware, злоумышленники используют несколько алгоритмов шифрования для повышения скорости, безопасности и эффективности.
Существует два популярных подхода к алгоритмам криптографического шифрования:
Симметричные алгоритмы шифрования используют один и тот же ключ для процессов шифрования и дешифрования. Этот ключ также известен как секретный ключ. AES, Blowfish, ChaCha20, DES, 3DES и Salsa20 - вот несколько популярных примеров симметричных алгоритмов.
Асимметричные алгоритмы шифрования используют пару ключей, называемую открытым и закрытым, для шифрования и дешифрования, соответственно. Эти алгоритмы также известны как шифрование с открытым ключом. RSA, ECDH и ECDSA - популярные алгоритмы асимметричного шифрования.
Симметричное шифрование лучше всего подходит для массового шифрования, поскольку оно значительно быстрее, чем асимметричное. Кроме того, при использовании симметричного шифрования размер файла после шифрования меньше. Чтобы эффективно проводить атаки с целью выкупа, злоумышленники часто используют симметричное шифрование, которое позволяет быстрее зашифровать и удалить файлы жертвы. Хотя симметричное шифрование быстрее и эффективнее, у него есть два основных ограничения:
- Проблема распределения ключей: ключ шифрования - единственное, что обеспечивает конфиденциальность при симметричном шифровании, и секретность ключа шифрования имеет первостепенное значение для конфиденциальности зашифрованных данных. Если ключ шифрования будет раскрыт третьей стороне во время транспортировки или на диске, зашифрованные файлы можно будет легко расшифровать. Поэтому распространение ключа шифрования - проблема, которую необходимо решить операторам программ-вымогателей.
- Проблема управления ключами: использование разных ключей шифрования для разных операций шифрования является общепринятой передовой практикой симметричного шифрования. Однако такая практика создает проблему управления ключами, поскольку количество ключей шифрования растет для каждой операции шифрования. Для программ-вымогателей злоумышленники должны создавать различные ключи шифрования для каждого зараженного узла и держать все ключи в секрете, иначе жертвы смогут расшифровать все данные с помощью раскрытого ключа.
Операторы программ-вымогателей используют асимметричное шифрование, чтобы решить проблемы симметричного шифрования с распределением и управлением ключами. Хотя асимметричное шифрование медленнее, чем его альтернатива, оно позволяет операторам вымогательского ПО оставлять свой открытый ключ на зараженных узлах, не беспокоясь о том, что жертвы не смогут расшифровать свои файлы без закрытого ключа.
При типичной атаке выкупного ПО полезная нагрузка шифрует файлы с помощью симметричного алгоритма шифрования с использованием секретного ключа. Затем полезная нагрузка шифрует секретный ключ с помощью открытого ключа, созданного специально для зараженного узла. Такое комбинированное использование обоих алгоритмов шифрования называется гибридным подходом к шифрованию. Он помогает операторам вымогательских программ использовать быструю производительность симметричного шифрования при надежной защите асимметричных алгоритмов.
Программ вымогатель | Симметричное шифрование | Асимметричное шифрование |
AvosLocker | AES-256-CBC | RSA (2048-бит) |
BlackMatter | Salsa20 | RSA (1024-бит) |
LockBit 3.0 | AES-256 | RSA (2048 бит) |
Money Message | ChaCha20 | ECDH с кривой P-384 |
Rancoz | ChaCha20 | NTRUEncrypt |
RTM Locker | ChaCha20 | ECDH с кривой 25519 |
В другом случае злоумышленники используют шифрование данных для уничтожения данных жертвы. При атаках на уничтожение данных злоумышленники необратимо шифруют файлы, используя сам алгоритм, но не предоставляя к нему закрытый ключ (например, запуск AES без секретного ключа), и оставляют своих жертв без возможности расшифровать их файлы. Геополитическая напряженность в мире привела к появлению вредоносных программ-вайперов данных.
Вот некоторые из недавних примеров вредоносных программ-чистильщиков:
- Azov Wiper
- AwfulShred
- BiBi Wiper
- CaddyWiper
- No-Justice
- WhisperGate
Встроенные API-интерфейсы Windows позволяют пользователям использовать симметричные и асимметричные алгоритмы шифрования, такие как DES, 3DES, RC2, RC4 и RSA. Злоумышленники злоупотребляют этой возможностью в своих операциях по шифрованию данных.
Например, BlueSky и Nefilim используют Enhanced Cryptographic Provider от Microsoft для импорта криптографических ключей и шифрования данных с помощью следующих функций API.
- Инициализация и подключение к поставщику криптографических услуг: CryptAcquireContext .
- Вычисление хэша ключа открытого текста: CryptCreateHash, CryptHashData
- Создание сеансового ключа: CryptDeriveKey
- Шифрование данных: CryptEncrypt
- Очистить данные: CryptDestroyHash, CryptDestroyKey, CryptReleaseContext
Операторы программ-вымогателей часто запрашивают уникальную информацию, чтобы создать уникальный идентификатор для зараженных узлов. Уникальные идентификаторы позволяют им отслеживать зараженные узлы и процессы шифрования/дешифрования. Например, программа Zeppelin ransomware запрашивает значение MachineGUID из следующего ключа реестра, поскольку оно является уникальным идентификатором для каждого узла Window.
1 2 | Registry: "HKLM\SOFTWARE\Microsoft\Cryptography" Key: "MachineGUID" |
Команды безопасности могут отслеживать эти функции API для обнаружения вымогательских программ.