场景在线
第一章:夜黑风高的中午
那是一个夜黑风高的中午,我躺在床上看小姐姐跳舞,突然,我的手机就收到了一条消息
os:啊?什么情况,我项目都没部署,现在服务器里面只有MySQL,ES,Redis,怎么就有入侵
于是我垂死病中惊坐起,赶紧打开了服务器,发现服务器并没有什么问题,只是多了个文件,那可能是从我的ssh进来的吧
于是我直接将这个文件删除,将ssh连接的防火墙关闭,就继续去看小姐姐了
第二章:第二个夜黑风高的晚上
过了几天,在我几乎都忘掉这个事情的晚上,我依然在看小姐姐的时候,项目的兄弟突然发消息说,服务器无法访问了,于是我立马打开电脑准备连接服务器,发现根本无法访问,我打开腾讯云的服务器页面,发现CPU直接爆了,啊!!!!什么情况
没有办法,只好把系统重装了一下,然后升级了一下腾讯云的安全防护
第三章:意识到了事情的严重性
在第二天,我还没有反应过来是什么原因的时候,手机就收到了腾讯的警告
?????
我终于意识到了问题的严重性,于是我开始寻找我的安全漏洞,首先我之前就已经将ssh的连接关闭了,那肯定不是ssh进来的,而且是正常进来运行命令的,那肯定是哪里泄露了,目前只有三个中间件对外暴露,一个是MySQL,一个是redis,一个是es
我决定抓一下内鬼,我先是只开启三个中间件其中一个的端口,其他的全部关闭,用排除法去测试
第四章:真相大白
终于在这个阳光明媚的下午,我正在公司立马和甲方IT扯皮时,手机又收到了消息
我赶紧去查看我的哪个端口是开启的,发现是redis的端口
终于真相大白了
全局复盘
原因:Redis弱口令问题
入侵方式:首先,通过redis的接口,将gjf文件写入服务器做准备,类似于将炸药埋到山里
然后通过redis计划任务执行base的命令,他这个base64是解码后运行的,我将这个base64字符进行解码
发现他是从一个网站下载一个脚本,于是我进入了这个网站下载了这个文件
再用notepad打开后,我终于看到了他的代码
此时,我想起来了,之前我删掉了哪个gif文件,他检测了我是否存在运行gif文件的环境,以及是否存在gif文件,如果没有,就会帮我进行安装和执行(所以我之前删除了gif文件也没有用)
这个脚本就像是起爆器,起爆了那个之前埋在我的服务器里面的gif文件,gif文件启动,挤爆cpu让服务器宕机。
总结
各位开发在自己服务器开发项目的时候,如果要使用中间件,一定不能使用弱命令,现在有太多的自动攻击脚本,他们攻击我们是无成本的,而我们要付出很多倍的时间去寻找问题
另外:一定要注意多给服务器留镜像,这样就算重新系统也不需要花太多时间去重装
_ooOoo_
o8888888o
88" . "88
(| -_- |)
O = /O
____/`---'____
.' \| |// `.
/ \||| : |||//
/ _||||| -:- |||||-
| | \ - /// | |
| _| ''---/'' | |
.-__ `-` ___/-. /
___`. .' /--.-- `. . __
."" '< `.____<|>_/___.' >'"".
| | : `- `.;` _ /`;.`/ - ` : | |
`-. _ __ /__ _/ .-` / /
======`-.____`-.________/___.-`____.-'======
`=---='
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// 佛祖保佑 永不宕机 永无BUG //