Open su18 opened 3 years ago
臭宝,你好强啊~我好喜欢
@0range228 臭宝,你好强啊~我好喜欢
我太菜了,只能分析别人的POC
很好奇他是怎么想到用 java.lang.AutoCloseable 作为期望类去作文章的,他是如何思考的。。浅蓝的那篇文章也只是写了结论:
"第一个问题是期望类的黑名单,里面包括了大部分常用的父接口和父类,却唯独少了一个 java.lang.AutoCloseable。这也就是为什么 AutoCloseable 为什么可以通过校验的第一个原因,第二个原因是TypeUtils#mappings里有 AutoCloseable 类。"
TypeUtils#mappings里面有几百个类,为什么就想到用AutoCloseable呢..
... 结论式分析做多了,偶尔会有挫败感的原因就是这种漏洞研究的差距...
@fa1c0n1 很好奇他是怎么想到用 java.lang.AutoCloseable 作为期望类去作文章的,他是如何思考的。。浅蓝的那篇文章也只是写了结论:
"第一个问题是期望类的黑名单,里面包括了大部分常用的父接口和父类,却唯独少了一个 java.lang.AutoCloseable。这也就是为什么 AutoCloseable 为什么可以通过校验的第一个原因,第二个原因是TypeUtils#mappings里有 AutoCloseable 类。"
TypeUtils#mappings里面有几百个类,为什么就想到用AutoCloseable呢..
... 结论式分析做多了,偶尔会有挫败感的原因就是这种漏洞研究的差距...
可以看我之前的文章 fastjson:我一路向北,离开有你的季节,思路其实是在 fastjson 不断的攻防过程中,对其 checkAutoType 校验函数逻辑的不断绕过中产生的。checkAutoType 方法在迭代过程中使用黑白名单的形式修修补补,安全研究员自然盯着其中校验逻辑的差异来挖掘其中的绕过手段。 另外就是思路的积累,在以往的漏洞中出现过的手段也可以用来发掘新的漏洞利用方式。 至于使用 AutoCloseable 能玩出什么活,那就靠研究和对 Java 基础 API 的理解了。 学习过程中确实会有很多”结论式“分析,这避免不了,也是学习和积累的过程,脑子里的思路多了,下次就会有自己的想法了。
@su18
@fa1c0n1 很好奇他是怎么想到用 java.lang.AutoCloseable 作为期望类去作文章的,他是如何思考的。。浅蓝的那篇文章也只是写了结论:
"第一个问题是期望类的黑名单,里面包括了大部分常用的父接口和父类,却唯独少了一个 java.lang.AutoCloseable。这也就是为什么 AutoCloseable 为什么可以通过校验的第一个原因,第二个原因是TypeUtils#mappings里有 AutoCloseable 类。"
TypeUtils#mappings里面有几百个类,为什么就想到用AutoCloseable呢..
... 结论式分析做多了,偶尔会有挫败感的原因就是这种漏洞研究的差距...
可以看我之前的文章 fastjson:我一路向北,离开有你的季节,思路其实是在 fastjson 不断的攻防过程中,对其 checkAutoType 校验函数逻辑的不断绕过中产生的。checkAutoType 方法在迭代过程中使用黑白名单的形式修修补补,安全研究员自然盯着其中校验逻辑的差异来挖掘其中的绕过手段。 另外就是思路的积累,在以往的漏洞中出现过的手段也可以用来发掘新的漏洞利用方式。 至于使用 AutoCloseable 能玩出什么活,那就靠研究和对 Java 基础 API 的理解了。 学习过程中确实会有很多”结论式“分析,这避免不了,也是学习和积累的过程,脑子里的思路多了,下次就会有自己的想法了。
嗯嗯我看了~ fj的之前的漏洞我也全部详细调试分析过也发了博客,都挺好理解的。就是1.2.68 AutoCloseable这个会让我比较纠结于作者是如何发现、利用的。。算了,搞这个还是不能操之过急,想不通的,就先暂且进行结论式的积累吧😄
@fa1c0n1
@su18
@fa1c0n1 很好奇他是怎么想到用 java.lang.AutoCloseable 作为期望类去作文章的,他是如何思考的。。浅蓝的那篇文章也只是写了结论:
"第一个问题是期望类的黑名单,里面包括了大部分常用的父接口和父类,却唯独少了一个 java.lang.AutoCloseable。这也就是为什么 AutoCloseable 为什么可以通过校验的第一个原因,第二个原因是TypeUtils#mappings里有 AutoCloseable 类。"
TypeUtils#mappings里面有几百个类,为什么就想到用AutoCloseable呢..
... 结论式分析做多了,偶尔会有挫败感的原因就是这种漏洞研究的差距...
可以看我之前的文章 fastjson:我一路向北,离开有你的季节,思路其实是在 fastjson 不断的攻防过程中,对其 checkAutoType 校验函数逻辑的不断绕过中产生的。checkAutoType 方法在迭代过程中使用黑白名单的形式修修补补,安全研究员自然盯着其中校验逻辑的差异来挖掘其中的绕过手段。 另外就是思路的积累,在以往的漏洞中出现过的手段也可以用来发掘新的漏洞利用方式。 至于使用 AutoCloseable 能玩出什么活,那就靠研究和对 Java 基础 API 的理解了。 学习过程中确实会有很多”结论式“分析,这避免不了,也是学习和积累的过程,脑子里的思路多了,下次就会有自己的想法了。
嗯嗯我看了~ fj的之前的漏洞我也全部详细调试分析过也发了博客,都挺好理解的。就是1.2.68 AutoCloseable这个会让我比较纠结于作者是如何发现、利用的。。算了,搞这个还是不能操之过急,想不通的,就先暂且进行结论式的积累吧😄
哎 回来捡捡前辈们的研究 确实是受益匪浅。 文章写的也是真的好。
https://su18.org/post/fastjson-1.2.68/
你救赎的人 终将成为你的光