安全基础:0-day漏洞

在这里插入图片描述
这篇文章以阿里巴巴的FastJSon来介绍一下Zero-day(0-day)漏洞的基础常识。

Zero-day

Zero-day漏洞也被称为0-day漏洞,0-day原意指的是软件的提供商为对应相应漏洞产生危害所拥有的时间。因为从漏洞的披露到真正被黑客所利用,往往都会有一个时间差,这个时间差就是留给软件提供商的时间,只要在这个时间内提供补丁和对应方法,就能最大程度降低损害。之所以0-day漏洞的危害较大,是因为它的发现往往是软件提供商之外的使用者先发现,很多时候往往是黑客所首先掌握,这种漏洞是开发者和使用者往往都未意识到而已经被攻击者所掌握的漏洞,就像有一个后门,开发者自己都不知道而攻击者知道,所以这自然是影响最大的漏洞。

示例:FastJson

阿里巴巴的FastJson是一个很不错的JSON的Java库,有很多用户的支持,但是最近频爆安全问题,比如:

  • 2019年6月22日,阿里云云盾应急响应中心监测到FastJSON存在0day漏洞,攻击者可以利用该漏洞绕过黑名单策略进行远程代码执行。

  • 2020年6月,阿里云应急响应中心监测到fastjson爆发新的反序列化远程代码执行漏洞,黑客利用漏洞,可绕过autoType限制,直接远程执行任意命令攻击服务器,风险极大。

  • 详细说明:
    https://github.com/alibaba/fastjson/wiki/security_update_20200601

0-day漏洞的一个重要特点往往就是被其他业者先行发现,而且官方可能还没有提供正式或者暂时的解决方案,比如此次的FastJson的0-day漏洞的发现过程:

2020年05月28日, 360CERT监测发现业内安全厂商发布了Fastjson远程代码执行漏洞的风险通告,漏洞等级:高危。
Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。Fastjson存在远程代码执行漏洞,autotype开关的限制可以被绕过,链式的反序列化攻击者精心构造反序列化利用链,最终达成远程命令执行的后果。此漏洞本身无法绕过Fastjson的黑名单限制,需要配合不在黑名单中的反序列化利用链才能完成完整的漏洞利用。
截止到漏洞通告发布,官方还未发布1.2.69版本,360CERT建议广大用户及时关注官方更新通告,做好资产自查,同时根据临时修复建议进行安全加固,以免遭受黑客攻击。

对应方法

以最近的这个版本为例,影响范围为1.27.68及其以下,官方在1.2.69修复了此次发现的高危漏洞,开启safeMode时完全关闭autoType功能,理论上避免了类似问题再次发生,所以升级到目前的最新版本即可解决此问题。当前版本是1.27.70,除了刚刚升级的使用者,几乎目前所有在用的fastjson均会受到此问题的影响。

在这里插入图片描述

灰色产业链

有相当一部分0-day漏洞就是所谓的“未公开漏洞”,这些能用来干什么,虽然各大公司对于漏洞的提供者都有奖励,但是相较于灰色产业链提供的价格,这些奖励相当于九牛一毛,比如下图中相应的0-day漏洞的价格信息,最高的0-day漏洞的收购价格可高达150万美元。
在这里插入图片描述
在这里插入图片描述

扫描二维码关注公众号,回复: 11577594 查看本文章

参考内容

https://zhuanlan.zhihu.com/p/30044629
https://github.com/alibaba/fastjson/wiki/fastjson_safemode

猜你喜欢

转载自blog.csdn.net/liumiaocn/article/details/106620098