百度安全專家:很多公司存在嚴(yán)重的Web安全問(wèn)題
4月16日消息,百度安全專家方小頓在2009騰訊安全技術(shù)峰會(huì)上指出,很多互聯(lián)網(wǎng)公司在架構(gòu)上存在缺陷,重要業(yè)務(wù)和次要業(yè)務(wù)本質(zhì)上沒(méi)有分離,web安全問(wèn)題非常嚴(yán)重。
他舉雅虎的例子稱,雅虎用戶在美國(guó)登錄一次后,在中國(guó)等都是登錄,登陸一次就可以直接登陸所有應(yīng)用,這就是有風(fēng)險(xiǎn)的,完全信任客戶端而無(wú)法驗(yàn)證當(dāng)前認(rèn)證是否有效,這樣把可能遭受的攻擊的風(fēng)險(xiǎn)泛化。
黑客一旦攻入一個(gè)web應(yīng)用,他就可以自然而然進(jìn)入其他的服務(wù)包括敏感的web應(yīng)用如用戶郵箱,這對(duì)安全非常不利。
百度安全專家方小頓
2009騰訊安全技術(shù)峰會(huì)4月16日在深圳麒麟山莊國(guó)際會(huì)議廳舉行。騰訊科技做現(xiàn)場(chǎng)直播。
以下是百度安全專家方小頓演講實(shí)錄:
方小頓:大家好!我今天主要講的是Web程序架構(gòu),首先是關(guān)于我的介紹,我是一位安全工程師,也是一位跨站師和web滲透師,安全太關(guān)注于一個(gè)方面沒(méi)有太大的意義,所以也搞一些業(yè)余的滲透測(cè)試。
最主要的一點(diǎn),我是黑客實(shí)用主義者,一些Web的漏洞,可以利用的情況下我才認(rèn)為它是安全漏洞,這是最主要的不同。
今天我跟大家講一下Web安全的發(fā)展,很久以前,網(wǎng)絡(luò)上是什么樣的情況呢?操作系統(tǒng)存在空口令,web服務(wù)器存在溢出,這個(gè)時(shí)候談web應(yīng)用安全毫無(wú)意義。
而后來(lái)web的漏洞,比如影響服務(wù)端的漏洞比較多,也是有原因的,那個(gè)時(shí)候操作系統(tǒng)變得健壯,空口令已經(jīng)不存在了,溢出也變得比較少了,黑客就會(huì)把目標(biāo)投入到web應(yīng)用程序,也就是現(xiàn)在經(jīng)常講的SQL注射、代碼執(zhí)行、文件讀寫(xiě)等。
現(xiàn)在各互聯(lián)網(wǎng)公司組織了自己的安全部門,大家可以把一些SQL注射問(wèn)題解決掉,代碼執(zhí)行解決掉,文件讀寫(xiě)也解決掉,而現(xiàn)在的問(wèn)題是,一個(gè)應(yīng)用程序可以沒(méi)有與系統(tǒng)交互的命令執(zhí)行,但是不可能沒(méi)有輸出、輸入。
沒(méi)有對(duì)外界有輸出的業(yè)務(wù)程序,可能都不用出現(xiàn)在web前端上,直接放在后臺(tái)就可以了,所以客戶端的安全問(wèn)題就非常多了。
客戶端安全問(wèn)題有什么嚴(yán)重呢?現(xiàn)在一些web2.0應(yīng)用,像博客,SNS,Web應(yīng)用最大的是用戶數(shù)眾多,只要有一個(gè)地方存在問(wèn)題就可以導(dǎo)致通過(guò)好友影響到更多的客戶,譬如一些web2.0蠕蟲(chóng),嚴(yán)重的時(shí)候可能導(dǎo)致服務(wù)down掉。
還有一些郵箱服務(wù),這些也是屬于隱私特別高的,如果有XSS,把你的私密信件竊取掉。具體的跟應(yīng)用的場(chǎng)景有關(guān),漏洞的影響就看黑客在什么地方用,如何用。
這個(gè)時(shí)候我們?cè)趺崔k?安全工程師是在甲方工作的,他不像黑客可以花非常多的精力找一個(gè)漏洞,我們的責(zé)任是保護(hù)我們互聯(lián)網(wǎng)公司所有應(yīng)用程序的安全,但是面對(duì)海量的程序,我們真有精力找出所有的安全問(wèn)題嗎?
不像在傳統(tǒng)的Web應(yīng)用里,也就是web1.0時(shí)代,一個(gè)公司可能就只是一個(gè)單獨(dú)的web應(yīng)用,我們可能走SDL,對(duì)代碼進(jìn)行審核,流程從我們走,我們可以對(duì)安全薄弱環(huán)節(jié)把關(guān),這個(gè)時(shí)候我們可以很有效率地提高一個(gè)應(yīng)用的安全性。
但是面對(duì)互聯(lián)網(wǎng)公司大量的應(yīng)用時(shí),由于資源有限,我們就很難對(duì)每一個(gè)應(yīng)用都這么操作,那么能不能有什么方法能降低客戶端漏洞的風(fēng)險(xiǎn),從基本架構(gòu)上把這個(gè)問(wèn)題解決掉呢?
譬如雅虎現(xiàn)在分為雅虎美國(guó)、雅虎中國(guó)、雅虎臺(tái)灣、雅虎日本,還有很多不知道的,只要在一個(gè)地方登錄可以自動(dòng)切換到其他的地方,這是很方便的應(yīng)用,但是同時(shí)帶來(lái)一個(gè)什么樣的問(wèn)題?他只要隨便yahoo.com下面出現(xiàn)Xss漏洞,就是一個(gè)次要業(yè)務(wù)的漏洞也會(huì)影響到所有的服務(wù),譬如mail等敏感業(yè)務(wù),可能也會(huì)受到影響。
雅虎這個(gè)問(wèn)題的本質(zhì)上就是服務(wù)眾多,重要的和次要的沒(méi)有分離,為什么我們談到次要與重要,是這樣的,我們?cè)谝粋€(gè)互聯(lián)網(wǎng)公司,區(qū)分應(yīng)用重要和次要的是由上級(jí)決定,上級(jí)覺(jué)得這個(gè)東西賺錢,太重要,要把時(shí)間花在這個(gè)上面,他能給我們帶來(lái)利益,我們要把它做好。
同時(shí)忽略了一些應(yīng)用,相對(duì)次要,這方面花的精力就少。如果次要和重要的業(yè)務(wù)在web架構(gòu)沒(méi)分離的話,假設(shè)我是一個(gè)攻擊者,我知道你在重要的業(yè)務(wù)上花了很多精力,我為什么要碰這一塊已經(jīng)防范好的,我把你沒(méi)有主要的那部分搞了不就得了。
另外雅虎的同事跟我聊天跟我談到他說(shuō)做安全,雅虎在安全方面有這個(gè)宿命,因?yàn)榍捌诘募軜?gòu)一旦定了,后期修改的話代價(jià)會(huì)非常大。
譬如雅虎做到全球性的互聯(lián)網(wǎng)企業(yè)后,會(huì)遇到了這么一種情況,他有雅虎中國(guó)、雅虎美國(guó),我們傳統(tǒng)的應(yīng)用程序登錄的時(shí)候,一個(gè)帳戶一個(gè)密碼,認(rèn)證的時(shí)候自然會(huì)后面的數(shù)據(jù)庫(kù)查詢查詢狀態(tài),當(dāng)雅虎做大以后,用戶數(shù)眾多,這樣做就變得不可能了,他不可能在全世界每個(gè)業(yè)務(wù)都會(huì)到美國(guó)查詢密碼是否正確。
他們?yōu)榱朔乐惯@種現(xiàn)象,只要你登錄成功,雅虎是把Cookie設(shè)置在.yahoo.com,在美國(guó)登錄一次,在中國(guó)等地都是登錄的,這就是有風(fēng)險(xiǎn)的,因?yàn)轱L(fēng)險(xiǎn)被泛化到全球所有的web應(yīng)用,一旦有人能破解這個(gè)算法,黑客攻擊一個(gè)點(diǎn),他就可以自然而然進(jìn)入人家的帳戶。
由于他前期沒(méi)有考慮到這種情況,在架構(gòu)上沒(méi)有設(shè)計(jì)好,一旦算法泄露,只能升級(jí)服務(wù)器,而黑客還是有可能再次拿到算法,由于后期改動(dòng)認(rèn)證機(jī)制,成本太大所以很難從根本上解決這個(gè)問(wèn)題,所以說(shuō)這是雅虎安全上的宿命。
還有一個(gè)問(wèn)題,也是大家比較公認(rèn)的,我個(gè)人也這么認(rèn)為,Linux比Windows安全,Windows一旦感染病毒就可能導(dǎo)致系統(tǒng)文件和其他擁護(hù)的文件全部都改了,而Linux中招了,就只能影響到自己,各個(gè)帳戶之間是獨(dú)立的,所以從這一點(diǎn)上我認(rèn)為L(zhǎng)inux比Windows設(shè)計(jì)、架構(gòu)上好。
看起來(lái)我上面說(shuō)的都是挺簡(jiǎn)單的東西,實(shí)際上讓互聯(lián)網(wǎng)公司做是非常困難的事情。一是和業(yè)務(wù)的沖突,當(dāng)時(shí)這么做的時(shí)候也沒(méi)有考慮到那么多,應(yīng)用都只考慮方便和效率,這樣就導(dǎo)致基礎(chǔ)架構(gòu)的形成,而后來(lái)的業(yè)務(wù)的發(fā)展都是在那個(gè)架構(gòu)之上。
一旦根已經(jīng)定了,根上面長(zhǎng)出大樹(shù)、枝葉都長(zhǎng)出來(lái)了,基礎(chǔ)架構(gòu)形成以后,重新從安全上考慮,設(shè)計(jì)這樣一個(gè)東西的話,代價(jià)是非常大的, 我們需要把整個(gè)樹(shù)做一次全新的手術(shù),在最痛的地方去改,代價(jià)非常大,Yahoo作為一個(gè)典型的互聯(lián)網(wǎng)公司就是個(gè)例子。
我們能不能不改呢?現(xiàn)在互聯(lián)網(wǎng)公司很多都沒(méi)有意識(shí)到這一點(diǎn),為什么沒(méi)有這種想法?是因?yàn)椴粔虼??;ヂ?lián)網(wǎng)公司發(fā)展完以后,發(fā)展得夠大以后,安全問(wèn)題突出以后,就會(huì)發(fā)現(xiàn)已經(jīng)是想改都改不了。
【編輯推薦】