二、 正確安裝win2000 server 1.分區(qū)和邏輯盤(pán)的分配,有一些朋友為了省事,將硬盤(pán)僅僅分為一個(gè)邏輯盤(pán),所有的軟件都裝在c驅(qū)上,這是很不好的,建議最少建立兩個(gè)分區(qū),一個(gè)系統(tǒng)分區(qū),一個(gè)應(yīng)用程序分區(qū),這是因?yàn)椋④浀膇is經(jīng)常會(huì)有泄漏源碼/溢出的漏洞,如果把系統(tǒng)和iis放在同一個(gè)驅(qū)動(dòng)器會(huì)導(dǎo)致系統(tǒng)文件的泄漏甚至入侵者遠(yuǎn)程獲取admin。推薦的安全配置是建立三個(gè)邏輯驅(qū)動(dòng)器,第一個(gè)大于2g,用來(lái)裝系統(tǒng)和重要的日志文件,第二個(gè)放iis,第三個(gè)放ftp,這樣無(wú)論iis或ftp出了安全漏洞都不會(huì)直接影響到系統(tǒng)目錄和系統(tǒng)文件。要知道,iis和ftp是對(duì)外服務(wù)的,比較容易出問(wèn)題。而把iis和ftp分開(kāi)主要是為了防止入侵者上傳程序并從iis中運(yùn)行。(這個(gè)可能會(huì)導(dǎo)致程序開(kāi)發(fā)人員和編輯的苦惱,管他呢,反正你是管理員j) 2.安裝順序的選擇:不要覺(jué)得:順序有什么重要?只要安裝好了,怎么裝都可以的。錯(cuò)!win2000在安裝中有幾個(gè)順序是一定要注意的: 首先,何時(shí)接入網(wǎng)絡(luò):win2000在安裝時(shí)有一個(gè)漏洞,在你輸入administrator密碼后,系統(tǒng)就建立了admin$的共享,但是并沒(méi)有用你剛剛輸入的密碼來(lái)保護(hù)它,這種情況一直持續(xù)到你再次啟動(dòng)后,在此期間,任何人都可以通過(guò)admin$進(jìn)入你的機(jī)器;同時(shí),只要安裝一完成,各種服務(wù)就會(huì)自動(dòng)運(yùn)行,而這時(shí)的服務(wù)器是滿身漏洞,非常容易進(jìn)入的,因此,在完全安裝并配置好win2000 server之前,一定不要把主機(jī)接入網(wǎng)絡(luò)。 其次,補(bǔ)丁的安裝:補(bǔ)丁的安裝應(yīng)該在所有應(yīng)用程序安裝完之后,因?yàn)檠a(bǔ)丁程序往往要替換/修改某些系統(tǒng)文件,如果先安裝補(bǔ)丁再安裝應(yīng)用程序有可能導(dǎo)致補(bǔ)丁不能起到應(yīng)有的效果,例如:iis的hotfix就要求每次更改iis的配置都需要安裝(變不變態(tài)?)
三、 安全配置win2000 server 即使正確的安裝了win2000 server,系統(tǒng)還是有很多的漏洞,還需要進(jìn)一步進(jìn)行細(xì)致地配置。 1.端口:端口是計(jì)算機(jī)和外部網(wǎng)絡(luò)相連的邏輯接口,也是計(jì)算機(jī)的第一道屏障,端口配置正確與否直接影響到主機(jī)的安全,一般來(lái)說(shuō),僅打開(kāi)你需要使用的端口會(huì)比較安全,配置的方法是在網(wǎng)卡屬性-tcp/ip-高級(jí)-選項(xiàng)-tcp/ip篩選中啟用tcp/ip篩選,不過(guò)對(duì)于win2000的端口過(guò)濾來(lái)說(shuō),有一個(gè)不好的特性:只能規(guī)定開(kāi)哪些端口,不能規(guī)定關(guān)閉哪些端口,這樣對(duì)于需要開(kāi)大量端口的用戶就比較痛苦。 2.iis:iis是微軟的組件中漏洞最多的一個(gè),平均兩三個(gè)月就要出一個(gè)漏洞,而微軟的iis默認(rèn)安裝又實(shí)在不敢恭維,所以iis的配置是我們的重點(diǎn),現(xiàn)在大家跟著我一起來(lái): 首先,把c盤(pán)那個(gè)什么inetpub目錄徹底刪掉,在d盤(pán)建一個(gè)inetpub(要是你不放心用默認(rèn)目錄名也可以改一個(gè)名字,但是自己要記得)在iis管理器中將主目錄指向d:/inetpub; 其次,那個(gè)iis安裝時(shí)默認(rèn)的什么scripts等虛擬目錄一概刪除(罪惡之源呀,忘了http://www.target.com/scripts/..%c1%1c../winnt/system32/cmd.exe了?我們雖然已經(jīng)把inetpub從系統(tǒng)盤(pán)挪出來(lái)了,但是還是小心為上),如果你需要什么權(quán)限的目錄可以自己慢慢建,需要什么權(quán)限開(kāi)什么。(特別注意寫(xiě)權(quán)限和執(zhí)行程序的權(quán)限,沒(méi)有絕對(duì)的必要千萬(wàn)不要給) 第三,應(yīng)用程序配置:在iis管理器中刪除必須之外的任何無(wú)用映射,必須指的是asp, asa和其他你確實(shí)需要用到的文件類型,例如你用到stml等(使用server side include),實(shí)際上90%的主機(jī)有了上面兩個(gè)映射就夠了,其余的映射幾乎每個(gè)都有一個(gè)凄慘的故事:htw, htr, idq, ida……想知道這些故事?去查以前的漏洞列表吧。什么?找不到在哪里刪?在iis管理器中右擊主機(jī)->屬性->www服務(wù) 編輯->主目錄 配置->應(yīng)用程序映射,然后就開(kāi)始一個(gè)個(gè)刪吧(里面沒(méi)有全選的,嘿嘿)。接著在剛剛那個(gè)窗口的應(yīng)用程序調(diào)試書(shū)簽內(nèi)將腳本錯(cuò)誤消息改為發(fā)送文本(除非你想asp出錯(cuò)的時(shí)候用戶知道你的程序/網(wǎng)絡(luò)/數(shù)據(jù)庫(kù)結(jié)構(gòu))錯(cuò)誤文本寫(xiě)什么?隨便你喜歡,自己看著辦。點(diǎn)擊確定退出時(shí)別忘了讓虛擬站點(diǎn)繼承你設(shè)定的屬性。 為了對(duì)付日益增多的cgi漏洞掃描器,還有一個(gè)小技巧可以參考,在iis中將http404 object not found出錯(cuò)頁(yè)面通過(guò)url重定向到一個(gè)定制htm文件,可以讓目前絕大多數(shù)cgi漏洞掃描器失靈。其實(shí)原因很簡(jiǎn)單,大多數(shù)cgi掃描器在編寫(xiě)時(shí)為了方便,都是通過(guò)查看返回頁(yè)面的http代碼來(lái)判斷漏洞是否存在的,例如,著名的idq漏洞一般都是通過(guò)取1.idq來(lái)檢驗(yàn),如果返回http200,就認(rèn)為是有這個(gè)漏洞,反之如果返回http404就認(rèn)為沒(méi)有,如果你通過(guò)url將http404出錯(cuò)信息重定向到http404.htm文件,那么所有的掃描無(wú)論存不存在漏洞都會(huì)返回http200,90%的cgi掃描器會(huì)認(rèn)為你什么漏洞都有,結(jié)果反而掩蓋了你真正的漏洞,讓入侵者茫然無(wú)處下手(武俠小說(shuō)中常說(shuō)全身漏洞反而無(wú)懈可擊,難道說(shuō)的就是這個(gè)境界?)不過(guò)從個(gè)人角度來(lái)說(shuō),我還是認(rèn)為扎扎實(shí)實(shí)做好安全設(shè)置比這樣的小技巧重要的多。 最后,為了保險(xiǎn)起見(jiàn),你可以使用iis的備份功能,將剛剛的設(shè)定全部備份下來(lái),這樣就可以隨時(shí)恢復(fù)iis的安全配置。還有,如果你怕iis負(fù)荷過(guò)高導(dǎo)致服務(wù)器滿負(fù)荷死機(jī),也可以在性能中打開(kāi)cpu限制,例如將iis的最大cpu使用率限制在70%。
3.賬號(hào)安全: win2000的賬號(hào)安全是另一個(gè)重點(diǎn),首先,win2000的默認(rèn)安裝允許任何用戶通過(guò)空用戶得到系統(tǒng)所有賬號(hào)/共享列表,這個(gè)本來(lái)是為了方便局域網(wǎng)用戶共享文件的,但是一個(gè)遠(yuǎn)程用戶也可以得到你的用戶列表并使用暴力法破解用戶密碼。很多朋友都知道可以通過(guò)更改注冊(cè)表local_machine/system/currentcontrolset/control/lsa-restrictanonymous = 1來(lái)禁止139空連接,實(shí)際上win2000的本地安全策略(如果是域服務(wù)器就是在域和域安全策略中)就有這樣的選項(xiàng)restrictanonymous(匿名連接的額外限制),這個(gè)選項(xiàng)有三個(gè)值: 0:none. rely on default permissions(無(wú),取決于默認(rèn)的權(quán)限) 1:do not allow enumeration of sam accounts and shares(不允許枚舉sam帳號(hào)和共享) 2:no access without explicit anonymous permissions(沒(méi)有顯式匿名權(quán)限就不允許訪問(wèn)) 0這個(gè)值是系統(tǒng)默認(rèn)的,什么限制都沒(méi)有,遠(yuǎn)程用戶可以知道你機(jī)器上所有的賬號(hào)、組信息、共享目錄、網(wǎng)絡(luò)傳輸列表(netservertransportenum等等,對(duì)服務(wù)器來(lái)說(shuō)這樣的設(shè)置非常危險(xiǎn)。 1這個(gè)值是只允許非null用戶存取sam賬號(hào)信息和共享信息。 2這個(gè)值是在win2000中才支持的,需要注意的是,如果你一旦使用了這個(gè)值,你的共享估計(jì)就全部完蛋了,所以我推薦你還是設(shè)為1比較好。
好了,入侵者現(xiàn)在沒(méi)有辦法拿到我們的用戶列表,我們的賬戶安全了……慢著,至少還有一個(gè)賬戶是可以跑密碼的,這就是系統(tǒng)內(nèi)建的administrator,怎么辦?我改改改,在計(jì)算機(jī)管理->用戶賬號(hào)中右擊administrator然后改名,改成什么隨便你,只要能記得就行了。 不對(duì)不對(duì),我都已經(jīng)改了用戶名了,怎么還是有人跑我管理員的密碼?幸好我的密碼夠長(zhǎng),但是這也不是辦法呀?嗯,那肯定是在本地或者terminal service的登錄界面看到的,好吧,我們?cè)賮?lái)把hkey_local_machine/software/microsoft/windowsnt/currentversion/winlogon項(xiàng)中的don’t display last user name串?dāng)?shù)據(jù)改成1,這樣系統(tǒng)不會(huì)自動(dòng)顯示上次的登錄用戶名。 將服務(wù)器注冊(cè)表hkey_local_ machine/software/microsoft/ windowsnt/currentversion/winlogon項(xiàng)中的don't display last user name串?dāng)?shù)據(jù)修改為1,隱藏上次登陸控制臺(tái)的用戶名。(哇,世界清靜了)
同樣,terminal service的安全日志默認(rèn)也是不開(kāi)的,我們可以在terminal service configration(遠(yuǎn)程服務(wù)配置)-權(quán)限-高級(jí)中配置安全審核,一般來(lái)說(shuō)只要記錄登錄、注銷(xiāo)事件就可以了。