緩沖區(qū)溢出攻擊的典型例子 電腦關(guān)機(jī)顯示基于堆棧緩沖區(qū)溢出?
電腦關(guān)機(jī)顯示基于堆棧緩沖區(qū)溢出?有瀉出漏洞的話,有可能被病毒提權(quán)或者通過高權(quán)限可以修改,這只是威脅。原因萬分感謝:文件被損環(huán),的或可以修改,也有可能丟失,那就不重置電腦再試試,還是不行的話,只能說明w
電腦關(guān)機(jī)顯示基于堆棧緩沖區(qū)溢出?
有瀉出漏洞的話,有可能被病毒提權(quán)或者通過高權(quán)限可以修改,這只是威脅。原因萬分感謝:文件被損環(huán),的或可以修改,也有可能丟失,那就不重置電腦再試試,還是不行的話,只能說明win系統(tǒng)有問題了。就換個(gè)不驗(yàn)證過的系統(tǒng)盤重裝系統(tǒng)就行了,這樣的就可以50分鐘自動(dòng)出現(xiàn)、能夠順利解決光盤安裝的問題了。
緩沖指什么意思?
棧溢出是說是將十磅的糖放進(jìn)一個(gè)只能裝五磅的容器里……內(nèi)存溢出(又稱整數(shù)溢出)攻擊是最常用的黑客技術(shù)之一。我們很清楚,UNIX本身包括其上的許多應(yīng)用程序也是用C語言c語言程序的,C語言不去檢查緩沖區(qū)的邊界。在某些情況下,如果沒有用戶輸入的數(shù)據(jù)長(zhǎng)度最多應(yīng)用程序變量的緩沖區(qū),變會(huì)完全覆蓋其他數(shù)據(jù)區(qū)。這常稱“緩沖區(qū)溢出或緩沖瀉出”。一般情況下,遍布其他數(shù)據(jù)區(qū)的數(shù)據(jù)是沒有意義的,最少照成應(yīng)用程序錯(cuò)誤。不過,如果再輸入的數(shù)據(jù)是在“黑客”精心設(shè)計(jì)的,遍布內(nèi)存緩沖區(qū)的數(shù)據(jù)很顯然是黑客的入侵程序代碼,黑客就獲取了程序的控制權(quán)。如果沒有該程序正好是以root正常運(yùn)行的,黑客就完成任務(wù)了root權(quán)限,然后他就可以不編譯器黑客程序、留下入侵后門等,可以實(shí)行盡快地攻擊。明確的這種原理通過的黑客入侵就就是“堆棧溢出攻擊”。替便于理解,我們不如我打個(gè)比喻。緩沖區(qū)溢出漏洞好比是將十磅的糖放進(jìn)一個(gè)只有裝五磅的容器里。否則的話該容器放滿了,余下的部分就逸出在柜臺(tái)和地板上,弄得搞得一團(tuán)糟。而計(jì)算機(jī)程序的c語言程序者寫了一些編碼,但這些編碼還沒有對(duì)目的區(qū)域或緩沖區(qū)——五磅的容器——做適度地的檢查,看它們是否需要夠大,能不能全部然后取出新的內(nèi)容——十磅的糖,最終很可能照成緩沖區(qū)溢出的產(chǎn)生。如果沒有準(zhǔn)備被放進(jìn)新地方的數(shù)據(jù)不比較適合,溢得倒處也是,該數(shù)據(jù)也會(huì)制造出來很多麻煩。只不過,如果沒有緩沖區(qū)不僅僅瀉出,這僅僅一個(gè)問題。到此時(shí)為止,它還沒有破壞性。當(dāng)糖滴下時(shí),柜臺(tái)被遮上。是可以把糖去擦或用吸塵器吸走,還柜臺(tái)的確面貌。與之低些的是,當(dāng)緩沖區(qū)溢出時(shí),供大于需的信息覆蓋的是計(jì)算機(jī)內(nèi)存中以前的內(nèi)容。如果這些被瞬間覆蓋的內(nèi)容被需要保存或能重新恢復(fù),否則就會(huì)永遠(yuǎn)不會(huì)丟了。在丟失的的信息里有都能夠被程序動(dòng)態(tài)鏈接庫(kù)的子程序的列表信息,直到此時(shí)緩沖區(qū)溢出發(fā)生了什么。至于,給那些子程序的信息——參數(shù)——也全部丟失了。這意味著程序肯定不能得到起碼的信息從子程序回,以成功它的任務(wù)??瓷先ハ褚粋€(gè)人下車穿過沙漠。如果他依賴于他的足跡回頭路,當(dāng)沙暴襲城隱去了這些痕跡時(shí),他將無可自拔在沙漠中。這個(gè)問題比程序不僅僅迷失方向十分嚴(yán)重多了。入侵者用親手所做c語言設(shè)計(jì)的突襲代碼(一種惡意程序)使棧溢出,接著告知程序依據(jù)初始設(shè)定的方法處理緩沖區(qū),因此想執(zhí)行。此時(shí)的程序早完全被入侵者控制了。入侵者偶爾會(huì)改編而成超過的應(yīng)用程序運(yùn)行差別的程序?;蛘?,一個(gè)入侵者能正常啟動(dòng)三個(gè)新的程序,發(fā)送中絕對(duì)機(jī)密文件(支票本資料記錄,口令文件,或財(cái)產(chǎn)清單)給入侵者的電子郵件。這就好象不僅僅是沙暴吹了腳印,并且聽說后來者也會(huì)踩出新的腳印,將我們的迷路者領(lǐng)向不同的地方,他自己幾乎一無所知的地方。緩沖區(qū)溢出的處理你屋子里的門和窗戶越少,入侵者剛剛進(jìn)入的就越少……由于緩沖區(qū)溢出是一個(gè)編程問題,因?yàn)闆]法是從再修復(fù)被徹底破壞的程序的代碼而能解決問題。如果沒有你沒有源代碼,從上面“堆棧溢出攻擊”的原理更說明,要能夠防止此類攻擊,我們是可以:
1、開放的程序時(shí)仔細(xì)檢查逸出情況,不容許數(shù)據(jù)瀉出緩沖區(qū)。導(dǎo)致編程和編程語言的原因,這相當(dāng)難了,但不適合我大量巳經(jīng)在不使用的程序;
2、使用檢查一下堆棧溢出的編譯器或者在程序中一并加入某些記號(hào),盡快程序運(yùn)行時(shí)確認(rèn)私自黑客無意倒致的溢出。問題是難以針對(duì)僅是程序,對(duì)新程序來講,必須可以修改編譯器;
3、偶爾會(huì)去檢查你的操作系統(tǒng)和應(yīng)用程序提供商的站點(diǎn),若是發(fā)現(xiàn)他們提供給的補(bǔ)丁程序,就立剪下載因此應(yīng)用到在系統(tǒng)上,這是最好的方法。只不過系統(tǒng)管理員總要比攻