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

发布于 2019-11-16 19:22:40 字数 1361 浏览 1885 评论 0

本站一直使用的是 WordPress 程序,但是有一个通病就是访问速度一直很慢,无奈只好使用缓存来解决,虽然 WordPress 自己有缓存,但是效果不是很理想,内存缓存是最理想的解决方法,最终选择了 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 访问。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

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

0 文章
0 评论
84961 人气
更多

推荐作者

醉城メ夜风

文章 0 评论 0

远昼

文章 0 评论 0

平生欢

文章 0 评论 0

微凉

文章 0 评论 0

Honwey

文章 0 评论 0

qq_ikhFfg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文