В мире информационной безопасности появился новый игрок - группировка программ-вымогателей, назвавшая себя Sorry. Её главная отличительная черта - молниеносная реакция на свежие уязвимости. Всего через 48 часов после публичного раскрытия критической проблемы CVE-2026-41940 (ошибка CRLF-инъекции, позволяющая злоумышленнику обойти аутентификацию) злоумышленники уже начали массово атаковать серверы под управлением cPanel и WHM. Их цель - Linux-инфраструктура хостинг-компаний, корпоративных веб‑порталов и любых сайтов, работающих на панели управления cPanel. В результате атаки файлы получают расширение ".sorry", а восстановление доступа требует выкупа.
Описание
Эксперты по кибербезопасности обнаружили активность группировки вскоре после выхода патча от 1 мая 2026 года для cPanel версий, выпущенных начиная с 11.42 (релиз марта 2014 года). Уязвимость заключается в некорректной обработке символов возврата каретки и перевода строки (Carriage Return и Line Feed) в запросах аутентификации. Проще говоря, сервер принимает и не отфильтровывает специальные символы, которые обычно обозначают конец команды. Это позволяет вставить в сессионный файл произвольные данные и подменить значения, отвечающие за права доступа.
Атака состоит из трёх этапов. Первый шаг - получить сессионную cookie, отправив запрос с несуществующими учётными данными. Сервер создаёт временный сессионный файл для отслеживания неудачной попытки входа и возвращает имя сессии в виде cookie. На втором этапе злоумышленник формирует GET-запрос с заголовком аутентификации, где в качестве пользователя указывает "root", а паролем служит полезная нагрузка - строка с внедрёнными символами \r\n и ключевыми значениями: "hasroot=1", "tfa_verified=1" и "user=root". Из-за отсутствия санитизации эти значения попадают в сессионный файл, но пока ещё хранятся внутри поля "pass" как текст. На третьем этапе отправляется запрос с отсутствующим security-токеном. Сервер, не найдя кешированную версию сессионного файла, парсит содержимое заново, и символы \r\n срабатывают как разделители, превращая внедрённые строки в отдельные записи JSON. Если среди них присутствует запись "successful_internal_auth_with_timestamp", сервер считает, что внутренняя аутентификация уже выполнена, и не сверяет пароль с файлом теней. В результате злоумышленник получает доступ от имени root - без какой-либо аутентификации.
Получив привилегированный доступ, атакующие загружают на сервер исполняемый файл шифровальщика, написанный на языке Go. Эта программа работает на любом дистрибутиве Linux, что делает её особенно опасной для разнородных сред. При запуске файл создаёт в каталоге /tmp блокировку "Sorry.lock", предотвращающую одновременную работу нескольких копий шифровальщика. Правда, из-за ошибки в логике при сбое блокировки программа продолжает работу, что может вызвать сбои при параллельном шифровании. Затем шифровальщик собирает уникальный идентификатор жертвы, объединяя имя пользователя, имя хоста, число процессоров, версию ОС, сетевые интерфейсы и путь исполнения. Эти данные отправляются на сервер управления (его IP‑адрес 68.183.190[.]253) через TCP-соединение.
Прежде чем начать шифрование, злоумышленник останавливает множество сервисов и процессов, связанных с базами данных (MySQL, PostgreSQL, MariaDB, MongoDB, Redis, Cassandra, Elasticsearch), а также приложениями Microsoft Office, браузерами и почтовыми клиентами. Это делается, чтобы избежать конфликтов с заблокированными файлами. После этого шифровальщик проверяет домашний каталог на наличие маркерного файла ".sorry_exist" - если он существует, программа завершает работу, чтобы не шифровать уже затронутую машину повторно. В противном случае файл создаётся.
Схема шифрования трёхуровневая. Для каждого файла генерируется уникальный сеансовый RSA-ключ. Содержимое файла шифруется алгоритмом AES-GCM, а ключ AES шифруется открытым сеансовым RSA-ключом и записывается в заголовок зашифрованного файла. Затем сеансовый закрытый ключ RSA шифруется встроенным открытым ключом, который принадлежит злоумышленникам. Результат сохраняется в файл "sorry_id_<timestamp>.sorry", упоминаемый в записке. Таким образом, без закрытого ключа атакующих расшифровать сеансовый ключ невозможно.
Особого внимания заслуживает механизм распространения внутри сети. Sorry активно использует SSH-соединения. Шифровальщик собирает список возможных целей из четырёх уровней: файлы known_hosts и /etc/hosts, все активные локальные подсети, а затем их расширения на /24 и /16. Для обнаруженных SSH-серверов на портах 22, 2222 и 22222 запускается словарная атака с жёстко закодированным набором имён пользователей (root, admin, test, ubuntu, oracle, postgres, guest, user, kali) и типичными паролями, включая пустой, "123456", "password" и имена учётных записей. После успешного подключения шифровальщик копирует и запускает себя на удалённой машине. Интересно, что каждая новая копия предпринимает собственные атаки на все найденные хосты, не получая общего списка уже скомпрометированных машин. Это приводит к дублированию усилий и создаёт множество неудачных попыток входа, которые могут быть замечены службами безопасности.
После завершения шифрования блокировка освобождается, а файл шифровальщика и сам "Sorry.lock" удаляются с диска. Записка README.md содержит Tox ID для связи с вымогателями через анонимный мессенджер Tox, а также рекомендацию обратиться к компаниям по восстановлению данных на платформе Taobao. Никакого сайта в даркнете группа не использует.
Этот инцидент наглядно демонстрирует, насколько быстро современные группы вымогателей умеют превращать только что раскрытую уязвимость в оружие. Всего двое суток - и атака уже в действии. Причём уязвимость затрагивает системы десятилетней давности (cPanel версии 11.42 2014 года), которые до сих пор могут эксплуатироваться на старых серверах. Организациям, использующим cPanel, необходимо срочно обновиться до последней версии, выпущенной 1 мая 2026 года. Кроме того, стоит ограничить доступ к панели управления из внешних сетей, включить многофакторную аутентификацию и настроить мониторинг подозрительной SSH-активности. Важно понимать: если сервер уже скомпрометирован, шифрование произойдёт практически мгновенно. Предотвратить атаку может только своевременное закрытие самой уязвимости.
Индикаторы компрометации
IPv4
- 68.183.190.253
TOX ID
- 3D7889AEC00F2325E1A3FBC0ACA4E521670497F11E47FDE13EADE8FED3144B5EB56D6B198724
Files
- ~/.sorry_exist
- README.md
- ~/sorry_id_<19 digit timestamp>.sorry
- /tmp/Sorry.lock