當前位置:
首頁 > 新聞 > 一個漏洞能潛伏多少年?細數那些有名的高齡安全漏洞

一個漏洞能潛伏多少年?細數那些有名的高齡安全漏洞

在評估漏洞影響時,人們關注的往往是漏洞風險,而實際上,漏洞潛伏的時間也是一個非常重要的因素。時間跨度大,也就意味著在此期間使用這些含有漏洞的軟體的設備更多,影響的設備就更多;而時間跨度長,也就意味著被利用的概率也會更高。因此,潛伏的時間長短也應該是一個重要的因素,今天就大家細數那些潛伏多年的漏洞。


5年:Stagefright漏洞


2015年7月,Stagefright庫被爆出一個重大的安全問題,這個漏洞由於觸發條件簡單而備受關注。攻擊者只需給被攻擊對象發送一條精心設計的彩信,即可控制整個手機,之後可以刪除之前發送的彩信,使用戶無法輕易察覺被攻擊。漏洞由以色列移動信息安全公司Zimperium的研究員發現。Stagefright系列漏洞影響之大,危害之大,堪稱移動界的「心臟滴血」。


產生漏洞的原因,都是因為對數據校驗完善造成的。


而漏洞影響2.2-4.0/5.0/5.1版本的Android用戶,Android 2.2發佈於2010年5月,也就是說這個漏洞潛伏了5年之久。


不過接下來的漏洞就沒有這麼年輕了,有的甚至潛伏了幾十年。


7年:Linux系統double-free漏洞


今年3月研究人員曝光一個Linux內核漏洞,這個漏洞影響的範圍涵蓋大多數主流的Linux發行版,包括Red Hat Enterprise Linux 6, 7, Fedora, SUSE, Debian和Ubuntu。


由於漏洞可以追溯至2009年7月,那些Linux設備存在漏洞長達7年了,並且研究人員很難確定漏洞是否已經被利用過。


這個Linux漏洞編號為CVE-2017-2636,根據CVSS v3標準漏洞評分為7.8分。未經授權的攻擊者可以利用這個漏洞注入執行任意代碼,獲取root許可權,或者發動DoS讓系統崩潰。


問題存在於N_HLDC linux內核驅動的競爭條件問題。這個內核驅動負責處理高級數據鏈路控制(High-Level Data Link Control或簡稱HDLC)數據,這就導致了double-free漏洞。


7年:Samba遠程代碼執行漏洞


Samba是Linux和UNIX系統的SMB協議服務軟體,可以實現與其他操作系統(如:微軟Windows操作系統)進行文件系統、印表機和其他資源的共享。


今年5月研究人員發現了這個漏洞,漏洞編號為:CVE-2017-7494。如果使用了該漏洞,當惡意的客戶端連接上一個可寫的共享目錄時,通過上傳惡意的鏈接庫文件,使服務端程序載入並執行它,從而實現遠程代碼執行。根據伺服器的情況,攻擊者還有可能以root身份執行。


Samba 3.5.0到4.6.4/4.5.10/4.4.14的中間版本都受波及,也就是最早影響到7年前的版本。


9年:「臟牛」0day漏洞



Linux內核的內存子系統在處理寫入時複製(copy-on-write, COW)時產生了競爭條件(race condition)。惡意用戶可利用此漏洞,來獲取高許可權,對只讀內存映射進行寫訪問。


競爭條件,指的是任務執行順序異常,可導致應用崩潰,或令攻擊者有機可乘,進一步執行其他代碼。利用漏洞(編號CVE-2016-5195),攻擊者可在其目標系統提升許可權,甚至可能獲得root許可權。 由於漏洞影響大,研究人員們還把它取名為「臟牛」。


根據官方發布的補丁信息,這個問題可以追溯到2007年發布的Linux內核。


11年:Linux內核漏洞」Phoenix Talon」


2017年5月,啟明星辰ADLab提交了四個存在於Linux內核的遠程漏洞,並命名為「Phoenix Talon」,其中一個漏洞為嚴重(Critical)級別,漏洞可導致遠程DOS,在符合一定利用條件下可導致遠程代碼執行,包括傳輸層的TCP、DCCP、SCTP以及網路層的IPv4和IPv6協議均受影響。


漏洞本質上是double free的問題,使用setsockopt()函數中MCAST_JOIN_GROUP選項,並調用accept()函數即可觸發該漏洞。


儘管之後漏洞沒有引起足夠多的重視,但這四個漏洞的影響範圍包括所有Linux kernel 2.5.69 ~ Linux kernel 4.11的內核版本。2.5.69發佈於2003年5月5日,而4.11發佈於今年的5月5日。也就是說,時間跨度相當長。


11年:Linux內核提權漏洞



