亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網(wǎng)絡(luò),我們將竭誠為您提供優(yōu)質(zhì)的服務(wù)! 誠征網(wǎng)絡(luò)推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯(lián)系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業(yè)務(wù)咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發(fā)消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術(shù)支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當(dāng)前位置:首頁 >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

如何防范Linux下緩沖區(qū)溢出攻擊

添加時間:2010-11-16  添加: admin 
雖然Linux病毒屈指可數(shù),但是基于緩沖區(qū)溢出(Buffer Overflow)漏洞的攻擊還是讓眾多Linux用戶大吃一驚。所謂“世界上第一個Linux病毒”??reman,嚴(yán)格地說并不是真正的病毒,它實質(zhì)上是一個古老的、在Linux/Unix(也包括Windows等系統(tǒng))世界中早已存在的“緩沖區(qū)溢出”攻擊程序。reman只是一個非常普通的、自動化了的緩沖區(qū)溢出程序,但即便如此,也已經(jīng)在Linux界引起很大的恐慌。

  緩沖區(qū)溢出漏洞是一個困擾了安全專家30多年的難題。簡單來說,它是由于編程機制而導(dǎo)致的、在軟件中出現(xiàn)的內(nèi)存錯誤。這樣的內(nèi)存錯誤使得黑客可以運行一段惡意代碼來破壞系統(tǒng)正常地運行,甚至獲得整個系統(tǒng)的控制權(quán)。

  Linux系統(tǒng)特性

  利用緩沖區(qū)溢出改寫相關(guān)內(nèi)存的內(nèi)容及函數(shù)的返回地址,從而改變代碼的執(zhí)行流程,僅能在一定權(quán)限范圍內(nèi)有效。因為進程的運行與當(dāng)前用戶的登錄權(quán)限和身份有關(guān),僅僅能夠制造緩沖區(qū)溢出是無法突破系統(tǒng)對當(dāng)前用戶的權(quán)限設(shè)置的。因此盡管可以利用緩沖區(qū)溢出使某一程序去執(zhí)行其它被指定的代碼,但被執(zhí)行的代碼只具有特定的權(quán)限,還是無法完成超越權(quán)限的任務(wù)。

  但是,Linux(包括Unix)系統(tǒng)本身的一些特性卻可以被利用來沖破這種權(quán)限的局限性,使得能夠利用緩沖區(qū)溢出獲得更高的、甚至是完全的權(quán)限。主要體現(xiàn)在如下兩方面:

  1.Linux(包括Unix)系統(tǒng)通過設(shè)置某可執(zhí)行文件的屬性為SUID或SGID,允許其它用戶以該可執(zhí)行文件擁有者的用戶ID或用戶組ID來執(zhí)行它。如果該可執(zhí)行文件的屬性是root,同時文件屬性被設(shè)置為SUID,則該可執(zhí)行文件就存在可利用的緩沖區(qū)溢出漏洞,可以利用它以root的身份執(zhí)行特定的、被另外安排的代碼。既然能夠使得一個具有root權(quán)限的代碼得以執(zhí)行,就能夠產(chǎn)生一個具有超級用戶root權(quán)限的Shell,那么掌握整個系統(tǒng)的控制權(quán)的危險就產(chǎn)生了。

  2.Linux(包括Unix)中的許多守護進程都是以root權(quán)限運行。如果這些程序存在可利用的緩沖區(qū)溢出,即可直接使它以root身份去執(zhí)行另外安排的代碼,而無須修改該程序的SUID或SGID屬性。這樣獲得系統(tǒng)的控制權(quán)將更加容易。

  隨著現(xiàn)代網(wǎng)絡(luò)技術(shù)的發(fā)展和網(wǎng)絡(luò)應(yīng)用的深入,計算機網(wǎng)絡(luò)所提供的遠程登錄機制、遠程調(diào)用及執(zhí)行機制是必須的。這使得一個匿名的Internet用戶有機會利用緩沖區(qū)溢出漏洞來獲得某個系統(tǒng)的部分或全部控制權(quán)。實際上,以緩沖區(qū)溢出漏洞為攻擊手段的攻擊占了遠程網(wǎng)絡(luò)攻擊中的絕大多數(shù),這給Linux系統(tǒng)帶來了極其嚴(yán)重的安全威脅。

  途徑分析

  通常情況下攻擊者會先攻擊root程序,然后利用緩沖區(qū)溢出時發(fā)生的內(nèi)存錯誤來執(zhí)行類似“exec(sh)”的代碼,從而獲得root的一個Shell。為了獲得root權(quán)限的Shell,攻擊者需要完成如下的工作:

  1.在程序的地址空間內(nèi)安排適當(dāng)?shù)奶囟ùa。一般使用如下兩種方法在被攻擊的程序地址空間內(nèi)安排攻擊代碼。

  2.通過適當(dāng)?shù)爻跏蓟拇嫫骱痛鎯ζ鳎钩绦蛟诎l(fā)生緩沖區(qū)溢出時不能回到原來的執(zhí)行處,而是跳轉(zhuǎn)到被安排的地址空間執(zhí)行。

  當(dāng)攻擊者找到一種途徑可以變原程序的執(zhí)行代碼和流程時,攻擊的危險就產(chǎn)生了。

  防范措施

  Linux下的緩沖區(qū)溢出攻擊威脅既來自于軟件的編寫機制,也來自于Linux(和Unix)系統(tǒng)本身的特性。實際上,緩沖區(qū)溢出攻擊及各種計算機病毒猖獗的根本原因在于現(xiàn)代計算機系統(tǒng)都是采用馮?諾依曼“存儲程序”的工作原理。這一基本原理使得程序和數(shù)據(jù)都可以在內(nèi)存中被繁殖、拷貝和執(zhí)行。因此,要想有效地防范緩沖區(qū)溢出攻擊就應(yīng)該從這兩個方面雙管其下。

  確保代碼正確安全

  緩沖區(qū)溢出攻擊的根源在于編寫程序的機制。因此,防范緩沖區(qū)溢出漏洞首先應(yīng)該確保在Linux系統(tǒng)上運行的程序(包括系統(tǒng)軟件和應(yīng)用軟件)代碼的正確性,避免程序中有不檢查變量、緩沖區(qū)大小及邊界等情況存在。比如,使用grep工具搜索源代碼中容易產(chǎn)生漏洞的庫調(diào)用,檢測變量的大小、數(shù)組的邊界、對指針變量進行保護,以及使用具有邊界、大小檢測功能的C編譯器等。

  基于一定的安全策略設(shè)置系統(tǒng)

  攻擊者攻擊某一個Linux系統(tǒng),必須事先通過某些途徑對要攻擊的系統(tǒng)做必要的了解,如版本信息等,然后再利用系統(tǒng)的某些設(shè)置直接或間接地獲取控制權(quán)。因此,防范緩沖區(qū)溢出攻擊的第二個方面就是對系統(tǒng)設(shè)置實施有效的安全策略。這些策略種類很多,由于篇幅有限只列舉幾個典型措施:

  (1)在裝有Telnet服務(wù)的情況下,通過手工改寫“/etc/inetd.conf”文件中的Telnet設(shè)置,使得遠程登錄的用戶無法看到系統(tǒng)的提示信息。具體方法是將Telnet設(shè)置改寫為:

  telnet stream tcp nowait root /usr/sbin/tcpd/in.telnetd -h

  末尾加上“-h”參數(shù)可以讓守護進程不顯示任何系統(tǒng)信息,只顯示登錄提示。

  (2)改寫“rc.local”文件。默認(rèn)情況下,當(dāng)?shù)卿汱inux系統(tǒng)時系統(tǒng)運行rc.local文件,顯示該Lin

分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡(luò)有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國增值電信業(yè)務(wù)經(jīng)營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網(wǎng)站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網(wǎng)安 舉報有獎  警警  手機打開網(wǎng)站