Обновление за 72 минуты: бэкдор на 3000 серверах
Один подменённый апдейт защитного модуля, и почти 3000 Linux-серверов отдали злоумышленнику хеши паролей, SSH-ключи и настройки баз данных. Окно заражения: 72 минуты.
Недавно ко мне пришёл владелец небольшой торговой фирмы: «Мы же поставили защитный модуль, почему вы говорите, что нас можно открыть?» Модуль стоял. А обновлялся он сам, ночью, без чьего-либо контроля. Ровно по такой схеме сработала история с cPGuard: злоумышленник подменил обновление, и за 72 минуты вредонос с бэкдором разошёлся примерно на 3000 серверов.
Что украли и чем это грозит
С серверов уходили хеши паролей, SSH-ключи и конфигурации баз данных. Простыми словами: у чужого человека оказались ключи от двери, а в настройках баз лежали адреса и доступы к клиентской информации. Для бизнеса без штатного ИТ-специалиста это замена всех паролей, остановка сайта на разбор и неприятные письма клиентам. Если база клиентов утекла, платить придётся и деньгами, и репутацией.
Что делать владельцу
1. Выяснить, какие программы на сервере обновляются сами и от чьего имени. Обычно это занимает час, а у многих такого списка нет вообще.
2. Отключить слепое автообновление для всего, что стоит на серверах с клиентскими данными: сначала проверка на копии, потом установка.
3. Заменить SSH-ключи и пароли к базам, если сомневаетесь в источнике обновлений. Хранить их в одном месте и знать, у кого они есть.
4. Настроить уведомление в рабочий мессенджер (например, VK Teams) о любом новом входе на сервер, чтобы руководитель узнавал об этом сам, а не из жалоб.
Что изменится
Было: сервер сам тянет любые обновления, и о подмене никто не узнает до последствий. Стало: каждое обновление проходит проверку, а лишний вход на сервер виден владельцу в течение минут. Такая настройка обходится в разы дешевле, чем простой магазина на неделю после утечки.
Пока вы читаете этот пост, чьи-то серверы уже получают очередное обновление. А вы знаете, какие из ваших программ обновляются сами и кто за этим следит?