最近安全事故濒发啊,前几天发生了《顺丰高级运维工程师的删库事件》,今天又看到了 PHP 工程师在线执行了 Redis 危险命令导致某公司损失 400 万。。什么样的 Redis 命令会有如此威力,造成如此大的损失?具体消息...
最近安全事故濒发啊,前几天发生了《顺丰高级运维工程师的删库事件》,今天又看到了 PHP 工程师在线执行了 Redis 危险命令导致某公司损失 400 万。。
什么样的 Redis 命令会有如此威力,造成如此大的损失?
具体消息如下:
?
看完这个消息后,我心又一惊,为什么这么低级的问题还在犯?为什么线上的危险命令没有被禁用?这事件报道出来真是觉得很低级。。。
且不说是哪家公司,发生这样的事故,不管是大公司还是小公司,我觉得都不应该,相关负责人应该引咎辞职!!!
对 Redis 稍微有点使用经验的人都知道线上是不能执行keys *相关命令的,虽然其模糊匹配功能使用非常方便也很强大,在小数据量情况下使用没什么问题,数据量大会导致 Redis 锁住及 CPU 飙升,在生产环境建议禁用或者重命名!
还有哪些危险命令?
Redis 的危险命令主要有以下几个:
keys
客户端可查询出所有存在的键。
flushdb
?
删除 Redis 中当前所在数据库中的所有记录,并且此命令从不会执行失败。
flushall
?
删除 Redis 中所有数据库中的所有记录,不只是当前所在数据库,并且此命令从不会执行失败。
config
客户端可修改 Redis 配置。
怎么禁用或重命名危险命令?
看下redis.conf默认配置文件,找到SECURITY区域,如以下所示。
?
看说明,添加rename-command配置即可达到安全目的。
1)禁用命令
?
2)重命名命令
?
上面的 XX 可以定义新命令名称,或者用随机字符代替。
经过以上的设置之后,危险命令就不会被客户端执行了。
本文标题为:一个致命的 Redis 命令,导致公司损失 400 万!!
- MySQL8.0.28安装教程详细图解(windows 64位) 2023-07-26
- redis清除数据 2023-09-13
- 搭建单机Redis缓存服务的实现 2023-07-13
- 基于Python制作一个简单的文章搜索工具 2023-07-28
- Oracle 删除大量表记录操作分析总结 2023-07-23
- 在阿里云CentOS 6.8上安装Redis 2023-09-12
- Mongodb启动报错完美解决方案:about to fork child process,waiting until server is ready for connections. 2023-07-16
- SQL Server 2022 AlwaysOn新特性之包含可用性组详解 2023-07-29
- SQLSERVER调用C#的代码实现 2023-07-29
- Numpy中如何创建矩阵并等间隔抽取数据 2023-07-28