专业黑客联系方式:Shiro 721 Padding Oracle进犯缝隙剖析
前不久刚剖析完Shiro 550的缝隙,后边@wh1t *** ig告诉我Shiro十月份又出了一个安全布告,等级是Critical
https://issues.apache.org/jira/browse/SHIRO-721
布告梗概:
Shrio所运用的cookie里的rememberMe字段采用了AES-128-CBC的加密方式,这使得该字段可以被padding oracle 侵犯运用。侵犯者可以运用一个合法有用的rememberMe 的cookie作为前缀来施行POA,然后制造一个特制的rememberMe来实行Java反序列化侵犯,比方Shrio 550那样的。
施行进程:
登录网站,恣意用户,来获取一个合法的remmemberMe cookie。
运用rememberMe cookie作为前缀来施行POA。
加密Java反序列化的payload来制造特制的rememberMe
带着新的rememberMe向网站建议恳求
这个缝隙相较于550而言,它不需求知道key的值,可是它需求一个合法用户的rememberMe cookie,这大概是它比较鸡肋的当地了。
环境建立
制造war包
git clone https://github.com/apache/shiro.git
cd /shiro
git checkout shiro-root-1.4.1 -b shiro-root-1.4.1
cd ./shiro/samples/web
mvn clean
mvn package
建立调试环境
把war包放入www跑docker-compose即可,source仅仅做个备份
Github: https://github.com/Mote-Z/JavaWebSecurity/tree/master/Shiro/shiro%20721/DebugEnvironment
IDEA设置remote debug 端口为5005
在对应地可以看到该靶机开放了3个端口,分别是21、1515、3535 端口。方下断即可愉快调试。
rememberMe解密进程
首要,这个缝隙是针对rememberMe的,所以要对rememberMe的解密流程有所了解,这儿用了IDEA+docker来进行长途Debug(什么?为什么不说加密?emmm,我当然不会说我想偷闲,并且了解这个进程仅仅为了我编写exp有一丢丢协助)
解密进程的细(mang)致(mu)剖析
下面是对这个流程的剖析,假设对550比较了解的可以直接跳到后边的总结
getRememberedPrincipals , AbstractRememberMeManager (org.apache.shiro.mgt)
进行base64解码,回来byte数组
byte[] bytes = this.getRememberedSerializedIdentity(subjectContext);
getRememberedSerializedIdentity , CookieRememberMeManager (org.apache.shiro.web.mgt)
接纳传过来得base64编码的rem
李进良一再被爆偷欢,过去小祯选择力挺,昨天她终于露面接受访问,痛心地说:“会适时放手”,对李进良口中“只要是男人都会犯的错”,小祯则回应:“只要是女人都很难接受”,言语中预告与李进良离婚,5年婚姻恐将...
近日,昆山高新区综合行政执法局在检查义和苑小区出租房屋时发现,有房东违反规定改变出租房屋使用性质,经调查取证,开出了全市首张出租房“住改商”罚单,对房东处以罚款人民币1000元的处罚。 近日,昆山高...
网络安全域是指同一系统内有相同的安全保护需求、相互信任,并具有相同的安全访问控制和边界控制策略的子网或网络,相同的网络安全域共享一样的安全策略。网络安全域从广义上可理解为具有相同业务要求和安全要求的I...
据悉,慧聪网于11月1日推出全新的B2B信息聚合平台——慧优采,通过聚合360搜索引擎精准的B2B垂直流量及慧聪网海量优质商机,旨在帮助用户快速搜寻全网优商优品,精准匹配买卖双方真实需求。慧优采定位于...
香肠不管是蒸还是煮都是可以的。但是香肠属于一种风味食品,为了保持其独特的香的风味,蒸的口感好,同时不会破坏营养成分。煮着吃会使香肠的营养都流失在水里,味道也会淡化,反而损失其特有的香味。 香肠蒸制的...
你没同步,刷新几下,或者重新登下QQ。 微信聊天记录怎么查?我们已经习惯了使用微信来聊天,不仅仅是文字的沟通,还可以发送图片,语音等,在我们越来越依赖微。 手机qq无法操作,只能在电脑端的qq中进行操...