» 一朵奇葩:Struts官方公布自家漏洞利用代碼
昨晚,很多安全公司和互聯(lián)網(wǎng)公司安全部門的工程師們都沒睡好覺,通宵達(dá)旦地在加班。
  Struts 這個(gè)漏洞這次來(lái)勢(shì)之所以這么兇猛,直接導(dǎo)致國(guó)內(nèi)的很多銀行、政府機(jī)構(gòu)、幾乎所有的大中型互聯(lián)網(wǎng)公司,國(guó)外的包括蘋果的開發(fā)者網(wǎng)站都被黑掉了,和 Struts 官方不負(fù)責(zé)任的態(tài)度有很大關(guān)系。Struts 這次在自己的漏洞公告中直接把漏洞利用代碼給貼出來(lái)了,這是一種很罕見的做法。
  從很多年前起,安全行業(yè)里默認(rèn)的行規(guī)是“提示漏洞存在,但只公布描述,不公布細(xì)節(jié)”。大多數(shù)安全公告連漏洞涉及的代碼都不公布,更遑論直接給出漏洞利用方法的。這樣做的原因就是為了防止漏洞細(xì)節(jié)被黑客看到后,直接利用漏洞攻擊用戶。
  一般的安全廠商在看到漏洞公告后,可能會(huì)通過(guò)“補(bǔ)丁對(duì)比”,或者是二進(jìn)制軟件的逆向分析等技術(shù)來(lái)定位漏洞的原理。這對(duì)分析人員的技術(shù)要求是非常高的,熟練掌握這種技術(shù)的人一般都有個(gè)外號(hào),叫做“大!。這種技術(shù)門檻從一定程度上遏制了漏洞被大面積利用。
    從歷史來(lái)看,一個(gè)漏洞對(duì)互聯(lián)網(wǎng)的影響大小,與該漏洞是否存在傻瓜化利用工具有關(guān)。漏洞的利用工具被傳播的越廣,對(duì)互聯(lián)網(wǎng)來(lái)說(shuō)造成的影響就越大,因?yàn)闀?huì)有很多腳本小子,拿著傻瓜化的工具肆無(wú)忌憚地四處搞破壞。
  Struts 這個(gè)漏洞這次本來(lái)不會(huì)這么嚴(yán)重,過(guò)往有些比這更嚴(yán)重的漏洞也沒有造成這么惡劣的影響,但官方不負(fù)責(zé)任的披露了漏洞利用方法,首先就讓這個(gè)漏洞被大面積利用成為可能。然后國(guó)內(nèi)的黑客們看到后,在某社區(qū)里引起了熱烈的討論。接下來(lái)有不少黑客,利用官方給出的“幫助”,很輕松就寫出了自動(dòng)利用的工具,并開始找網(wǎng)站漏洞。
  如果僅僅到這里,局面也不會(huì)失控,但是接下來(lái)有黑客們開始展開競(jìng)賽一般的“戰(zhàn)果展示”,把存在漏洞的網(wǎng)站公布在第三方平臺(tái)上,這就好比“殺人比賽”一樣,就看誰(shuí)干掉的網(wǎng)站多,看誰(shuí)干掉的網(wǎng)站大。
  他們戰(zhàn)果豐碩,干掉了包括百度、騰訊、淘寶等在內(nèi)的很多大網(wǎng)站,甚至是國(guó)家級(jí)的政府網(wǎng)站,這進(jìn)一步又在微博上引發(fā)了不少大號(hào)們對(duì)這個(gè)漏洞的討論。至此,局面徹底失控。
  很多之前沒有關(guān)注這個(gè)漏洞的黑客們也開始關(guān)注這個(gè)漏洞,他們出于各自的目的,開始找尋存在漏洞的網(wǎng)站?梢圆豢鋸埖卣f(shuō),整個(gè)中國(guó)互聯(lián)網(wǎng)應(yīng)該被狠狠地捋了一遍。如果你用了 Struts 但卻沒被黑客關(guān)注過(guò),那只能很可悲的說(shuō)明你的網(wǎng)站太小了,小到整個(gè)安全行業(yè)所有人打著燈籠都找不到你。
  這就是互聯(lián)網(wǎng)的放大作用。
  而對(duì)于始作俑者,Apache 基金會(huì)下的 Struts,我只能說(shuō) Struts 真是一朵奇葩。這并非 Struts 第一次出這種高危漏洞,但 Struts 對(duì)于安全問(wèn)題的處理一直都很有問(wèn)題,要么就是沒有搞明白漏洞的原理,同一個(gè)漏洞補(bǔ)兩三次都補(bǔ)不好,要么就是像這次這樣,直接公布了漏洞利用方法。
  Struts 曾經(jīng)鬧過(guò)修補(bǔ)一個(gè)漏洞時(shí)笑話百出的場(chǎng)景,完全沒有理解漏洞原理,僅僅針對(duì)漏洞報(bào)告者提供的特征字符做了過(guò)濾,結(jié)果接二連三地被繞過(guò),一個(gè)簡(jiǎn)單的漏洞,修補(bǔ)了兩三次都沒有修補(bǔ)好,所以 Struts 在安全問(wèn)題上的低智商是有歷史的,屢教不改,還桀驁不馴。
  這次中國(guó)互聯(lián)網(wǎng)被捋了一遍,造成的損失不可估量。如果很多大網(wǎng)站的數(shù)據(jù)庫(kù)因?yàn)檫@個(gè)漏洞被盜,在接下來(lái)的一兩年中,大家又會(huì)多接到很多騷擾電話和騷擾短信,有針對(duì)性的詐騙案件也會(huì)上升。
網(wǎng)友評(píng)論2013-07-23 08:29
看來(lái)是黑java的
網(wǎng)友評(píng)論2013-07-23 08:31
“ Struts 在安全問(wèn)題上的低智商是有歷史的,屢教不改,還桀驁不馴!
這句話很有殺傷力。。不過(guò)知道自己門在哪就算了,還要告訴大家鑰匙怎么配是什么道理。
網(wǎng)友評(píng)論2013-07-23 08:35
既然是這樣為什么這么多大網(wǎng)站還是用struct呢。。。
網(wǎng)友評(píng)論2013-07-23 08:36
哪里有,我試試去
網(wǎng)友評(píng)論2013-07-23 08:38
又想起了當(dāng)年 我碼農(nóng)入門時(shí)學(xué)的SSH ..
網(wǎng)友評(píng)論2013-07-23 08:39
明知有錯(cuò)誤漏洞不去修的人還是很多的
網(wǎng)友評(píng)論2013-07-23 10:13
http://struts.apache.org/release/2.3.x/docs/s2-016.html 確實(shí)碉堡,不過(guò)早就給出struts2的2.3.15.1補(bǔ)丁了啊
網(wǎng)友評(píng)論2013-07-23 10:15
Spring MVC 用戶路過(guò)。。。
一直覺得struts跟Spring MVC比太臃腫了
網(wǎng)友評(píng)論2013-07-23 10:16