今年2月,Linux內核曝出許可權提升漏洞(CVE-2017-6074)。


漏洞存在於Linux系統中的DCCP協議。按現在的實現,解析DCCP協議的流程中如果dccp_v6_conn_request有返回值,就會通過dccp_rcv_state_process中的__kfree_skb釋放掉解析過程中收到了DCCP_PKT_REQUEST返回包的SKB地址。但是,如果IPV6_RECVPKTINFO開啟的情況下編譯內核,skb地址就會被存儲在ireq->pktopts,而dccp_v6_conn_request中的引用計數會增加,這樣skb就仍然會被使用。直到dccp_rcv_state_process進程中才會被釋放。


攻擊者使用某些內核堆噴射技術就能控制任意對象,並用任意數據重寫其內容。如果重寫過的對象中包含任何可觸發的函數指針,攻擊者便可在該內核中執行任意代碼。


該漏洞可追溯至2005年,漏洞影響Linux操作系統主要發行版本,包括Redhat、Debian、OpenSUSE和Ubuntu。利用該漏洞,攻擊者可以從低許可權進程中進行內核代碼執行。目前已知受影響的最老版本是2.6.18(2006年9月),不過該漏洞可能在先前的版本中已經存在,或許從支持DCCP開始(2005年10月的2.6.14)就已經存在問題了。

16年:「永恆之藍」漏洞



5月12日晚,一款名為Wannacry 的蠕蟲勒索軟體襲擊全球網路,這被認為是迄今為止最巨大的勒索交費活動,影響到近百個國家上千家企業及公共組織。 該軟體被認為是一種蠕蟲變種(也被稱為「Wanna Decrypt0r」、「Wanna Cryptor」或「 Wcry」)。


中國教育網相連的中國高校也出現大規模的感染,感染甚至波及到了公安機關使用的內網。在全球範圍內感染的計算機超過230,000。


WannaCry使用了美國國家安全局的「永恆之藍」(EternalBlue)工具進行攻擊。今年4月,黑客組織Shadow Brokers公布了NSA使用的這款工具,導致工具被黑客利用傳播病毒。


而永恆之藍實際上也是一個隱匿很久的漏洞。它利用了Windows伺服器消息塊1.0(SMBv1)的數個漏洞,這些漏洞在通用漏洞披露(CVE)網站中分別被列為CVE-2017-0143至0148。而影響到的操作系統從Windows XP直到Windows 8的操作系統,微軟在2017年3月14日推送了相關補丁。因此漏洞隱匿的時間可以說至少有16年。


20年:Kerberos協議漏洞



Kerberos這一名詞來源於希臘神話「三個頭的狗——冥府守門狗」,在系統中是一種認證協議,使用ticket讓節點在不安全的網路環境下進行安全的通信,它能夠防止竊聽、防止replay攻擊、保護數據完整性。


而利用這個漏洞的黑客可以提升自己的網路許可權,還可以獲取內網資源,比如竊取密碼。

發送到網路時,並非ticket的所有部分都會被加密,通常Kerberos會檢查消息中的加密部分從而進行認證。


因此,有方法能夠強制讓Kerberos協議使用純文本和未經加密的部分進行認證。


三名研究員發現了這一漏洞,並且起了一個藝術的名字:「奧菲斯的豎琴」。但漏洞的危害卻沒有這麼藝術了,漏洞影響的是Kerberos v5,也就是影響到了20年之前的軟體,而正因為其歷史悠久,眾多操作系統和應用中都含有這個組件,Windows、Debian、FreeBSD和Samba都使用到了Kerberos協議,影響範圍十分廣泛。


22年:Shellshock漏洞



1987年,年輕的程序員福克斯編寫了Bash(Bourne-Again Shell的簡稱)。如今,逾70%連入網路的機器都裝有該免費軟體,比如伺服器、電腦、路由器、某些類型的手機,乃至冰箱和相機等日常用品。


2014年,安全專家警告,Bash存在一個極其令人擔憂的軟體漏洞,編號為CVE-2014-6271。當用戶正常訪問時,只要shell是喚醒狀態,這個漏洞就允許攻擊者執行任意代碼命令,為各種各樣的黑客攻擊敞開了大門。由於Bash存在於各種操作系統中,這一漏洞可以被用於控制世界範圍內數以億計的機器,或許會危及蘋果電腦(Macintosh)和使用Android操作系統的智能手機。好在事件發生後,各大廠商都紛紛積極推出補丁,才成功減少了漏洞的影響。


