组件漏洞 - Fastjon反序列化

  Fastjson是阿里巴巴开源JSON解析库,用于将Java对象与JSON数据之间进行快速转换。在版本[1.2.22,1.2.83]之间Fastjson存在多个反序列化漏洞
  Fastjson在对JSON字符串进行反序列化的时候,会读取@type的内容,试图把JSON内容反序列化成这个对象,并且会调用这个类的set方法,攻击者利用这个特征,构造一个JSON字符串,并且使用@type反序列化一个自己想要的攻击类库

漏洞场景

tips
   这里通过DNS盲打来检测应用是否存在Fastjson反序列化漏洞(不代表漏洞可以被利用)。具体利用通常需要借助RMI、JNDI等协议,攻击者通过这些协议可以进一步触发远程代码执行等攻击行为
测试结果

                                        

缺陷代码

安全场景

tips
安全编码规范:
    1、升级版本至1.2.83及以上
    2、禁用AutoType或者是设置特定类白名单进行反序列化
    3、使用SafeMode模式
    4、使用@JSONType注解限制类的反序列化
测试结果

                                        

安全代码