Что делать администраторам cPGuard после взлома канала обновлений?

2 ноября неизвестный злоумышленник проник в систему обновлений cPGuard — средства защиты Linux-серверов, разработанного OPSSHIELD. В 02:06 UTC он воспользовался скомпрометированными учётными данными и внедрил вредоносный скрипт в версии 5.88.12–5.88.19.
Что делать администраторам cPGuard после взлома канала обновлений?
Изображение носит иллюстративный характер

Скрипт устанавливал на сервере бэкдор, собирал хеши паролей и другие чувствительные файлы, а затем отправлял их на сервер лицензирования OPSSHIELD через скомпрометированную учётную запись. Оттуда злоумышленник мог забрать данные позднее. К позднему вечеру 2 ноября UTC компания подтвердила кражу 32 файлов, каждый из которых относился к отдельному клиентскому серверу. Это число учитывает только известные случаи и может измениться; оно не показывает, сколько серверов в целом могли пострадать.
OPSSHIELD обнаружила атаку в течение 12 часов после публикации затронутых версий. Компания отозвала учётные данные, использованные для доступа к инфраструктуре, остановила распространение скрипта и защитила скомпрометированную учётную запись на сервере лицензирования. Расследование продолжается: OPSSHIELD выясняет, как были получены данные для входа и какие именно файлы ушли с каждого сервера. Компания пока не назвала число машин, установивших опасное обновление. Серверы проверяют наличие обновлений с разной периодичностью, поэтому не каждый из них обязательно запускал скрипт. Других признаков вредоносной активности пока не обнаружено, но OPSSHIELD подчёркивает: это предварительная оценка.
Проверить журнал обновлений можно командой:
grep 'Successfully updated' /opt/cpguard/logs/install_logЗапись о версии с 5.88.12 по 5.88.19 означает, что сервер установил затронутое обновление. Она сама по себе не доказывает, что скрипт выполнился или что данные были украдены, но такой сервер следует считать потенциально скомпрометированным — даже если сейчас на нём работает cPGuard 5.88.25 или новее. Отсутствие записи тоже не гарантирует безопасности: журнал мог быть удалён, неполон или не содержать нужных сведений. При сомнениях следует обратиться в OPSSHIELD Support.
Версия 5.88.25 и последующие удаляют бэкдор и оставленные скриптом файлы. OPSSHIELD просит обновить каждый сервер с cPGuard и проверить установленную версию:
cpgcli update --start
cpgcli --version
Номер версии должен быть не ниже 5.88.25. Если обновление не проходит или версия остаётся старой, нужно связаться с OPSSHIELD Support.
Среди найденных типов собранных данных — /etc/shadow и /etc/passwd, файл конфигурации MariaDB или MySQL my.cnf в каталоге root, история команд root, а также файлы SSH authorized_keys и known_hosts. Скрипт мог забрать не все перечисленные файлы с каждого сервера; компания ещё устанавливает, что именно было получено в каждом случае.
В /etc/shadow хранятся односторонние хеши паролей. Слабые, распространённые или уже утёкшие пароли иногда удаётся подобрать офлайн, проверяя варианты против этих хешей. Поэтому пароли нужно сменить даже в том случае, если они кажутся надёжными. Пароли баз данных и секреты из конфигурационных файлов или истории команд хешированием не защищены.
Если скрипт запускался или мог запуститься, пароли root и всех других локальных Linux-аккаунтов, использующих пароль, следует сменить из доверенной среды восстановления. Пароли, повторно использованные на других системах, нужно изменить и там, с доверенного устройства. Кроме того, необходимо заменить пароли баз данных, ключи доступа S3, токены DigitalOcean и другие секреты, записанные в истории команд root. Приватные SSH-ключи из /root/.ssh следует заменить, а соответствующие старые открытые ключи удалить на всех системах, которым они доверяли.
OPSSHIELD пока не рекомендует в обычном порядке полностью сбрасывать сервер или переустанавливать операционную систему. По мере расследования рекомендация может измениться. Если обнаружены другие признаки взлома или чистоту системы подтвердить не удаётся, компанию следует попросить оценить ситуацию отдельно; по итогам такой проверки может потребоваться переустановка.
Отдельное обновление OPSSHIELD выпускает как меру предосторожности: оно удалит с серверов ключи доступа службы поддержки, ранее добавленные в cPGuard. Эта функция позволяет клиентам предоставлять сотрудникам OPSSHIELD доступ к серверу для устранения неполадок. Согласно документации компании, при её включении открытый SSH-ключ OPSSHIELD добавлялся в authorized_keys пользователя root. Раскрывался ли соответствующий приватный ключ, OPSSHIELD не сообщала.
Опубликованные компанией имена файлов и каталогов: вредоносный скрипт cpguard-v58812-i91511.sh, оболочка бэкдора /var/tmp/.cpg91511_sh и каталог сбора данных /var/tmp/.cpg91511. В описании также приведён неполный путь /var/tmp/.cpg91511/loot.... Обновление удаляет бэкдор и каталог сбора, поэтому их отсутствие после обновления не доказывает, что скрипт никогда не запускался.


Новое на сайте

20959Что известно о предупреждении mSecure и какие меры принять? 20957Что делать администраторам cPGuard после взлома канала обновлений? 20956Бэкдор в телевизоре: как Google остановила сеть из 1,3 млн Android-устройств 20955Кто может получить доступ к кошелькам через плагин CryptoPayment Gateway? 20954Критическая уязвимость Siemens IoT2050 открыла путь к удалённым командам 20953Взлом Chainstack: под угрозой оказались данные клиентов и хеши паролей 20952Четыре проверки, которые помогают найти уязвимости с реальным риском 20951Две уязвимости Barracuda открывают путь к root-доступу 20950Почему устаревшие Synology NAS снова оказались мишенью вымогателей? 20949Старая техника Apple получила заплатку для опасной уязвимости 20948Как три уязвимости открыли ShinyHunters путь к серверам PeopleSoft? 20947Может ли ИИ сам собрать уязвимости в работающий взлом? 20946Уязвимость CVSS 10.0 в LXD и MicroCloud позволяет выдать себя за доверенного клиента 20945Google разрешит устанавливать приложения из сторонних магазинов одним нажатием
Ссылка