首页 > 其他分享 >CVE-2016-4437

CVE-2016-4437

时间:2023-01-06 18:24:14浏览次数:44  
标签:2016 rememberMe 4437 密钥 shiro 序列化 CVE Shiro deleteMe

漏洞名称

Apache shiro 1.2.4反序列化漏洞(CVE-2016-4437)

利用条件

Apache Shiro <= 1.2.4

漏洞原理

Shiro提供了记住我(RememberMe)的功能,比如访问淘宝等网站时,关闭了浏览器下次再打开时还是能够记住上次访问过的用户,下次访问时无需再登录即可访问

Shiro会对cookie中的Remember me字段进行相关处理:序列化-->AES加密-->base64编码

由于Shiro本身含有一个预设的AES密钥Base64.decode("KPHblxk5D2deZilxcaaaA=="),每个人都能够通过源代码拿到该密钥,因此攻击者可以构造一个恶意的对象,对其进行序列化并用该密钥进行加密,base64编码,最后作为cookie中的Remember me字段发送。Shiro得到该Remember me字段后进行解码解密并且反序列化,进而导致任意命令执行

漏洞利用

1.检测

在返回包的 Set-Cookie 中存在 rememberMe=deleteMe 字段

如果直接发送数据包,返回包不存在特征:Set-Cookie: rememberMe=deleteMe;

可以在请求包中的cookie中添加:rememberMe=deleteMe;

然后查看返回包中是否存在特征:Set-Cookie: rememberMe=deleteMe;

image-20221227150212170

2.利用

shiro_attack-4.5.6-SNAPSHOT-all.jar

image-20221227151207612

image-20221227151228474

修复建议

1.确定自己使用的shiro版本要高于1.2.4

2.在代码中全局搜索 "setCipherKey(Base64.decode(" 关键字,或者"setCipherKey"方法,Base64.decode()中的字符串就是shiro的密钥,要确保该密钥的安全性,千万不要使用公开的密钥。

参考文章

标签:2016,rememberMe,4437,密钥,shiro,序列化,CVE,Shiro,deleteMe
From: https://www.cnblogs.com/crayonxiaoxin/p/17031280.html

相关文章

  • tomcat远程代码执行漏洞(CVE-2019-0232)
    漏洞原理漏洞相关的代码在tomcat\java\org\apache\catalina\servlets\CGIServlet.java中,CGIServlet提供了一个cgi的调用接口,在启用enableCmdLineArguments参数时,会根......
  • Dubbo Provider远程代码执行漏洞(CVE-2020-1948)
    漏洞编号CVE-2020-1948漏洞原理Dubbo协议默认采用Hessian作为序列化反序列化方式,而Hessian存在危险的反序列化漏洞,攻击者发送未经验证的服务名或方法名的RPC请求,使Dub......
  • weblogic XMLDecoder反序列化漏洞(CVE-2017-10271)
    漏洞描述WeblogicWLS组件中存在CVE-2017-10271远程代码执行漏洞,可以构造请求对运行weblogic中间件的主机进行攻击。受影响weblogic版本10.3.6.0.0,12.1.3.0.0,12.2.1.1.......
  • weblogic任意文件上传(CVE-2018-2894)
    漏洞描述Weblogic管理端未授权的两个页面存在任意文件上传漏洞,通过这两个页面可以获取到服务器权限。这两个页面分别是/ws_utc/begin.do,/ws_utc/config.do。利用这两个页......
  • Tomcat拒绝服务攻击(CVE-2020-13935)
    漏洞简介CVE-2020-13935ApacheTomcat是美国阿帕奇(Apache)基金会的一款轻量级Web应用服务器。该程序实现了对Servlet和JavaServerPage(JSP)的支持。ApacheTomcat中的WebSo......
  • Tomcat文件包含及文件读取漏洞(CVE-2020-1938)
    漏洞影响CVE-2020-1938ApacheTomcat9.x<9.0.31ApacheTomcat8.x<8.5.51ApacheTomcat7.x<7.0.100ApacheTomcat6.x漏洞利用前提目标机器开启AJPConnector服务......
  • 亚马逊攀岩绳、动力绳EN 892:2012+A1:2016测试标准流程
    攀岩绳是与攀岩安全带和锚点相连的一种装备,用于保护攀岩者,使其不会从高处跌落。攀岩绳由承重内芯和围绕内芯编织的护套组成。根据亚马逊要求所有攀岩装备上架亚马逊都是需要......
  • S2-032 CVE-2016-3081 远程代码执行
    漏洞名称CVE-2016-3081S2-032远程代码执行利用条件Struts2.3.20-StrutsStruts2.3.28(2.3.20.3和2.3.24.3除外)漏洞原理当启用动态方法调用时,可以传递可用......
  • S2-016 CVE-2013-2251
    漏洞名称S2-016(CVE-2013-2251)通过操作前缀为“action:”/“redirect:”/“redirectAction:”的参数引入的漏洞允许远程命令执行利用条件Struts2.0.0–Struts2.3.15......
  • Apache HTTPD 换行解析漏洞(CVE-2017-15715)
    1.漏洞原理ApacheHTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,a.php\x0a将被按照PHP后缀进行解析,导致绕过......