Криптоджекинг: когда компьютер майнит на чужого
Как проникает майнинговое вредоносное ПО, почему от владельца рига это сложнее всего скрыть и его проще всего обмануть, и как проверить и очистить ПК.
Что это такое
Криптоджекинг это когда кто-то запускает майнер на оборудовании, которым не владеет и за которое не платит. Это не редкость: это самое частое, что делает вредоносная программа с машиной, когда та уже в её руках, потому что выплата не требует потом никого ни на что обманывать. Жертва здесь электроэнергия, и счёт за неё приходит тихо.
Почти всегда это Monero. Эту монету можно майнить с прибылью на обычных процессорах, поэтому несколько тысяч офисных компьютеров стоят того, а её приватность не даёт отследить деньги. Программа обычно XMRig, обычный майнер с открытым кодом, с изменёнными именем и конфигурацией.
Машина, которая майнит на кого-то другого, ведёт себя не так, как ожидают от заражённой. Ничего не зашифровано, ни один файл не пропал, требование выкупа не появляется. Она просто греется, сбрасывает частоты, изнашивает вентиляторы и стоит денег.
Почему всё иначе, если вы уже майните
Каждая типовая статья говорит одно и то же: ищите высокую загрузку процессора, ищите нагрев, ищите шум вентиляторов. На риге все три признака это нормальное состояние, поэтому обычный совет ничего не обнаруживает. Будучи майнером, вы лучше всех подготовлены, чтобы это найти, и вас проще всех обмануть.
Ваше преимущество в том, что у вас есть то, чего почти ни у кого нет: вторая, независимая запись того, что произвело ваше оборудование. Дашборд пула считается на чужом сервере по работе, которая действительно пришла. Если риг сообщает один хешрейт, а дашборд заметно ниже, даже с учётом устаревших шар, значит, что-то поглощает разницу.
Как он попадает на машину
Пути почти не изменились, и ни один из них не требует искушённого злоумышленника.
- Взломанные и пиратские программы. По-прежнему главный источник. Кейген или пропатченный установщик платного приложения это программа, которую вы согласились запустить со своими правами, и майнер едет внутри архива.
- Всё, что открыто в интернет без обновлений. Старые, широко известные уязвимости серверного ПО сканируются непрерывно, и майнер самая желанная начинка, потому что он приносит деньги с машины, на которой нечего украсть.
- USB. Недавние кампании копируют себя на съёмные накопители и прячутся за ярлыком, похожим на значок накопителя; так заражается даже сеть без выхода в интернет.
- Образы контейнеров и сборок. Базовый образ из публичного реестра может содержать майнер, и тогда он майнит в каждой среде, собранной из этого образа.
- Вкладка браузера, хотя гораздо реже, чем раньше. Скрипты, майнящие, пока открыта страница, были целой индустрией, пока крупнейший поставщик не закрылся в 2019 году; они до сих пор встречаются на сайтах со стримами и загрузками, но останавливаются вместе с вкладкой.
Признаки на машине, которая должна простаивать
- Она никогда по-настоящему не простаивает. Вентиляторы крутятся, корпус тёплый, хотя ничего не открыто.
- Процесс, происхождение которого вы не можете объяснить, часто названный похоже на настоящий системный. Разница в один символ в знакомом имени это частый приём.
- Нагрузка, которая падает, как только вы открываете диспетчер задач, и возвращается, когда вы его закрываете. Такое поведение намеренное и само по себе почти доказательство.
- Запланированная задача, служба или запись автозагрузки, которую никто не создавал.
- Исходящие подключения к незнакомому хосту, повторяющиеся в постоянном ритме.
Признаки на риге, который должен майнить
Здесь вопрос не в том, майнит ли что-то, а в том, всё ли, что майнит, ваше.
- Дашборд стабильно ниже того, что сообщает риг, и разница больше, чем объясняют устаревшие шары.
- Два процесса майнинга там, где вы запускали один. На риге с несколькими GPU их стоит пересчитать.
- В вашем скрипте запуска или полётном листе (flight sheet) есть адрес кошелька или хост, который вы не вводили. Читайте его, а не пробегайте глазами: адрес, изменённый в середине, на беглый взгляд выглядит так же.
- Карта греется, но ничего не производит на вашем пуле; так выглядит второй майнер, привязанный к одному устройству.
- Машина майнит, когда вы её остановили. Если после остановки вашего майнера машина не затихает, работает что-то другое.
Подмена кошелька, которая стоит дороже электроэнергии
Отдельное семейство вредоносных программ делает нечто худшее и более простое. Оно следит за буфером обмена, и когда вы копируете что-то похожее на адрес кошелька, заменяет его адресом злоумышленника, выбирая такой, который начинается и заканчивается теми же символами, чтобы беглая проверка прошла. Люди теряли так крупные суммы безо всякого майнинга, а эти две программы часто устанавливаются вместе.
Для майнера есть второй вариант той же идеи: адрес в скрипте запуска или в полётном листе переписывается один раз, и все последующие выплаты уходят в другое место. Ничего не ломается. Риг майнит идеально. Деньги просто приходят на другой кошелёк, и обычно люди узнают об этом, удивившись, почему не пришла выплата.
Защита скучная и работает. Вставив адрес туда, где это важно, проверяйте его целиком, а не только начало и конец, и убедитесь, что адрес на вашем дашборде тот, который вы имели в виду. Если выплаты прекратились, а хешрейт нет, первым делом проверьте адрес.
Как проверить, по порядку
- Сравните два хешрейта. Сообщаемый ригом и на дашборде пула, за сутки, а не за минуту.
- Прочитайте свою конфигурацию. Каждый адрес кошелька и каждый хост, символ за символом, на каждом риге.
- Остановите майнер и понаблюдайте. Если машина и после этого занята, на ней работает что-то ещё.
- Посмотрите, что запускается само. Запланированные задачи и службы в Windows, таймеры и cron в Linux, а также всё, что запускается при входе в систему.
- Посмотрите на исходящие подключения, пока ваш майнер остановлен. Всё, что продолжает общаться в постоянном ритме, стоит опознать.
- Проверьте надёжным сканером, но не останавливайтесь на чистом результате. Майнеры регулярно модифицируют, пока сканеры не перестанут их узнавать, поэтому этот шаг последний, а не первый.
Удаление это не просто удаление файла
Такие программы созданы, чтобы возвращаться. Удаление программы, когда то, что её запускает, остаётся, даёт лишь несколько минут. Удалите запланированную задачу, службу, запись автозагрузки, строку cron и ключ реестра, затем файл, затем перезагрузитесь и проверьте, что ничего не вернулось.
На важной машине, и особенно на любой, где когда-либо хранились кошелёк или приватный ключ, честным вариантом будет полная переустановка. Тот же доступ, через который установили майнер, позволяет установить что угодно ещё, а современная кампания по пути соберёт учётные данные. Смените пароли, которые видела эта машина, с другого устройства.
Как оставаться чистым
Правила, которые действительно это предотвращают, скучные, и их пропускают, потому что майнинг означает скачивание неподписанных программ от незнакомцев.
- Майнеры берутся со страницы релизов самого проекта, и вы проверяете опубликованную контрольную сумму. Майнер по ссылке с форума, из описания видео или из перепакованного архива это самый вероятный путь заражения майнинговой машины, именно потому, что вы ожидали предупреждения и отмахнулись от него.
- Никогда не запускайте взломанные программы на машине, которая майнит или хранит кошелёк. Никогда. Эти две привычки несовместимы.
- Обновляйте всё, что открыто в интернет. Большинство заражений автоматические и выбирают машины по номеру версии.
- Держите кошелёк, на который вам платят, отдельно от машины, которая майнит. Ригу нужен только адрес, а ключи никогда.
- Проверяйте адрес выплат после любого изменения рига и ещё раз после любого неожиданного события с ним.