Memcache 内存缓存的未授权访问漏洞 - 文章教程

Memcache 内存缓存的未授权访问漏洞

发布于 2019-11-16 字数 1843 浏览 1567 评论 0

本站一直使用的是 WordPress 程序,但是有一个通病就是访问速度一直很慢,无奈只好使用缓存来解决,虽然 WordPress 自己有缓存,但是效果不是很理想,内存缓存是最理想的解决方法,最终选择了 Memcache 作为内存对象缓存,不过在配置的过程中出现了一个未授权访问漏洞。

Memcache 内存缓存的未授权访问漏洞

漏洞描述

Memcache 是一套常用的 key-value 缓存系统,由于它本身没有权限控制模块,所以开放在外网的 Memcache 服务很容易被攻击者扫描发现,通过命令交互可直接读取 Memcache 中的敏感信息。

修复方案

因 Memcache 无权限控制功能,所以需要用户对访问来源进行限制,下面分享 4 中有效的解决方法。

1、绑定IP

如果 Memcache 没有在外网开放的必要,可在 Memcache 启动的时候指定绑定的 IP 地址为 127.0.0.1 例如:

memcached -d -m 1024 -u root -l 127.0.0.1 -p 11211 -c 1024 -P /tmp/memcached.pid

其中 -l 参数指定为本机地址。

2、配置 IPTables 规则

如果 Memcache 服务需要对外提供服务,则可以通过 IPTables 进行访问控制。

iptables -A INPUT -p tcp -s 192.168.0.2 --dport 11211 -j ACCEPT

上述规则的意思是只允许 192.168.0.2 这个ip对 11211 端口进行访问。

3、修改配置文件

如果你使用的 Linux,你可参考下面的方法:

先查看 11211 端口占用情况

命令:netstat -an|more

显示  0  0.0.0.0:11211  即没有做IP限制

执行命令:nc -vv x.x.x.x 11211 提示连接成功

执行命令:vim /etc/sysconfig/memcached,修改配置文件

增加限制    OPTIONS=”-l 127.0.0.1″,只能本机访问,不对公网开放,保存退出

执行命令:/etc/init.d/memcached reload 重启服务即可

再执行连接命令提示连接失败,

4、服务器安全软件

如果你的服务器安装了安全软件,例如安全狗等,你可以配置 Tcp 连接策略,限制 Memcache 端口的外网 IP 访问。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

2891 文章
评论
84935 人气
更多

推荐作者

时光倒影

文章 0 评论

qq_YyjhCs

文章 0 评论

三人与歌

文章 0 评论

┼──瘾||

文章 1 评论