昨天说到了查找木马文件,那么今天的任务就是删除木马文件,修复系统。
3、删除木马文件
1)修改authorized_keys
先删除authorized_keys文件里的公钥。
当我执行 rm 命令的时候,我发现入侵者在我的authorized_keys文件里加了+i锁,不允许删除,还挺聪明的小家伙:
chattr +i /etc/authorized_keys /*文件不能删除、更改、移动*/
玛德,这是人干的事?
我继续查看,服务器的chattr命令也被删除了, 注意:删除chattr对于服务器来说,是被黑的第一步。
我知道的,查不到chattr命令:
这里我们只能尝试手动安装chattr,centos安装过程如下:
yum install e2fsprogs
然后:
接着清空authorized_keys文件:
2)用rm命令删除木马文件
put to death并删除已经发现的木马文件:
这个时候会发现CPU的使用频率没之前那么多了:
垃圾文件清理完毕,禁用密码登录,改用生成的秘钥登录。
这里可以先喘口气,看会儿小电影。
4、确定攻击源头——Redis
打开Redis的时候,会发现各种奇怪的键值。(果然技术在进步,攻击也在学习啊)
这个问题也是最容易被忽略的:
哎,失策了。Redis的端口开放了且没有密码……
虽然我也不知道他怎么知道找到我的服务器的,但是这个crackit看起来怪怪的。
我查阅了一些资料:
2015年11月10日,有网络安全厂商指出国内互联网产生了大量针对Redis数据库服务器的扫描流量,其中有不少Redis服务器的数据库被清空,且
/root/.ssh/authorized_keys文件被创建或改写,入侵者可以获取受影响服务器的完全控制权限。因为受影响的Redis服务器的数据库被清空,但留存有一条键名为crackit的记录,因此这次事件被命名为Redis Crackit入侵事件。
简单的描述就是redis在用户目录写入一个ssh私钥文件,从而建立一个信任关系,这样不需要输入ssh密码就可以登入。
总结来说,我的服务器有可能不是因为暴力撞库登录,而是通过Redis。
用top命令来检查一下……忒么的,木马文件又来了……看来Redis不清理干净,这个文件会一直徘徊在我身边……
等一下,kswapd0似曾相识?
kswapd0过高是因为物理内存不足,使用swap分区与内存换页操作交换数据,致使CPU占用过高。
kswapd0是个小东西,背后的真实作用是执行木马文件:
/tmp/.x25-unix/.rsynckswapd0
所以说不根除Redis,入侵者下次还可以用Redis的漏洞搞我的网盾服务器……(说实话,心好累)
实际上的kswapd0进程是这样的:
我特意执行Redis的时候截了图:
下载的是一个pm.sh脚本,打开它:
看似是一个sh脚本,实际上是一个png文件,还有可执行的权限。
可以直接下载下来给权限,并执行。 /.png
可以看出有一个bin脚本,删除,录入到/usr/bin里。
让他跑起来,不要停。
这过程chattr会被删除,authorized_keys文件被修改
最后执行的是 /usr/bin/kswaped这个脚本,开始找好东西。
再用top查看一下CPU利用率,又回到100%的状态。真是见鬼……
抓鸭子啊抓鸭子:
记住104.27.129.57 这个美国的CDN节点,摸着西瓜找藤子(不对说反了?)导出抓到的WirteShark包看看:
源IP请看红色部分,还可以看到请求数据库的操作(端口3306)。
难不成我服务器还有DDoS攻击?为了维护我的网络安全,网盾的客服一直让我赶紧处理……
分布式拒绝服务攻击可以使很多的计算机在同一时间遭受到攻击,使攻击的目标无法正常使用,分布式拒绝服务攻击已经出现了很多次,导致很多的大型网站都出现了无法进行操作的情况,这样不仅仅会影响用户的正常使用,同时造成的经济损失也是非常巨大的。
分布式拒绝服务攻击方式在进行攻击的时候,可以对源IP地址进行伪造,这样就使得这种攻击在发生的时候隐蔽性是非常好的,同时要对攻击进行检测也是非常困难的,因此这种攻击方式也成为了非常难以防范的攻击。
5、预防针
服务器之所以被攻击,还是因为暴露的公网端口太多了,特别是Redis6789、MySQL3306这种,当然了,密码过于简单也占了很大的原因。
根据我的经验来给你打个预防针:
1)服务器
修改 /etc/ssh/sshd_config文件
不允许密码登录,只有秘钥才能登录
更改ssh默认端口,防止出现暴力撞库
root账户无法直接登陆,仅有特定IP才可以访问
如:
2)应用
Redis只能本地访问,修改默认端口,不是所有IP都可见;
MySQL仅对特定IP开放访问权限;
设置端口的防火墙规则;
当然了,你还可以使用跳板机、堡垒机访问。
3)备份
这玩意儿就和救命稻草一样的,一旦不小心操作,你可以备份恢复数据。当然了,一定要设置定期。
这期的分享就到这里,希望大家在平时的使用中注意操作规则,保护好自己的网络安全。
领取专属 10元无门槛券
私享最新 技术干货