十一、服務器信息洩露 利用這類漏洞,攻擊者可以收集到對於進一步攻擊系統有用的信息。這類漏洞的產生主要是因為系統程序有缺陷,一般是對錯誤的不正確處理。 典型漏洞: 1、Windows IIS 3.0-5.0存在漏洞,當向系統請求不存在的.idq,.idq文件時,機器可能會返回出錯信息,裡面暴露了IIS的安裝目錄信息,比如請求,服務器會返回Response: The IDQ file d:\http\anything.ida could not be found。這些對攻擊者進行攻擊可能帶來方便,比如廣泛流行的msadc的攻擊,需要知道系統的安裝目錄。 2、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執行以後,5自學網,我們就可以對這個root擁有文件做任意的修改,這可以幫助我們獲得root權限。 四、意外情況處置錯誤 漏洞的產生在於程序在它的實現邏輯中沒有考慮到一些意外情況,而這些意外情況是應該被考慮到的。大多數的/tmp目錄中的盲目跟隨符號鏈接覆蓋文件的漏洞屬於這種類型。例子:Sco UNIX openserver的/etc/sysadm.d/bin/userOsa存在盲目覆蓋調試日志文件的問題,而文件的名字是固定的,通過把文件名指向某些特權文件,可以完全破壞系統。 五、設計錯誤 這個類別是非常籠統的,嚴格來說,大多數的漏洞的存在都是設計錯誤,因此所有暫時無法放入到其他類別的漏洞,先放在這。 六、配置錯誤 漏洞的產生在於系統和應用的配置有誤,或是軟件安裝在錯誤的地方,或是錯誤的配置參數,或是錯誤的訪問權限,策略錯誤。 七、環境錯誤 由一些環境變量的錯誤或惡意設置造成的漏洞。如攻擊者可能通過重置shell的內部分界符IFS,shell的轉義字符,或其它環境變量,導致有問題的特權程序去執行攻擊者指定的程序。上面提到的RedHat Linux的dump程序漏洞就是這種類型。 漏洞的威脅類型和產生漏洞的錯誤類型之間存在一定的聯系,有直接聯系的威脅類型與錯誤類型用直線相連,可以看到如下的圖示: 可以看到輸入驗證錯誤幾乎與所有的漏洞威脅有關,設計錯誤與錯誤的配置也會導致很多威脅。 C、對漏洞嚴重性的分級 一般來說漏洞的威脅類型基本上決定了它的嚴重性,我們可以把嚴重性分成高,中,低三個級別。遠程和本地管理員權限大致對應為高,普通用戶權限,權限提升,讀取受限文件,遠程和本地拒絕服務大致對應中級,遠程非授權文件存取,口令恢復,欺騙,服務器信息洩露大致對應低級別。但這只是最一般的情況,很多時候需要具體情況具體分析,如一個涉及到針對流行系統本身的遠程拒絕服務漏洞,自學教程,就應該是高級別。同樣一個被廣泛使用的軟件如果存在弱口令問題,有口令恢復漏洞,也應該歸為中高級別。 D、對漏洞被利用方式的分類 漏洞的存在是個客觀事實,但漏洞只能以一定的方式被利用,每個漏洞都要求攻擊處於網絡空間一個特定的位置,可能的攻擊方式分為以下四類: 一、物理接觸 攻擊者需要能夠物理地接觸目標系統才能利用這類漏洞,對系統的安全構成威脅。圖示: 二、主機模式 通常的漏洞利用方式。攻擊方為客戶機,被攻擊方為目標主機。比如攻擊者發現目標主機的某個守護進程存在一個遠程溢出漏洞,攻擊者可能因此取得主機的額外訪問權。圖示:
三、客戶機模式 當一個用戶訪問網絡上的一個主機,他就可能遭到主機發送給自己惡意命令的襲擊。客戶機不應該過度信任主機。如web浏覽器IE存在不少漏洞,可以使一些惡意的網站用html標記通過那些漏洞在浏覽的客戶機中執行程序或讀寫文件。圖示: