我們配置的服務器需要提供支持的組件如下:(ASP、ASPX、CGI、PHP、FSO、JMAIL、MySql、SMTP、POP3、FTP、 3389終端服務、遠程桌面Web連接管理服務等),這里前提是已經(jīng)安裝好了系統(tǒng),IIS,包括FTP服務器,郵件服務器等,這些具體配置方法的就不再重復了,現(xiàn)在我們著重主要闡述下關于安全方面的配置。
關于常規(guī)的如安全的安裝系統(tǒng),設置和管理帳戶,關閉多余的服務,審核策略,修改終端管理端口, 以及配置MS-SQL,刪除危險的存儲過程,用最低權(quán)限的public帳戶連接等等,都不說了
先說關于系統(tǒng)的NTFS磁盤權(quán)限設置,大家可能看得都多了,但是2003服務器有些細節(jié)地方需要注意的,我看很多文章都沒寫完全。
C盤只給administrators 和system權(quán)限,其他的權(quán)限不給,其他的盤也可以這樣設置,這里給的system權(quán)限也不一定需要給,只是由于某些第三方應用程序是以服務形式啟動的,需要加上這個用戶,否則造成啟動不了。
Windows目錄要加上給users的默認權(quán)限,否則ASP和ASPX等應用程序就無法運行。以前有朋友單獨設置Instsrv和temp等目錄權(quán)限,其實沒有這個必要的。
另外在c:/Documents and Settings/這里相當重要,后面的目錄里的權(quán)限根本不會繼承從前的設置,如果僅僅只是設置了C盤給administrators權(quán)限,而在All Users/Application Data目錄下會出現(xiàn)everyone用戶有完全控制權(quán)限,這樣入侵這可以跳轉(zhuǎn)到這個目錄,寫入腳本或只文件,再結(jié)合其他漏洞來提升權(quán)限;譬如利用serv-u的本地溢出提升權(quán)限,或系統(tǒng)遺漏有補丁,數(shù)據(jù)庫的弱點,甚至社會工程學等等N多方法,從前不是有牛人發(fā)颮說:"只要給我一個webshell,我就能拿到 system",這也的確是有可能的。在用做web/ftp服務器的系統(tǒng)里,建議是將這些目錄都設置的鎖死。其他每個盤的目錄都按照這樣設置,沒個盤都只給adinistrators權(quán)限。
另外,還將:net.exe,cmd.exe,tftp.exe,netstat.exe,regedit.exe,at.exe,attrib.exe,cacls.exe,這些文件都設置只允許administrators訪問。
把不必要的服務都禁止掉,盡管這些不一定能被攻擊者利用得上,但是按照安全規(guī)則和標準上來說,多余的東西就沒必要開啟,減少一份隱患。
在"網(wǎng)絡連接"里,把不需要的協(xié)議和服務都刪掉,這里只安裝了基本的Internet協(xié)議(TCP/IP),由于要控制帶寬流量服務,額外安裝了 Qos數(shù)據(jù)包計劃程序。在高級tcp/ip設置里--"NetBIOS"設置"禁用tcp/IP上的NetBIOS(S)"。在高級選項里,使用 "Internet連接防火墻",這是windows 2003 自帶的防火墻,在2000系統(tǒng)里沒有的功能,雖然沒什么功能,但可以屏蔽端口,這樣已經(jīng)基本達到了一個IPSec的功能。
|
|
|
這里我們按照所需要的服務開放響應的端口。在2003系統(tǒng)里,不推薦用TCP/IP篩選里的端口過濾功能,譬如在使用FTP服務器的時候,如果僅僅只開放21端口,由于FTP協(xié)議的特殊性,在進行FTP傳輸?shù)臅r候,由于FTP 特有的Port模式和Passive模式,在進行數(shù)據(jù)傳輸?shù)臅r候,需要動態(tài)的打開高端口,所以在使用TCP/IP過濾的情況下,經(jīng)常會出現(xiàn)連接上后無法列出目錄和數(shù)據(jù)傳輸?shù)膯栴}。所以在2003系統(tǒng)上增加的windows連接防火墻能很好的解決這個問題,所以都不推薦使用網(wǎng)卡的TCP/IP過濾功能。 SERV-U FTP 服務器的設置:
一般來說,不推薦使用srev-u做ftp服務器,主要是漏洞出現(xiàn)的太頻繁了,但是也正是因為其操作簡單,功能強大,過于流行,關注的人也多,才被發(fā)掘出bug來,換做其他的ftp服務器軟件也一樣不見得安全到哪兒去。 當然,這里也有款功能跟serv-u同樣強大,比較安全的ftp軟件:Ability FTP Server 設置也很簡單,不過我們這里還是要迎合大眾胃口,說說關于serv-u的安全設置。 首先,6.0比從前5.x版本的多了個修改本地LocalAdministrtaor的密碼功能,其實在5.x版本里可以用ultraedit-32等編輯器修改serv-u程序體進行修改密碼端口,6.0修補了這個隱患,單獨拿出來方便了大家。不過修改了管理密碼的serv-u是一樣有安全隱患的,兩個月前臭要飯的就寫了新的采用本地sniff方法獲取serv-u的管理密碼的exploit,正在網(wǎng)上火賣著,不過這種sniff的方法,同樣是在獲得 webshell的條件后還得有個能在目錄里有"執(zhí)行"的權(quán)限,并且需要管理員再次登陸運行serv-u administrator的時候才能成功。所以我們的管理員要盡量避上以上幾點因素,也是可以防護的。
另外serv-u的幾點常規(guī)安全需要設置下:
選中"Block "FTP_bounce"attack and FXP"。什么是FXP呢?通常,當使用FTP協(xié)議進行文件傳輸時,客戶端首先向FTP服務器發(fā)出一個"PORT"命令,該命令中包含此用戶的IP地址和將被用來進行數(shù)據(jù)傳輸?shù)亩丝谔,服務器收到后,利用命令所提供的用戶地址信息建立與用戶的連接。大多數(shù)情況下,上述過程不會出現(xiàn)任何問題,但當客戶端是一名惡意用戶時,可能會通過在PORT命令中加入特定的地址信息,使FTP服務器與其它非客戶端的機器建立連接。雖然這名惡意用戶可能本身無權(quán)直接訪問某一特定機器,但是如果FTP服務器有權(quán)訪問該機器的話,那么惡意用戶就可以通過FTP服務器作為中介,仍然能夠最終實現(xiàn)與目標服務器的連接。這就是FXP,也稱跨服務器攻擊。選中后就可以防止發(fā)生此種情況。
|
另外在"Block anti time-out schemes"也可以選中。其次,在"Advanced"選項卡中,檢查 "Enable security"是否被選中,如果沒有,選擇它們。
IIS的安全:
刪掉c:/inetpub目錄,刪除iis不必要的映射
首先是每一個web站點使用單獨的IIS用戶,譬如這里,新建立了一個名為www.315safe.com ,權(quán)限為guest的。
在IIS里的站點屬性里"目錄安全性"---"身份驗證和訪問控制"里設置匿名訪問使用下列Windows 用戶帳戶"的用戶名密碼都使用www.315safe.com 這個用戶的信息.在這個站點相對應的web目錄文件,默認的只給IIS用戶的讀取和寫入權(quán)限(后面有更BT的設置要介紹)。
在"應用程序配置"里,我們給必要的幾種腳本執(zhí)行權(quán)限:ASP.ASPX,PHP,
ASP,ASPX默認都提供映射支持了的,對于PHP,需要新添加響應的映射腳本,然后在web服務擴展將ASP,ASPX都設置為允許,對于 php以及CGI的支持,需要新建web服務擴展,在擴展名(X):下輸入 php ,再在要求的文件(E):里添加地址 C:/php/sapi/php4isapi.dll ,并勾選設置狀態(tài)為允許(S)。然后點擊確定,這樣IIS就支持PHP了。支持CGI同樣也是如此。
要支持ASPX,還需要給web根目錄給上users用戶的默認權(quán)限,才能使ASPX能執(zhí)行。
另外在應用程序配置里,設置調(diào)試為向客戶端發(fā)送自定義的文本信息,這樣能對于有ASP注入漏洞的站點,可以不反饋程序報錯的信息,能夠避免一定程度的攻擊。
在自定義HTTP錯誤選項里,有必要定義下譬如404,500等錯誤,不過有有時候為了調(diào)試程序,好知道程序出錯在什么地方,建議只設置404就可以了。
IIS6.0由于運行機制的不同,出現(xiàn)了應用程序池的概念。一般建議10個左右的站點共用一個應用程序池,應用程序池對于一般站點可以采用默認設置,
可以在每天凌晨的時候回收一下工作進程。
新建立一個站,采用默認向?qū),在設置中注意以下在應用程序設置里:執(zhí)行權(quán)限為默認的純腳本,應用程序池使用獨立的名為:315safe的程序池。
名為315safe的應用程序池可以適當設置下"內(nèi)存回收":這里的最大虛擬內(nèi)存為:1000M,最大使用的物理內(nèi)存為256M,這樣的設置幾乎是沒限制這個站點的性能的。
在應用程序池里有個"標識"選項,可以選擇應用程序池的安全性帳戶,默認才用網(wǎng)絡服務這個帳戶,大家就不要動它,能盡量以最低權(quán)限去運行大,隱患也就更小些。在一個站點的某些目錄里,譬如這個"uploadfile"目錄,不需要在里面運行asp程序或其他腳本的,就去掉這個目錄的執(zhí)行腳本程序權(quán)限,在"應用程序設置"的"執(zhí)行權(quán)限"這里,默認的是"純腳本",我們改成"無",這樣就只能使用靜態(tài)頁面了。依次類推,大凡是不需要asp運行的目錄,譬如數(shù)據(jù)庫目錄,圖片目錄等等里都可以這樣做,這樣主要是能避免在站點應用程序腳本出現(xiàn)bug的時候,譬如出現(xiàn)從前流行的upfile漏洞,而能夠在一定程度上對漏洞有扼制的作用。
在默認情況下,我們一般給每個站點的web目錄的權(quán)限為IIS用戶的讀取和寫入,如圖:
但是我們現(xiàn)在為了將SQL注入,上傳漏洞全部都趕走,我們可以采取手動的方式進行細節(jié)性的策略設置。 1. 給web根目錄的IIS用戶只給讀權(quán)限。如圖:
然后我們對響應的uploadfiles/或其他需要存在上傳文件的目錄額外給寫的權(quán)限,并且在IIS里給這個目錄無腳本運行權(quán)限,這樣即使網(wǎng)站程序出現(xiàn)漏洞,入侵者也無法將asp木馬寫進目錄里去,呵呵,不過沒這么簡單就防止住了攻擊,還有很多工作要完成。如果是MS-SQL數(shù)據(jù)庫的,就這樣也就OK了,但是Access的數(shù)據(jù)庫的話,其數(shù)據(jù)庫所在的目錄,或數(shù)據(jù)庫文件也得給寫權(quán)限,然后數(shù)據(jù)庫文件沒必要改成.asp的。這樣的后果大家也都知道了把,一旦你的數(shù)據(jù)庫路徑被暴露了,這個數(shù)據(jù)庫就是一個大木馬,夠可怕的。其實完全還是規(guī)矩點只用mdb后綴,這個目錄在IIS里不給執(zhí)行腳本權(quán)限。然后在IIS里加設置一個映射規(guī)律,如圖:
這里用任意一個dll文件來解析.mdb后綴名的映射,只要不用asp.dll來解析就可以了,這樣別人即使獲得了數(shù)據(jù)庫路徑也無法下載。這個方法可以說是防止數(shù)據(jù)庫被下載的終極解決辦法了。 |