很多人會把Shellshock漏洞與同年爆發的心臟出血漏洞相提並論,但實際上Shellshock的威脅更大。「心臟出血」漏洞可以被用於從伺服器上盜取密碼等行動,而Shellshock則可以用於控制整台機器,獲取最高許可權,並且利用的方式更加簡單,只需要複製粘貼一條命令。而從時間來看,「心臟出血」漏洞潛伏了兩年,給大約50萬台機器造成影響,而後者潛伏了22年後才被發現,應該可以說是壽命最長的漏洞了。


開源漏洞更多?


從數據來看Linux的漏洞可能比Windows更多,其中也不乏一些潛伏几十年的漏洞。這就打了那些盲目信奉開源軟體的人的臉,開源能夠防範軟體開發商植入「後門」,但未必漏洞更少。

開源軟體的支持者認為:開放源代碼不僅能夠推動軟體發展,還可以讓更多的開發者檢驗代碼的安全性。


這種想法可能源於一種思想。我們知道,密碼學中有一個

柯克霍夫原則

(Kerckhoffs』s principle),由奧古斯特·柯克霍夫在19世紀提出:即使密碼系統的任何細節已為人悉知,只要密匙(key,又稱密鑰或密鑰)未泄漏,它也應是安全的。它和傳統上使用隱密的設計、實現、或其他等等來提供加密的隱晦式安全想法相對。


開源運動的主要領導者之一埃里克·雷蒙(Eric J. Raymond)則將它引伸到開放源代碼軟體,稱一套未假定敵人可獲得源代碼的資安軟體並不可靠,因此,「永無可信的封閉源碼」。反過來說,開放源代碼比封閉源碼更安全。此種論點稱為透明式的安全(security through transparency)。


然而現實是,很多開源軟體的漏洞不僅沒有減少,並且一些存在很久的漏洞也未曾被發現。


埃里克·雷蒙曾經說過,「只要吸引足夠多的眼球,一切漏洞都很淺顯。」但是,哥倫比亞大學計算機科學教授史蒂夫·貝羅文說,在這件事情上,吸引更多眼球的是新功能,而不是質量。「質量需要干苦活、設計、檢查和測試,這些事情根本比不上編程有趣,」貝羅文說。「如果不培養這些技能,開源社區就會在質量競賽中落後得更遠。」


2014年OpenSSL曝出Heartbleed漏洞時,AlienVault公司的安全顧問Javvad Malik說過:



「任何人都可以對代碼進行審計,但並非每個人都會這樣做,因為似乎每一個人都認為其他人已經對這些代碼進行過安全審查了,這也就是問題之所在。」


或許正是源於這種「責任分散」,開源軟體的安全性不如想像中完善。無論怎樣,開源軟體的安全性還是需要大家共同的努力。

*參考來源:Freebuf, NYtimes,本文作者:bupyeong-in,轉載請註明來自FreeBuf.COM


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 FreeBuf 的精彩文章:

烏龍的CVE-2017-8570樣本及背後的狗血
你的網路攝像頭可能也被監控,維基解密曝光CIA視頻流竊聽工具
關於C/S架構系統的安全監測
《2017美國網路犯罪現狀報告》:企業今年面臨哪些安全問題,應該如何解決?

TAG:FreeBuf |

您可能感興趣

娛樂圈這群「高齡少女」一個比一個辣眼睛,只有最後一個贏了!
同樣是高齡少年,第一個無違和感,最後一個在裝嫩
百歲高齡老人育有五個子女,手工活樣樣精細,每天少食多餐!
歲數破三十的高齡剩女都有那些特徵
30多歲的女人生孩子除了高齡一無是處?還有這兩個優勢!
高齡孕婦的年齡極限,究竟是多大?過了這個年齡再生,對誰都不好
細數娛樂圈幾位不老男神,最後一位沒人能想到他已經62歲高齡!
高齡孕婦的年齡極限,究竟是多大?過了這個時期,對誰都不好
女人的最晚生育年齡是多少歲?高齡產婦究竟有多危險?
這四個演員入戲深曾走不出來,三個是影帝,還有一個已85歲高齡
95歲高齡的老人臉上無一顆老年斑,原來靠的就是這2種葯
多大年齡算高齡產婦?高齡孕婦做好5個重視,孕期也能平穩度過!
70歲高齡的武則天,擁有眾多年輕健壯的男寵,她有什麼秘術?
村裡兩個老人96歲高齡,不僅能自理還能種小菜,長壽原因有6點
70歲高齡還能全馬破3,我可能是個假年輕人!
武則天一代女皇80歲高齡仍有需求,養有眾多男寵,其中偏愛這兩個
你以為只有年輕生育好?高齡產婦也有年輕人沒有的優勢!
多少歲生孩子算高齡產婦?準備二胎的人可多吃這幾種食物
插翅難逃,一家四口販毒十多年終落網,83歲高齡老母親是大毒梟
23位「兩彈一星」元勛的數學有多厲害?有人80歲高齡後還做演算