還有一個(gè)比較腦洞的事情,原來(lái)我們說(shuō)信息安全這么多年來(lái)沒(méi)有高科技,我的同事說(shuō)我給你出一個(gè)高科技的東西,叫穿越分析,如果我遇到了攻擊,能穿越到被攻擊之前把攻擊者滅掉那么我們就實(shí)現(xiàn)了防御,但實(shí)際上這件事不靠譜。我們唯一能做到的是,人們?cè)谟钪嬷姓腋厍蛳嗨频男切?,去觀察這個(gè)星星怎么產(chǎn)生怎么消亡的給地球作為參考,關(guān)于這一點(diǎn)我說(shuō)這個(gè)方式有可能實(shí)現(xiàn),假設(shè)存在平行空間。我們認(rèn)為一個(gè)網(wǎng)站有DNA,這么多網(wǎng)站之間有什么區(qū)別,先說(shuō)共同點(diǎn),可能用到共同的底層中間系統(tǒng),相同的中間件、相同的業(yè)務(wù),不同點(diǎn)是里面的文字不同、模板不同、logo不一樣。
如果關(guān)注數(shù)百萬(wàn)的網(wǎng)站的話,就可能在數(shù)百萬(wàn)的網(wǎng)站中發(fā)現(xiàn)100個(gè)和你極其相似的網(wǎng)站,我認(rèn)為是你的影子或者是你的兄弟,你們DNA很接近,你們只是內(nèi)容文字不一樣,技術(shù)上是不一樣的,但內(nèi)容上有區(qū)別,沒(méi)關(guān)系。如果你的100個(gè)兄弟中有一個(gè)被入侵了,我們分析那個(gè)入侵的時(shí)候就能找到漏洞,能把漏洞補(bǔ)上,這個(gè)時(shí)候我們就可以利用從他那兒得到的教訓(xùn)先把漏洞補(bǔ)上,別人再入侵我們就入侵不了了。這是我們的一些想法。
考慮到其他的困擾,長(zhǎng)期以來(lái)我們都到處布節(jié)點(diǎn)、探頭,去抓數(shù)據(jù),做數(shù)據(jù)分析,這是基礎(chǔ)環(huán)節(jié)。我們通過(guò)實(shí)踐還是要把這件事情做好。我們?nèi)绾巫龅哪??我們期待日志豐富、工具聯(lián)動(dòng)、高效維護(hù)、持續(xù)可用,但實(shí)際遇到的問(wèn)題是日志匱乏,不是日志本身匱乏,大家不愿意把日志獻(xiàn)出來(lái)。工具要聯(lián)動(dòng),這個(gè)事沒(méi)多難,國(guó)內(nèi)的設(shè)備不是一家做的,每家數(shù)據(jù)的字典不一樣,對(duì)同一個(gè)日志的格式不一樣,對(duì)同一個(gè)漏洞的描述也不一樣,一件事可以分三條描述也可以分五條、一條描述,多廠協(xié)調(diào)很難。不是不能協(xié)調(diào),過(guò)去五年里我就干過(guò)這個(gè)事,可以協(xié)調(diào)但很慢,兩邊的研發(fā)人員對(duì)數(shù)據(jù)字典,協(xié)調(diào)好了某一方面臨著系統(tǒng)升級(jí),這事又白做了,又得從頭干,周期非常難,成本很高。硬件故障。設(shè)備里有很多硬件要插在里面。
我把我的東西做得足夠好,愿意下大本去做,還有一種方法是多平臺(tái),從監(jiān)測(cè)端各種監(jiān)測(cè)工具,掃描、防護(hù)、加速都是我們自己的,我們集中維護(hù),全是自己的人都放一起,這是現(xiàn)在百度云安全的做法。我們并不是克服了傳統(tǒng)的困難,而是繞過(guò)了這些困難,沒(méi)有這些協(xié)調(diào)的問(wèn)題。日志也不需要你上傳,直接在鏈路上就把數(shù)據(jù)抓過(guò)來(lái),對(duì)中小用戶(hù)用比較有親和力的方法把數(shù)據(jù)拿過(guò)來(lái)。在分析的過(guò)程中,我們也遇到了一些困擾。現(xiàn)在機(jī)器學(xué)習(xí)非?;?,尤其以百度為首的百度大腦,開(kāi)會(huì)如果不說(shuō)這件事實(shí)在對(duì)不起自己,這是一個(gè)方向。攻擊情報(bào),后來(lái)我們發(fā)現(xiàn)機(jī)器學(xué)習(xí)再先進(jìn),總有漏報(bào)誤報(bào)的問(wèn)題,我們只用機(jī)器學(xué)習(xí)和大數(shù)據(jù)的方法發(fā)現(xiàn)異常中的線索,機(jī)器比人快,但是不夠準(zhǔn),我們用人工分析的方法讓你準(zhǔn),標(biāo)定你的這些問(wèn)題,得出結(jié)論,再把結(jié)論反退給規(guī)則,這樣形成閉環(huán),我們后來(lái)認(rèn)為方法有很多種,沒(méi)有誰(shuí)強(qiáng)不強(qiáng)的問(wèn)題,大家一起用,它其實(shí)是個(gè)閉環(huán)。
我們以分析的角度來(lái)看,這里面有一些例子大家可以看一下。我們能夠分析查詢(xún)數(shù)據(jù)庫(kù)查詢(xún)中的這些字段,正常的字段和有攻擊的字段,通過(guò)機(jī)器學(xué)習(xí)的方法把它分類(lèi),這是我們的方法,這樣我們能識(shí)別出原來(lái)這些查詢(xún)可能有出入。還有一個(gè)更簡(jiǎn)單的是我們讀頁(yè)面的關(guān)系,正常的網(wǎng)站頁(yè)面和頁(yè)面有超鏈接,某個(gè)頁(yè)面不連別的別的也不連它可能是問(wèn)題。我們通過(guò)模型對(duì)URL里的參數(shù)分布、請(qǐng)求頻率和請(qǐng)求寬度、404比例進(jìn)行分析,分析人和機(jī)器,一個(gè)正常人的訪問(wèn),他打開(kāi)網(wǎng)頁(yè)一定有一半圖片一半文字,如果是掃描器的話,大部分都是文字內(nèi)容,他不會(huì)對(duì)圖片那部分進(jìn)行讀取。一個(gè)掃描器訪問(wèn)你的網(wǎng)站的時(shí)候會(huì)出現(xiàn)頁(yè)面不存在的問(wèn)題,正常人在頁(yè)面上點(diǎn)比例沒(méi)那么大,我們就是基于這些去找出異常。我們做了這些事,基于我們有很多的數(shù)據(jù)源和這些算法得出能夠在空間中誰(shuí)準(zhǔn)備干這個(gè)事,因?yàn)樗呀?jīng)動(dòng)了別人家,誰(shuí)正在對(duì)你干壞事,我們?nèi)プ钄啵傆新┑舻臇|西,我們溯源出來(lái),找到尚不能防御的攻擊。我們過(guò)去找到一個(gè)攻擊過(guò)程,我們總有漏掉的時(shí)候,但我們可以通過(guò)分析得出你怎么進(jìn)我們的系統(tǒng),什么時(shí)候來(lái)鏈接我。
百度做這件事情的時(shí)候做了大量基礎(chǔ)性的工作,各個(gè)方面都有這些儲(chǔ)備,全國(guó)有大量的IDC和CDN分布,我們能夠在IDC和CDN的節(jié)點(diǎn)流量來(lái)獲得這些數(shù)據(jù),這是數(shù)據(jù)源的來(lái)源。我們自身也提供加速和外部防護(hù)的服務(wù),現(xiàn)在服務(wù)數(shù)差不多100萬(wàn),有非常大的請(qǐng)求,對(duì)DDOS壓制能力達(dá)1T。我們也能在事后對(duì)這個(gè)事實(shí)進(jìn)行審計(jì),出一些審計(jì)報(bào)表,也能對(duì)后門(mén)進(jìn)行識(shí)別。我今天講的內(nèi)容是實(shí)踐,既講到了對(duì)風(fēng)險(xiǎn)的防護(hù),也講到了我們?cè)跔I(yíng)銷(xiāo)和對(duì)數(shù)據(jù)的分析,我們能夠?qū)τ脩?hù)進(jìn)行畫(huà)像。大家都知道百度是弱用戶(hù)的系統(tǒng),大家上百度的時(shí)候不需要登陸,我們可以通過(guò)對(duì)訪問(wèn)的分析分析出你是誰(shuí),你有什么樣的愛(ài)好,這也是現(xiàn)在我們安全部門(mén)做的一件事。我們分析攻擊者的基礎(chǔ)上對(duì)正常訪客也做了一些分類(lèi)。