亚洲日本免费-啊轻点灬太粗太长了三男一女-麻豆av电影在线观看-日韩一级片毛片|www.grbbt.com

《內(nèi)存戰(zhàn)爭20年》 TK于旸首提“全時視野”漏洞防御理念

2015年7月1日,中國網(wǎng)絡(luò)安全大會在國家會議中心召開,知名黑客、騰訊玄武實驗室負(fù)責(zé)人于旸(網(wǎng)名“TK”)在《內(nèi)存戰(zhàn)爭20年》演講中首提“全時視野”的漏洞防御理念,于旸認(rèn)為漏洞防御從設(shè)計時到開發(fā)時、到編譯時、到運行時,每一時都應(yīng)有相應(yīng)的技術(shù)體系和方法去保障安全。

yu-yang

于旸解釋,“內(nèi)存戰(zhàn)爭”指的是“發(fā)生在內(nèi)存中的戰(zhàn)爭”,“20年”是指1995年至今的20年。雖然在95年之前,IT史上也發(fā)生過漏洞攻擊事件,但直到1995年P(guān)eter Zatko發(fā)表《How to Write Buffer Overflows》,人們開始關(guān)注緩沖區(qū)溢出漏洞的攻防,內(nèi)存才真正的成為一個“你攻我守”的戰(zhàn)場。

輕視–行業(yè)悲劇

用于旸的話說,95年之前,漏洞攻擊更像是攻擊者對被攻擊者的無情“毆打”,因為被攻擊者根本沒有防御的意識,整個社會、行業(yè)并沒有對漏洞攻擊給予足夠的重視。

1972年,James P. Anderson為美國空軍攥寫的《計算機(jī)安全威脅監(jiān)控與監(jiān)視》已經(jīng)詳細(xì)地描述了今天已知的很多種漏洞類型,清晰地描述了關(guān)于“木馬”和“后門”的概念,甚至詳細(xì)的技術(shù)細(xì)節(jié),有關(guān)“緩沖區(qū)溢出”也被提及,但并未引起注意。

1988年Morris蠕蟲在數(shù)小時內(nèi)感染了當(dāng)時互聯(lián)網(wǎng)上10%的服務(wù)器,總算是讓人們看到漏洞的威力,正所謂“只有真正出了事情才會知道這個事情的重要性,這是這個行業(yè)的悲劇”。但很多程序員仍然認(rèn)為緩沖區(qū)溢出只是導(dǎo)致一部分程序崩潰的Bug,相關(guān)技術(shù)也只在非常小的圈子里被討論。

內(nèi)存攻守之戰(zhàn)正式打響

95年之后攻方和守方在內(nèi)存這片“土地”上針對“緩沖區(qū)溢出”展開了一輪又一輪的攻守之戰(zhàn)。

守方:兩大緩沖區(qū)溢出漏洞防御思路誕生

1997年Sun公司在Solaris2.6中借助SPARC處理器的新特性,實現(xiàn)了禁止執(zhí)行堆棧上的代碼。同年基于程序返回地址完整性檢測的緩沖區(qū)溢出動態(tài)檢測技術(shù)StackGuard誕生。巧合的是這兩種技術(shù)一個是基于硬件、一個是基于軟件,可謂開創(chuàng)了緩沖區(qū)溢出漏洞防御的先河,這兩種漏洞防御思路被沿用至今。

攻方:繞過防御技術(shù)

在緩沖區(qū)溢出漏洞防御技術(shù)誕生不久,繞過這兩種技術(shù)的對抗技術(shù)也誕生了。1997年8月繞過硬件的內(nèi)存不可執(zhí)行位的對抗方法被提出,同年12月,又有兩個人提出了繞過StackGuard的方法。

內(nèi)存戰(zhàn)爭發(fā)展

之后,內(nèi)存緩沖區(qū)的攻守雙方一直上演著矛與盾的游戲,不斷有新的漏洞防御技術(shù)產(chǎn)生,也不斷有新的“繞過”方法出現(xiàn)。比如微軟在windows系統(tǒng)及VC++編譯器上加入了各種溢出保護(hù)機(jī)制,以試圖阻止這類攻擊,可惜每次公布溢出保護(hù)機(jī)制之后,不久就有人公布繞過方法。

2003年“防止溢出”、“繞過防御”的技術(shù)統(tǒng)統(tǒng)在個人電腦上出現(xiàn)了,“內(nèi)存對抗”就開始進(jìn)入白熱化階段了,因為個人電腦影響面遠(yuǎn)遠(yuǎn)大于服務(wù)器,各種各樣的技術(shù)在內(nèi)存中混戰(zhàn)。2009年,戰(zhàn)火從服務(wù)器、個人電腦,燒到了手機(jī),Android系統(tǒng)在2009年引入了類似StackGuard的機(jī)制,2010年引入了內(nèi)存不可執(zhí)行(No-EXecute),2011年引入了地址隨機(jī)化(ASLR),2013年把SEAndroid技術(shù)引進(jìn)進(jìn)去。

“全時視野”漏洞防御理念

于旸總結(jié)認(rèn)為,漏洞挖掘、攻擊和防御等相關(guān)技術(shù)的發(fā)展,其實和人類社會的發(fā)展很類似,是一個從原始到現(xiàn)代、從粗放到集約的發(fā)展歷程。

漏洞挖掘:從早期的個人能力、人工操作、個人經(jīng)驗,逐步向自動化和工程化發(fā)展,到了今天,漏洞挖掘已經(jīng)發(fā)展成非常成熟的工業(yè)體系。

漏洞攻擊:最早的漏洞攻擊方法我們可以抽象成為利用內(nèi)存中的數(shù)據(jù),發(fā)展中期以黑伯斯布瑞(音譯)為主的創(chuàng)造數(shù)據(jù)的技術(shù),到今天發(fā)展為在內(nèi)存中進(jìn)行字節(jié)級的控制。

漏洞防御:

  • 1、現(xiàn)在已經(jīng)發(fā)展到“縱深防御”程度,最典型的廠商就是微軟,其思路是減少可利用的漏洞,以微軟新推出的延遲釋放和隔離堆等技術(shù)為代表。
  • 2、降低漏洞利用成功率,漏洞再怎么減少也是不可能杜絕的。那么對于實在存在的這些漏洞,降低利用成功率。再怎么降確實還有一些漏洞會被漏洞利用成功,怎么辦?
  • 3、增加漏洞代碼編寫成本,再怎么對抗最后也是成本對抗。
  • 4、駭客如果不惜一切代價來攻擊,假設(shè)攻擊成功了,最后的辦法是降低漏洞利用帶來的危害,這方面以沙箱技術(shù)為代表。

從更大的視角來看,現(xiàn)在漏洞防御已經(jīng)從早期的“單點”發(fā)展到 “全時視野”,從設(shè)計時到開發(fā)時、到編譯時、到運行時,每一“時”都有相應(yīng)的技術(shù)體系和方法去保障。同時,增強(qiáng)業(yè)界上下游合作關(guān)系,比如,上游英特爾、微軟在中間、下游以Adobe為代表的業(yè)界合作模式。此外,還可以進(jìn)行社區(qū)建設(shè),比如贊助活動、舉辦會議、懸賞獎勵等等。總之,無論是攻擊還是防御技術(shù),都已經(jīng)進(jìn)入綜合、融合、協(xié)同、多維度的發(fā)展階段。

上一篇:自主可控·安全可信 倪光南談網(wǎng)絡(luò)安全測評

下一篇:對話騰訊馬斌 解讀互聯(lián)網(wǎng)+安全戰(zhàn)略