Сервер взломан/используется для добычи биткоинов — как это остановить?

Сервер взломан/используется для добычи биткоинов — как это остановить?

Я оказался в сложной ситуации: мой сервер был взломан и, по-видимому, задействован в операции по майнингу биткоинов.

Мне нужно знать, с чего начать, по крайней мере, я начинающий системный администратор и раньше с этим не сталкивался. Это выжимает из меня всю полосу пропускания, и мой хостинг-провайдер берет с меня 50 центов за ГБ, и из-за этого за один день он подскочил с 255 ГБ до 301,8 ГБ. Любая помощь приветствуется.

Я нашел много мусора в журналах, связанных со Stratum, а также скрипты на внешних IP-адресах, запущенные против моего сервера. Затем я смотрю в свой каталог /tmp и вижу 7 файлов, которые

  • Баш
  • cron.d
  • мех.дир
  • ш
  • spamd_full.sock
  • обновлять

Пример содержимого моего журнала ошибок Apache выглядит следующим образом:

[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] --2013-11-28 16:27:40--  http://74.208.228.113/sh
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] Connecting to 74.208.228.113:80...
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] connected.
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] HTTP request sent, awaiting response...
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] 200 OK
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] Length:
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] 518288
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104]  (506K)
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104]  [text/plain]
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] Saving to: `sh'
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104]
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104]      0K
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104]
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] .
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] ... .......... ..........  9%  148K 3s
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104]     50K ........
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] .. .......... .......... .......... .....
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104] ..... 19%  172K 3s
[Thu Nov 28 16:27:40 2013] [error] [client 173.201.45.104]    100K .......... .......... ......
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] .... .......... .......... 29%  344K 2s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]    150K .......
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] ... .......... .......... .......... .......... 39%  514K 1s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]    200K .........
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] .
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]  ..
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] .
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] .
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] ..
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] .
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] .
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] .. .......... .......... .......... 49%  347K 1s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]    250K .......... .......... .......... ........
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] .. .......... 59%  347K 1s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]    300K .......... .......... .......... .......... .......... 69%  224M 1s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]    350K .
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] ......... .......... .......... .......... .......... 79%  347K 0s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]    400K .......... ...
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] ....... .......... .......... .......... 88%  348K 0s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]    450K .......... .......... .......... .......... .......... 98%  254M 0s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]    500K ...
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] ...                                                100% 64.1K=1.5s
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104] 2013-11-28 16:27:41 (328 KB/s) - `sh' saved [518288/518288]
[Thu Nov 28 16:27:41 2013] [error] [client 173.201.45.104]
[Thu Nov 28 16:27:58 2013] [error] [client 173.201.45.104] kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] a: line 24: ./bash: No such file or directory
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] chattr
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] :
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] Operation not permitted
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104]
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] while setting flags on bash
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] \r
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] chattr
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] :
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] Operation not permitted
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104]
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] while setting flags on sh
[Thu Nov 28 16:28:26 2013] [error] [client 173.201.45.104] \r
[Thu Nov 28 16:28:28 2013] [error] [client 173.201.45.104] [2013-11-28 16:28:28] 2 miner threads started, using 'scrypt' algorithm.
[Thu Nov 28 16:28:28 2013] [error] [client 173.201.45.104] [2013-11-28 16:28:28] Starting Stratum on stratum+tcp://216.230.103.42:3333
[Thu Nov 28 16:28:28 2013] [error] [client 173.201.45.104] [2013-11-28 16:28:28] Stratum connection failed: Failed connect to 216.230.103.42:3333; Connection refused
[Thu Nov 28 16:28:28 2013] [error] [client 173.201.45.104] [2013-11-28 16:28:28] ...retry after 30 seconds
[Thu Nov 28 16:28:33 2013] [error] [client 173.201.45.104] [2013-11-28 16:28:33] Binding thread 1 to cpu 1
[Thu Nov 28 16:28:58 2013] [error] [client 173.201.45.104] [2013-11-28 16:28:58] Stratum connection failed: Failed connect to 216.230.103.42:3333; Connection refused
[Thu Nov 28 16:28:58 2013] [error] [client 173.201.45.104] [2013-11-28 16:28:58] ...retry after 30 seconds
[Thu Nov 28 16:29:21 2013] [error] [client 173.201.45.104] [2013-11-28 16:29:21] Binding thread 0 to cpu 0
[Thu Nov 28 16:29:28 2013] [error] [client 173.201.45.104] [2013-11-28 16:29:28] Stratum connection failed: Failed connect to 216.230.103.42:3333; Connection refused

решение1

Я бы сначала заблокировал подключение к внешним адресам с помощью iptables

iptables -A OUTPUT -d IP_Address -j DROP

Убедившись, что все IP-адреса заблокированы, сохраните iptables: # /sbin/service iptables saveзатем удалите файлы, размещенные злоумышленником.

Возможно, вам стоит взглянуть на него /etc/var/log/messagesи /etc/var/log/secureпосмотреть, нет ли каких-либо записей, оставленных злоумышленником, которые могли бы указать на то, как он/она мог закрепиться на вашем сервере.

Если у вас есть веб-сайт, убедитесь, что на нем нет веб-страниц, позволяющих пользователям загружать файлы, например оболочки PHP.

Это должно помочь вам начать. Вы также можете попросить своего хостинг-провайдера выполнить антивирусное сканирование, чтобы найти любые скрипты/файлы, которые разрешают доступ.

решение2

Ваши боты-майнеры не подключаются, поэтому он снова и снова запускает эксплойт и загружает майнеры.

Недавно мы увидели попытку эксплуатации неверных настроек cgi-bin, которая выглядит связанной.

Он пытался загрузить

74.208.228.113 / a 

и выполнить его как скрипт оболочки.

Этот скрипт делает несколько вещей, когда мы его рассмотрели, он стер запись в crontab и заменил ее попыткой запустить скрипт, извлеченный из

74.208.228.113 / update

Он также помещает тот же скрипт в /etc/cron.hourly

Этот скрипт делает 'ps x' и greps для успешного подключения майнера. Если он его не видит, он снова загружает скрипт и перезапускается.

В самом конце скрипта он захватывает

74.208.228.113 / clamav

и

74.208.228.113 / sh

которые выглядят как по-разному скомпилированные версии minerd. Он переименовывает clamav в bash, а затем запускает оба майнинга на 216.230.103.42.

Итак, если вас эксплуатировали подобным образом, вам необходимо:

  1. отключить cgi-bin

  2. проверьте crontab на предмет того, какой пользователь запускает httpd (вероятно, root или apache) и удалите запись «update»

  3. Проверьте /etc/cron.hourly/ на наличие файла с именем update и посмотрите, ссылается ли он на 216.230.103.42, к которому майнеры не могут подключиться. Удалите его, чтобы

Это те записи обновления, которые используют полосу пропускания. Crontab запускается раз в минуту, каждую минуту.

Однако я думаю, что лучшим ответом будет сбросить его с орбиты. Если ваш cgi-bin настроен на разрешение удаленных эксплойтов, которые запускают скрипты, нет никакой гарантии

Связанный контент