Невідомий зловмисник націлився на десятки тисяч неавтентифікованих серверів Redis, доступних в Інтернеті, намагаючись встановити майнер криптовалюти.
Наразі невідомо, чи всі ці хости були успішно скомпрометовані. Проте, це стало можливим завдяки менш відомому методу, який вперше було зафіксовано у вересні 2018 року.
«Загальна ідея використання цієї методики полягає в тому, щоб налаштувати Redis для запису своєї файлової бази даних у каталог, що містить певний метод авторизації користувача (наприклад, додавання ключа до «.ssh/authorized_keys») або запуску процесу (наприклад, додавання сценарій до ‘/etc/cron.d’)”, – доповідає Censys у новій статті.
Платформа керування поверхнею атак заявила, що виявила докази (тобто команди Redis), які вказують на спроби зловмисника зберегти зловмисні записи crontab у файлі “/var/spool/cron/root”, що призвело до виконання скрипту оболонки, розміщеного на хості на віддаленому сервері.

Скрипт оболонки, який все ще доступний, створено для виконання таких дій:
- Припинити процеси, пов’язані з безпекою і моніторингом системи
- Очистити файли журналу та історію команд
- Додати новий ключ SSH (“backup1”) до файлу authorized_keys кореневого користувача, щоб увімкнути віддалений доступ
- Вимкнути брандмауер iptables
- Встановити інструменти сканування, такі як masscan
- Встановити й запустити програму для майнінгу криптовалют XMRig
Зазначається, що ключ SSH було встановлено на 15 526 із 31 239 неавтентифікованих серверів. Це свідчить про те, що спроба атаки була здійснена на «понад 49% відомих неавтентифікованих серверів Redis в Інтернеті».

Однак основною причиною невдачі цієї атаки є те, що служба Redis повинна працювати з підвищеними правами доступу (тобто root), щоб дозволити зловмиснику писати вищезгаданий крон у директорії.
«Однак це може статися під час запуску Redis всередині контейнера (наприклад, докера), де процес може бачити себе запущеним від імені root і дозволити зловмиснику записати ці файли», — повідомили дослідники Censys. «Але, цьому випадку, впливу піддасться лише контейнер, а не фізичний хост».
Звіт Censys також показав, що існує близько 350 675 доступних через Інтернет служб бази даних Redis, які охоплюють 260 534 унікальних хостів.
«Хоча більшість із цих сервісів вимагає автентифікації, 11% (39 405) цього не вимагає», — заявили в компанії, додавши, що «на тих 39 405 неавтентифікованих серверів Redis, які ми спостерігали, потенційний обсяг незахищених даних становить понад 300 гігабайтів».
У топ-10 країн із відкритими та неавтентифікованими службами Redis входять Китай (20 011), США (5 108), Німеччина (1 724), Сінгапур (1 236), Індія (876), Франція (807), Японія (711), Гонконг (512), Нідерландів (433) та Ірландії (390).
Китай також займає передові позиції за обсягом відкритих даних на країну (146 гігабайтів). На другому місці — США, де обсяг становить близько 40 гігабайтами.
Censys повідомила, що також виявила численні випадки неправильно налаштованих служб Redis. Додатково зазначила, що «Ізраїль є одним із небагатьох регіонів, де кількість неправильно налаштованих серверів Redis перевищує кількість правильно налаштованих».
Щоб пом’якшити загрози, користувачам рекомендується:
- ввімкнути автентифікацію клієнта
- налаштувати Redis для роботи лише на внутрішніх мережевих інтерфейсах
- запобігти зловживанню командою CONFIG, перейменувавши її на щось, що неможливо вгадати
- налаштувати фаєрвол, щоб приймати з’єднання Redis лише з довірених хостів