安全基礎: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萬美元。
在這裏插入圖片描述
在這裏插入圖片描述

參考內容

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章