黑帽大會(huì):Oracle數(shù)據(jù)校訂安全功能漏洞頻出
一位一直被視為Oracle眼中釘?shù)陌踩芯咳藛T詳細(xì)介紹了該公司的一款旗艦產(chǎn)品的安全功能中的漏洞,這位安全研究人員稱,該公司對(duì)安全采取了雜亂無章的做法。
在2014年美國黑帽大會(huì)上,數(shù)據(jù)庫安全專家兼著名漏洞獵人David Litchfield展示了他最近在數(shù)據(jù)校訂(data redaction)功能中發(fā)現(xiàn)的一些漏洞,Oracle公司在最新版本數(shù)據(jù)庫12c中大肆宣傳了這個(gè)安全功能。
基本上,數(shù)據(jù)校訂功能是用于掩飾敏感信息,當(dāng)返回的數(shù)據(jù)庫查詢包含敏感信息(例如社會(huì)安全號(hào)碼、信用卡號(hào)碼和其他個(gè)人身份信息等),并且這些數(shù)據(jù)到達(dá)特定的校訂卷時(shí),這些數(shù)據(jù)會(huì)用X來替換,而在校訂卷以外的數(shù)據(jù)則返回正常數(shù)據(jù)。
數(shù)據(jù)校訂實(shí)際上是一個(gè)“好主意”,但遺憾的是,這個(gè)功能充滿了基本的安全漏洞,攻擊者可以很容易地繞過它。
“如果Oracle遵循微軟的安全開發(fā)生命周期,我將展示的漏洞原本是可以避免的,”Litchfield表示,“我要談?wù)摰穆┒床⒉皇腔鸺茖W(xué),供應(yīng)商不應(yīng)該容忍其旗艦產(chǎn)品中包含這些漏洞。”
隨后Litchfield現(xiàn)場演示了他發(fā)現(xiàn)的漏洞,其中有些漏洞被記錄在最近的一篇文章中。第一個(gè)漏洞是在DML操作后使用“RETURNING INTO”條款,這允許數(shù)據(jù)返回一個(gè)變量,他表示這是Oracle的失誤,這原本可以通過執(zhí)行滲透測試來發(fā)現(xiàn)。
另一個(gè)漏洞可能允許攻擊者訪問“SELECT’S WHERE”中的數(shù)據(jù),主要通過迭代推理攻擊來暴力破解數(shù)字,基本上就是設(shè)定一個(gè)數(shù)字范圍直到猜測出正確的數(shù)字。Litchfield展示了利用這種方法的攻擊者可以在幾秒鐘內(nèi)獲取信用卡號(hào)碼,他們只需要從0到9猜測9個(gè)數(shù)字。
在存儲(chǔ)卷自動(dòng)更新的情況下,Litchfield表示還可以使用相同的值來更新ID卷,其中會(huì)返回未掩飾的數(shù)據(jù),這意味著根本沒有進(jìn)行更新。
Litchfield表示:“在Oracle工作了一年并且懂SQL的任何人都應(yīng)該可以發(fā)現(xiàn)這些漏洞。”
Oracle沒有吸取過往的安全教訓(xùn)
Litchfield表示他展示數(shù)據(jù)校訂漏洞不只是要記錄當(dāng)前的Oracle安全問題,而且也想強(qiáng)調(diào)該公司似乎不愿意吸取過去的安全教訓(xùn)。
在2002年1月15日,當(dāng)時(shí)的微軟董事長比爾·蓋茨向員工發(fā)送了現(xiàn)在著名的可信計(jì)算備忘錄,在前幾年受到大量漏洞的影響后,他強(qiáng)調(diào)了構(gòu)建更安全產(chǎn)品的重要性。這份備忘錄最終讓微軟創(chuàng)建了安全開發(fā)生命周期,微軟產(chǎn)品(例如微軟SQL Server)中漏洞的數(shù)量和嚴(yán)重程度程均有所下降。
在蓋茨發(fā)出備忘錄的幾個(gè)月前,Oracle首席執(zhí)行官Larry Ellison宣稱其公司的產(chǎn)品是“堅(jiān)不可摧的”,這個(gè)不明智的舉動(dòng)立即引起了Litchfield等黑客們的關(guān)注,并導(dǎo)致Oracle的軟件中發(fā)現(xiàn)的漏洞數(shù)量開始飆升。
Litchfield表示,蓋茨的備忘錄和Ellison的堅(jiān)不可摧的說辭之間的差異為微軟的嚴(yán)格安全做法奠定了基礎(chǔ),至少在服務(wù)器端是這樣,以及Oracle糟糕的安全策略。Litchfield記得很多這樣的情況,他在Oracle產(chǎn)品中發(fā)現(xiàn)漏洞,并將漏洞報(bào)告給該公司,然后等了幾個(gè)月該公司才發(fā)布補(bǔ)丁,而其補(bǔ)丁很容易像以前一樣被忽略。
盡管10年來,Litchfield和其他研究人員都在Oracle的代碼中挑刺,Oracle的Ellison在1月份表示該公司的數(shù)據(jù)庫產(chǎn)品“幾十年來沒有被任何人攻破”,Litchfield稱Ellison應(yīng)該知道這不是事實(shí),因?yàn)樵谧罱鼩v史中最有名的安全事故之一PlayStation網(wǎng)絡(luò)泄露事故中,Oracle數(shù)據(jù)庫是作為該網(wǎng)絡(luò)的核心。
這些數(shù)據(jù)校訂漏洞很容易被發(fā)現(xiàn),Litchfield警告說這些只是Oracle安全問題的冰山一角。他補(bǔ)充說他現(xiàn)在知道一個(gè)源自數(shù)據(jù)庫設(shè)置的未公開的關(guān)鍵漏洞,該漏洞可能允許攻擊者獲取完全的管理員權(quán)限,但當(dāng)他詢問Oracle關(guān)于該設(shè)置的細(xì)節(jié)時(shí),該公司甚至無法解釋為什么它會(huì)存在。
Litchfield表示:“對(duì)于為什么會(huì)有這個(gè)設(shè)置他們沒有內(nèi)部文檔記錄,這真的很可怕。”
Litchfield最后指出可能還有很多他沒有發(fā)現(xiàn)的方法來繞過數(shù)據(jù)校訂安全功能,并表示擔(dān)心OracleFusion的72GB版本,這意味著巨大的攻擊面,其他Oracle產(chǎn)品也可能有類似的問題。因此,Litchfield表示,對(duì)于Oracle自己的首席執(zhí)行官發(fā)表的言論,Oracle的企業(yè)客戶應(yīng)該更加謹(jǐn)慎,并作出更好的采購選擇。
“我們現(xiàn)在在2014年,他們?nèi)匀粵]有學(xué)習(xí)2002年的教訓(xùn),”他說道,“我正在使用數(shù)據(jù)校訂功能以證明他們沒有作出任何改進(jìn)。”