直播中
本月初微軟再次被指責(zé)對(duì)其出品的WEB服務(wù)器軟件的安全問題不加重視。在微軟的流行產(chǎn)品IIS
SEVER4.0中被發(fā)現(xiàn)存在一種被稱為“非法HTR請(qǐng)求”的缺陷。據(jù)微軟稱,此缺陷在特定情況下會(huì)導(dǎo)致任意代碼都可以在服務(wù)器端運(yùn)行。但用發(fā)現(xiàn)這一漏洞的Internet安全公司eEye的CEO
Firas Bushnaq的話說:這只是冰山一角而已。Bushnaq說,微軟隱瞞了些情況,比如黑客可以利用這一漏洞對(duì)IIS服務(wù)器進(jìn)行完全的控制,而恰恰許多電子商務(wù)站點(diǎn)是基于這套系統(tǒng)的。
下面羅列出了該IIS系統(tǒng)漏洞的詳細(xì)情況:
IIS的最新安全漏洞
受影響的系統(tǒng):
Internet Information Server 4.0 (IIS4)
Microsoft Windows NT 4.0 SP3 Option Pack 4
Microsoft Windows NT 4.0 SP4 Option Pack 4
Microsoft Windows NT 4.0 SP5 Option Pack 4
公布日期:6.8.1999
microsoft已經(jīng)證實(shí)了這個(gè)漏洞,但目前還沒有提供可用的補(bǔ)丁程序。
微軟安全公告 (MS99-019):
主題:"非正常的 HTR 請(qǐng)求" 漏洞
發(fā)布時(shí)間: 6.15.1999
摘要:
微軟已經(jīng)證實(shí)在其發(fā)布的WEB服務(wù)器產(chǎn)品Internet Information Server
4.0中存在一個(gè)嚴(yán)重的系統(tǒng)漏洞,該漏洞導(dǎo)致對(duì)于IIS服務(wù)器的“服務(wù)拒絕攻擊”,在這種情況下,可能導(dǎo)致任何2進(jìn)制代碼在服務(wù)器上運(yùn)行。有關(guān)該漏洞的補(bǔ)丁將在近期發(fā)布,請(qǐng)所有IIS用戶密切關(guān)注。
漏洞介紹:
IIS支持多種需要服務(wù)器端處理的文件類型,譬如:ASP、ASA、IDC、HTR,當(dāng)一個(gè)WEB用戶從客戶端請(qǐng)求此類文件時(shí),相應(yīng)的DLL文件將自動(dòng)對(duì)其進(jìn)行處理。然而在ISM.DLL這個(gè)負(fù)責(zé)處理HTR文件的文件中被發(fā)現(xiàn)存在嚴(yán)重的安全漏洞。(注:HTR文件本身是用來遠(yuǎn)程管理用戶密碼的)
該漏洞包含了一個(gè)在ISM.DLL中未經(jīng)驗(yàn)證的緩沖,它可能對(duì)WEB服務(wù)器的安全運(yùn)作造成兩方面的威脅。首先,是來自服務(wù)拒絕攻擊的威脅,一個(gè)來自非正常的對(duì).HTR文件請(qǐng)求將導(dǎo)致緩存溢出,從而直接導(dǎo)致IIS崩潰,當(dāng)這種情況發(fā)生時(shí),無須重啟服務(wù)器,但是IIS
WEB
服務(wù)器必須重新啟動(dòng)。另一個(gè)威脅更令人頭痛,通過使用一個(gè)精心構(gòu)建過的文件請(qǐng)求將可以利用標(biāo)準(zhǔn)的緩存溢出手段導(dǎo)致2進(jìn)制代碼在服務(wù)器端運(yùn)行,在這種情況下,什么都可能發(fā)生!該漏洞不包括提供用來管理用戶密碼的功能的.HTR文件。
原理分析:
至少在一個(gè)IIS的擴(kuò)展名中(例如:ASP,IDC,HTR)存在溢出。我們推測(cè)溢出將在IIS把完整的URL傳遞給DLL去處理擴(kuò)展名時(shí)發(fā)生。如果ISAPI
DLL 沒有正確的檢查限制范圍從而導(dǎo)致INETINFO.EXE產(chǎn)生一個(gè)溢出,用戶就從可以遠(yuǎn)端執(zhí)行2進(jìn)制代碼。攻擊方法:向IIS發(fā)一個(gè)如下的HTTP請(qǐng)求:"GET
/[overflow].htr HTTP/1.0",IIS將崩潰。這里的[overflow]可以是3K長(zhǎng)的代碼。
大家可能對(duì).HTR文件不是很熟悉,其實(shí)IIS具有讓NT用戶通過WEB目錄/iisadmpwd/更改自己的口令的能力。而這個(gè)功能正是由一組.HTR文件和ISAPI的一個(gè)擴(kuò)展DLL:
ISM.DLL實(shí)現(xiàn)的。當(dāng)一個(gè)完整的URL傳遞到ISM.DLL時(shí),由于沒有適當(dāng)?shù)拇笮∠拗频臋z查,就會(huì)導(dǎo)致溢出產(chǎn)生,從而使得服務(wù)器崩潰。HTR/ISM.DLL
ISAPI 是IIS4缺省安裝。
解決途徑:
由于目前微軟尚未發(fā)布可供使用的補(bǔ)丁程序,因此我們只能做一些應(yīng)急的防范。
1、將.HTR擴(kuò)展名從ISAPI DLL 的列表中刪除
在你的NT桌面上,點(diǎn)擊“開始”—>“程序”—>“Windows NT
4.0 Option Pack”—>“Microsoft Internet Information Server”—>“Internet
服務(wù)管理器”;雙擊“Internet Information Server”;鼠標(biāo)右鍵單擊計(jì)算機(jī)名稱并選擇“屬性”;在“主屬性”下拉式菜單中選擇“WWW服務(wù)”并點(diǎn)擊“編輯”按鈕;選擇“主目錄”文件夾,并點(diǎn)擊“配置”按鈕,在“應(yīng)用程序映射”列表框中選中.HTR的相關(guān)映射,選擇“刪除”,并確定。
2、安裝微軟提供的補(bǔ)丁程序,請(qǐng)密切關(guān)注以下網(wǎng)址
http://www.microsoft.com/security
http://www.microsoft.com/security/products/iis/CheckList.asp
可能一些朋友會(huì)感到不解,為什么我在ASP篇17、18期連續(xù)利用兩大篇幅著重討論IIS、ASP的安全性問題,如果你是一個(gè)WEB開發(fā)者、ASP程序員,我想你就應(yīng)該能夠體會(huì)我的用意。我們進(jìn)行網(wǎng)絡(luò)編程、開發(fā)交互性的網(wǎng)站,當(dāng)然首先是為了發(fā)展、建設(shè)自身網(wǎng)站,但是這一些都是建立在安全的基礎(chǔ)上,這里的安全包括對(duì)自己辛辛苦苦開發(fā)的ASP或其他網(wǎng)絡(luò)應(yīng)用程序代碼的保護(hù)、確保網(wǎng)站服務(wù)器安全正常的運(yùn)行、確保用戶信息的安全及認(rèn)證等等,當(dāng)今后電子商務(wù)成為真正廣泛運(yùn)作的一種商務(wù)運(yùn)行手段后,安全性更是關(guān)鍵之關(guān)鍵。我們中的很多朋友在作為ASP程序員的同時(shí)又身兼網(wǎng)絡(luò)管理員的職責(zé),因此熟悉系統(tǒng)的運(yùn)作、及時(shí)了解系統(tǒng)漏洞、第一時(shí)間解決安全性問題就顯得十分重要和必要,因此在本文的結(jié)尾,作者將整理的一些關(guān)于NT、IIS系統(tǒng)配置的安全性建議羅列出來,希望能給大家一些幫助。
1、使用最新版本的Microsoft Internet Information Server4.0,并安裝NT最新版本的Service
Pack5,服務(wù)器的文件系統(tǒng)不要使用FAT,應(yīng)該使用NTFS。
2、把IIS中的sample、scripts、iisadmin和msadc等web目錄設(shè)置為禁止匿名訪問并限制IP地址。在微軟還沒有提供補(bǔ)丁之前,把ism.dll有關(guān)的應(yīng)用程序映射刪除。
3、有條件的話就采用防火墻機(jī)制,最簡(jiǎn)單的如web服務(wù)開在前臺(tái),目錄放在后臺(tái),如果能一個(gè)服務(wù)一臺(tái)機(jī)當(dāng)然最好。
4、Web目錄,CGI目錄,scripts目錄和winnt目錄等重要目錄要用NTFS的特性設(shè)置詳細(xì)的安全權(quán)限,包含注冊(cè)表信息的Winnt目錄只允許管理員完全控制,一般的用戶只讀的權(quán)限也不要給。凡是與系統(tǒng)有關(guān)的重要文件,除了Administrator,其它帳號(hào)都應(yīng)該設(shè)置為只讀權(quán)限,而不是everyone/完全控制
。
5、只開你需要的服務(wù),block掉所有不應(yīng)該打開的端口,如NetBios端口139,這是一個(gè)典型的危險(xiǎn)端口;怎樣禁止這些端口?除了使用防火墻外,NT的Tcp/IP設(shè)置里面也提供了這種功能:打開控制面板-網(wǎng)絡(luò)-協(xié)議-TCP/IP-屬性-高級(jí)-啟用安全機(jī)制-配置,這里面提供了TCP和UDP端口的限制和IP協(xié)議的限制功能。
6、管理員的帳號(hào)要設(shè)置得復(fù)雜一些,建議加入特殊字符。
7、把FTP,Telnet的TCP端口改為非標(biāo)準(zhǔn)端口,通常我都是設(shè)置到10000~65000的范圍
8、刪除可以刪除的所有共享,包括打印機(jī)共享和隱藏的共享如ICP$,Admin$等,微軟說這些特殊共享資源很重要,大多數(shù)情況下不能刪除,而實(shí)際上放在Internet上的機(jī)器大多數(shù)不需要共享。
IPC$: 適用于遠(yuǎn)程管理計(jì)算機(jī)和查看共享資源,在網(wǎng)上最好不要用
Admin$: 實(shí)際上就是 c:\winnt,也沒有必要共享
C$: 登錄為Admin和Backup-operator的用戶可以用\\計(jì)算機(jī)名\C$的方式訪問C盤,雖然僅限于局域網(wǎng),但是遠(yuǎn)程黑客也有辦法偽裝成局域網(wǎng)的登錄用戶,所以都應(yīng)該關(guān)掉。
Print$:
這是放打印機(jī)驅(qū)動(dòng)程序的目錄,與上面的一樣也是個(gè)很危險(xiǎn)的入口。
Netlogon:
這是處理域登錄請(qǐng)求的共享。如果你的機(jī)器為主域控制器,域內(nèi)有其它機(jī)器要登錄進(jìn)來,就不要?jiǎng)h除它,否則照樣可以刪除。
如何關(guān)閉這些共享?用“服務(wù)器管理器”—>“共享目錄”—>“停止共享”
9、將ASP的目錄集中管理,ASP的程序目錄設(shè)置詳盡的訪問權(quán)限,一般建議不要使用“讀”權(quán)限。
10、把winnt下的sam._文件改名,實(shí)踐證明這個(gè)可能泄露密碼的文件可以刪除不要。
11、對(duì)于已知的NT安全漏洞,都應(yīng)該在自己的機(jī)器上做測(cè)試檢查。并及時(shí)安裝補(bǔ)丁程序。
12、有必要的情況下采用IIS4.0提供的SSL安全通信機(jī)制來防止數(shù)據(jù)在網(wǎng)上被截獲。
上一節(jié)