ITPub博客

首页 > 应用开发 > > 一个致命的 Redis 命令,导致公司损失 400 万

一个致命的 Redis 命令,导致公司损失 400 万

作者:jasonhsp 时间:2019-10-08 16:56:42 0 删除 编辑

什么样的 Redis 命令会有如此威力,造成如此大的损失?

具体消息如下:

看完这个消息后,我心又一惊,为什么这么低级的问题还在犯?为什么线上的危险命令没有被禁用?这事件报道出来真是觉得很低级。。。

且不说是哪家公司,发生这样的事故,不管是大公司还是小公司,我觉得都不应该,相关负责人应该引咎辞职!!!

对 Redis 稍微有点使用经验的人都知道线上是不能执行keys *相关命令的,虽然其模糊匹配功能使用非常方便也很强大,在小数据量情况下使用没什么问题,数据量大会导致 Redis 锁住及 CPU 飙升,在生产环境建议禁用或者重命名!

还有哪些危险命令?

Redis 的危险命令主要有以下几个:

keys

客户端可查询出所有存在的键。

flushdb

删除 Redis 中当前所在数据库中的所有记录,并且此命令从不会执行失败。

flushall

删除 Redis 中所有数据库中的所有记录,不只是当前所在数据库,并且此命令从不会执行失败。

config

客户端可修改 Redis 配置。

怎么禁用或重命名危险命令?

看下redis.conf默认配置文件,找到SECURITY区域,如以下所示。

看说明,添加rename-command配置即可达到安全目的。

1)禁用命令

2)重命名命令

上面的 XX 可以定义新命令名称,或者用随机字符代替。

经过以上的设置之后,危险命令就不会被客户端执行了。

原文地址:https://mp.weixin.qq.com/s/qqDNoQVbyupm3TiJ_KasSA

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/615/viewspace-3148758/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-04-12

  • 博文量
    342
  • 访问量
    2725