相信不少开发所在的公司项目都是使用阿里云或华为云等提供的公有云服务,相信不少人也遇到过服务器被病毒攻击的情况,即使公司有运维,很可能也会采取“重装大法”的方式去处理,因为如果想找到问题进程,清除干净,并且排查清楚漏洞,需要花不少时间,最快的方式当然是重装系统。但是假如公司没有专业运维,只能靠你自己,而且项目的情况还不建议去服务器进行重装,你要怎么修复呢?我给大家介绍一次我的处理过程,不一定对每一次脚本攻击都有效,但是起码可以给大家定位排查提供一点思路。

我们当时的项目是B/S架构,前端有个Web界面,后台微服务部署在阿里云服务器,我们不是线上的项目,卖软件包的,自己服务器顶多就客户试用,我们没有专业的运维,有个运维的岗位只负责帮我们修电脑,整邮箱账号啥的。那天我像技术部其他新生代农民工一样,在工位噼噼啪啪地编码,本以为依旧可以平稳地度过这一天,结果在我拿起水杯喝水的时候项目经理一声大喊打破了平静的氛围:“页面怎么打不开了!快看下咋回事儿?”。

还没等我这个后台登录上服务器,前端哥们儿已经通过f12确认了自己没问题并把锅甩向后台:“前端请求没事儿,后台没响应”。

“知道了,我在看!”,我登进服务器之后,先检查了服务进程,确认了进程没挂,但是服务器命令执行有点卡,但是还好top命令还可以执行,执行完后发现芭比Q了,CPU占用咋爆满了,难怪服务器这么卡呢。我第一时间想到既然是阿里云的服务器,给阿里云提工单帮忙解决呗,但是项目经理说页面有客户在试用体验呢,提工单不知道阿里云多久能解决。于是我就先提了工单,然后自己开始折腾,我先是根据top命令找到占用CPU最多的进程的PID,好说,直接kill掉,CPU降下来了,我是不是搞定了!

可是没过二十秒,病毒进程又起来了,这T喵的不是搞我心态吗!这不会是个定时任务吧?起得这么快,赶紧crontab -e看一下。

果然有行定时任务不是我们自己写的,然后我把定时任务以及病毒进程指向的文件都删除掉,最后把那行定时任务也清除掉,等待五分钟,十分钟后病毒进程都没起来,舒服了。

可是人家是咋黑进我们服务器并且在我们服务器里玩这么多骚操作的呢?努力百度了半天发现网上有人说服务器Redis端口要把默认的6379改掉,因为大家都知道这个默认的端口,黑客可以通过这个端口黑进服务器并实现免密登录,刚好我们服务器的Redis端口还真没改,用的就是默认的,吓得我赶紧进Redis配置文件把端口改了重启,顺便把Mysql等中间件的默认端口也改了,之后一直到我离职前也没出过类似问题。所以说对于新人开发来说,遇到凡事不要慌,也不要拿手机拍照,冷静分析,从我们开发的角度思考定位到根因,一步步地解决,只要方向不乱,思路清晰,遇到没处理过的事儿大多也可以靠自己搞定。

分类: 软件分享 标签: 暂无标签

评论

暂无评论数据

暂无评论数据

目录