原本只是贪便宜买了个一年特价的阿里云服务器,作作测试什么的,结果不知道哪一天开始阿里云安全中心就开始给我发什么安全提示类的信息,一开始我并不在乎,由于这些都是套路,不过是想让我升级购买高防盾罢了,反正是测试用的服务器无所谓,顶多就重装系统罢了。就这样过了半年左右,最近安全提示就像短信轰炸同样铺天盖地的来,近来也比较空就看了一眼,WTF成为挖矿肉鸡了,因而开始清理。。。。redis
一开始觉得就是简单的计划任务清理下就完事了,结果无限循环,因而开始百度。sql
#登陆个人ubuntu查看了一下进程
ps -ef
发现多了几个postgres向远程服务器发送请求的进程,因而优先想到杀死进程ubuntu
kill 进程ID
所有杀完再次查看,MLGB自启动了又多了一堆,这个时候就想应该是从postgres这个用户入手,回想了半天可是装PG的时候彷佛是跟着网上的教程弄,搞得本地的postgres用户密码为空,因而赶忙加个密码安全
sudo passwd postgres
设置好以后又杀了一遍进程,心想应该OK了吧,MLGB一查看又一堆,因而静下心来冥想,终于应该是个人postgres远程链接密码太弱形成的吧,因而改密码bash
#登陆psql终端 sudo -u postgres psql #在终端提示行底下键入 ALTER USER postgres WITH PASSWORD ‘一大堆乱七八糟本身都记不住的字符’; #而后退出终端 \q #重启服务 sudo service postgres restart
心想这下应该好了,结果不出意外仍是MLGB,改都改了难道不对?因而决定先停下postgres服务服务器
service postgres stop
好的,服务是停了进程还在,因而再杀一遍,此次查看HAHAHAHA好了~!curl
可是我是须要启动postgres服务的,因而再次启动函数
service postgres start
果不其然,那堆熟悉的进程又回来了。。。post
不过此次大概知道方向了,和postgres这个服务有关系,那么是否是这个东西有什么补丁没打?因而一顿搜索,都是教人怎么注入postgresql的测试
好吧,本身尝试一下吧,因而仔细查看了进程信息发现都是经过/bin/sh来启动curl
因而心想把这两个东西干掉不就完事了
#而后经过find命令找到他们 find / -name sh find / -name curl
出来一大堆结果,仔细筛选一下锁定了/bin/sh 和 /bin/curl
因而二话不说一顿删除
rm -f /bin/sh
rm -f /bin/curl
再次查看进程,OH~YEAH那些进程果真统统消失了
赶忙重启机器确认一下
reboot
WTF各类服务开不起来了,service命令提示没有权限,什么鬼,这下懵逼了,因而想到莫不是删了系统的东西?赶忙搜索一下,果不其然sh是用来启动脚本的,完了个蛋,赶忙查一下补救方法
#终于找到了补救方法就是经过/bin/bash作一个软链接就能够,问题是该目录下要有bash,还好运气不错该目录下有bash因而就作个软链接
ln -s /bin/bash /bin/sh
再次重启,各项服务都正常了,连那个该死的挖矿进程也回来了,*()&%*……*&%
回到原点,再次分析进程发现都是去访问https://pastebin.com/这个网址,因而就去搜索这个网址,果真找了了一些前辈的分享,赶忙瞜一眼
我找到了这篇https://blog.csdn.net/u010457406/article/details/89328869
跟着里面的步骤发现我ubuntu的系统yum不到bz2,又一筹莫展了,因而继续往下看,好家伙这位大哥把清楚函数的代码贴出来了,真是感激,因而照着里面写的命令一条一条的试,果真隐藏着无数的坑,顺便提一下个人是被假装在sendmail的文件中经过crontab定时任务发送,因而一顿操做以后系统彷佛没事了,各类重启什么的也没问题,至今问题解决已通过了8小时暂时安全,已经跟着阿里云里面这方面的补救措施一步步作了。
PS:最后提一嘴,宝塔面板虽然好用可是不会配置的东西仍是不要乱装,或者要了解一下再装,我用宝塔安装的redis虽然傻瓜可是没有提供更改端口和开启密码的接口,彷佛有些人是由于redis的漏洞被注入的,但愿看到文章的兄弟们若是redis没有密码没改端口是时候行动起来了~!