zoukankan      html  css  js  c++  java
  • ApacheShiro反序列化远程代码执行 漏洞处理

    Shiro对rememberMe的cookie做了加密处理,shiro在CookieRememberMeManaer类中将cookierememberMe字段内容分别进行序列化、AES加密、Base64编码操作。但是,AES加密的密钥Key被硬编码在代码里,意味着每个人通过源代码都能漏洞描述拿到AES加密的密钥。因此,攻击者构造一个恶意的对象,并且对其序列化,AES加密,base64编码后,作为cookie的rememberMe字段发送。Shiro将rememberMe进行解密并且反序列化,最终造成反序列化漏洞。

    修改shiro配置文件,修改内容为

    <bean id="rememberMeCookie" class="org.apache.shiro.web.servlet.SimpleCookie">
    		<constructor-arg value="rememberMe"/>
    		<property name="httpOnly" value="true"/>
    		<property name="maxAge" value="31536000"/><!-- 365天 -->
    	</bean>
    	<!-- rememberMe管理器 -->
    	<bean id="rememberMeManager" class="org.apache.shiro.web.mgt.CookieRememberMeManager">
    		<property name="cipherKey" value="#{T(org.apache.shiro.codec.Base64).decode('qQFtSnnj/sx7vu51ixAyEQ==')}"/>
    		<property name="cookie" ref="rememberMeCookie"/>
    	</bean>
    

      

    qQFtSnnj/sx7vu51ixAyEQ== 这个是生成AES密钥
    生成方式参照:https://www.cnblogs.com/pxblog/p/12485832.html

  • 相关阅读:
    metasploit--multi/samba/usermap_script
    msfcli 不能使用,在新版metasploit不再有效,推荐使用msfconsole
    test.fire渗透测试
    metasploit服务扫描与查点
    Synchronized底层实现
    正在使用的IDEA插件
    JavaWeb
    设计模式
    MySQL
    计算机网络
  • 原文地址:https://www.cnblogs.com/pxblog/p/12576730.html
Copyright © 2011-2022 走看看