置文件的構(gòu)造形式
urlscan配置文件必須遵從以下規(guī)則:
。1)此文件名必須為urlscan.ini;
。2)配置文件必須和urlscan.dll在同一目錄;
。3)配置文件必須是標準ini文件結(jié)構(gòu),也就是由節(jié),串和值組成;
。4)配置文件修改以后,必須重新啟動IIS,使配置生效;
。5)配置文件由以下各節(jié)組成:
[Option]節(jié),主要設(shè)置節(jié);
[AllowVerbs]節(jié),配置認定為合法URL規(guī)則設(shè)定,此設(shè)定與Option節(jié)有關(guān);
[DenyVerbs]節(jié),配置認定為非法URL規(guī)則設(shè)定,此設(shè)定與Option節(jié)有關(guān);
[DenyHeaders]節(jié),配置認定為非法的header在設(shè)立設(shè)置;
[AllowExtensions]節(jié),配置認定為合法的文件擴展名在這里設(shè)置,此設(shè)定與Option節(jié)有關(guān);
[DenyExtensions]節(jié),配置認定為非法的文件擴展名在這里設(shè)置,此設(shè)定與Option節(jié)有關(guān);
。病⒕唧w配置
。1)Option節(jié)的配置,因為Option節(jié)的設(shè)置直接影響到以后的配置,因此,這一節(jié)的設(shè)置特別重要。此節(jié)
主要進行以下屬性的設(shè)置:
UseAllowVerbs:使用允許模式檢查URL請求,如果設(shè)置為1,所有沒有在[AllowVerbs]節(jié)設(shè)置的請求都被拒
絕;如果設(shè)置為0,所有沒有在[DenyVerbs]設(shè)置的URL請求都認為合法;默認為1;
UseAllowExtensions:使用允許模式檢測文件擴展名;如果設(shè)置為 1,所有沒在[AllowExtensions]節(jié)設(shè)置
的文件擴展名均認為是非法請求;如果設(shè)置為0,所有沒在[DenyExtensions]節(jié)設(shè)置的擴展名均被認為是合法請
求;默認為0;
EnableLogging:是否允許使用Log文件,如果為1,將在urlscan.dll的相同目錄設(shè)置名為urlscan.log的文
件記錄所有過濾;
AllowLateScanning:允許其他URL過濾在URLScan過濾之前進行,系統(tǒng)默認為不允許0;
AlternateServerName:使用服務(wù)名代替;如果此節(jié)存在而且[RemoveServerHeader]節(jié)設(shè)置為0,IIS將在這
里設(shè)置的服務(wù)器名代替默認的“Server”;
NormalizeUrlBeforeScan:在檢測URL之前規(guī)格化URL;如果為1,URLScan將在IIS編碼URL之前URL進行檢測
;需要提醒的是,只有管理員對URL解析非常熟悉的情況下才可以將其設(shè)置為0;默認為1;
VerifyNormalization:如果設(shè)置為1,UrlScan將校驗URL規(guī)則,默認為1;此節(jié)設(shè)定與
NormalizeUrlBeforeScan有關(guān);
AllowHighBitCharacters:如果設(shè)置為1,將允許URL中存在所有字節(jié),如果為0,含有非ASCII字符的URL將
拒絕;默認為1;
AllowDotInPath:如果設(shè)置為1,將拒絕所有含有多個“.”的URL請求,由于URL檢測在IIS解析URL之前,
所以,對這一檢測的準確性不能保證,默認為0;
RemoveServerHeader:如果設(shè)置為1,將把所有應(yīng)答的服務(wù)頭清除,默認為0;
。2)[AllowVerbs]節(jié)配置
如果UseAllowVerbs設(shè)置為1,此節(jié)設(shè)置的所有請求將被允許,一般設(shè)置以下請求:
GET、HEAD、POST
。3)[DenyVerbs]節(jié)配置
如果UseAllowVerbs設(shè)置為0,此節(jié)設(shè)置的所有請求將拒絕,一般設(shè)置以下請求:
PROPFIND、PROPPATCH、MKCOL、DELETE、PUT、COPY、MOVE、LOCK、UNLOCK
。4)[AllowExtensions]節(jié)設(shè)置
在這一節(jié)設(shè)置的所有擴展名文件將被允許請求,一般設(shè)置以下請求:
.asp、.htm、.html、.txt、.jpg、.jpeg、.gif,如果需要提供文件下載服務(wù),需要增加.rar、.zip
。5)[DenyExtensions]節(jié)設(shè)置
在這一節(jié)設(shè)置的所有擴展名文件請求將被拒絕,根據(jù)已經(jīng)發(fā)現(xiàn)的漏洞,我們可以在這一節(jié)增加內(nèi)容,一般
為以下設(shè)置:
.asa、可執(zhí)行文件、批處理文件、日志文件、罕見擴展如:shtml、.printer等。
三、總結(jié)
以上兩個工具功能強大,可以真正實現(xiàn)對IIS的保護。IIS Lock Tool簡單,相對而言,只是被動的防衛(wèi);
UrlScan設(shè)置比較難,建議對IIS非常熟悉的管理員使用,只要設(shè)置得當,UrlScan的功能更加強大。在使用
UrlScan的時候,切記不要設(shè)置一次萬事大吉,需要不停跟蹤新出現(xiàn)的漏洞,隨時修改URLScan的配置文件。
3。高級篇:NT/2000的高級安全設(shè)置
1.禁用空連接,禁止匿名獲得用戶名列表
Win2000的默認安裝允許任何用戶通過空用戶得到系統(tǒng)所有賬號/共享列表,這個本來是為了方便局域網(wǎng)用
戶共享文件的,但是一個遠程用戶也可以得到你的用戶列表并使用暴力法破解用戶密碼。很多朋友都知道可以
通過更改注冊表Local_MachineSystemCurrentControlSetControlLSA-RestrictAnonymous = 1來禁止139空
連接,實際上win2000的本地安全策略(如果是域服務(wù)器就是在域服務(wù)器安全和域安全策略中)就有這樣的選項
RestrictAnonymous(匿名連接的額外限制),這個選項有三個值: 0:None. Rely on default permissions
(無,取決于默認的權(quán)限 1 :Do not allow enumeration of SAM accounts and shares(不允許枚舉SAM帳號
和共享) 2:No access without explicit anonymous permissions(沒有顯式匿名權(quán)限就不允許訪問) 0這
個值是系統(tǒng)默認的,什么限制都沒有,遠程用戶可以知道你機器上所有的賬號、組信息、共享目錄、網(wǎng)絡(luò)傳輸列表(NetServerTransportEnum等等,對服務(wù)器來說這樣的設(shè)置非常危險。 1這個值是只允許非NULL用戶存取SAM賬號信息和共享信息。 2這個值是在win2000中才支持的,需要注意的是,如果你一旦使用了這個值,你的共享估計就全部完蛋了,所以我推薦你還是設(shè)為1比較好。 好了,入侵者現(xiàn)在沒有辦法拿到我們的用戶列表,我們的賬戶安全了
2。禁止顯示上次登陸的用戶名
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionwinlogon項中的Don’t Display Last
User Name串數(shù)據(jù)改成1,這樣系統(tǒng)不會自動顯示上次的登錄用戶名。將服務(wù)器注冊表HKEY_LOCAL_
MACHINESOFTWAREMicrosoft
WindowsNTCurrentVersionWinlogon項中的Don't Display Last User Name串數(shù)據(jù)修改為1,隱藏上次登陸控
制臺的用戶名。其實,在2000的本地安全策略中也存在該選項
Winnt4.0修改注冊表:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrent VersionWinlogon 中增加
DontDisplayLastUserName,將其值設(shè)為1。
2.預(yù)防DoS:
在注冊表HKLMSYSTEMCurrentControlSetServicesTcpipParameters中更改以下值可以幫助你防御一定強度
的DoS攻擊 SynAttackProtect REG_DWORD 2
EnablePMTUDiscovery REG_DWORD 0 NoNameReleaseOnDemand REG_DWORD 1
EnableDeadGWDetect REG_DWORD 0 KeepAliveTime REG_DWORD 300,000
PerformRouterDiscovery REG_DWORD 0 EnableICMPRedirects REG_DWORD 0
在Win2000中如何關(guān)閉ICMP(Ping)
3.針對ICMP攻擊
ICMP的全名是Internet Control and Message Protocal即因特網(wǎng)控制消息/錯誤報文協(xié)議,這個協(xié)議主要
是用來進行錯誤信息和控制信息的傳遞,例如著名的Ping和Tracert工具都是利用ICMP協(xié)議中的ECHO request報
文進行的(請求報文ICMP ECHO類型8代碼0,應(yīng)答報文ICMP ECHOREPLY類型0代碼0)。
ICMP協(xié)議有一個特點---它是無連結(jié)的,也就是說只要發(fā)送端完成ICMP報文的封裝并傳遞給路由器,這個報
文將會象郵包一樣自己去尋找目的地址,這個特點使得ICMP協(xié)議非常靈活快捷,但是同時也帶來一個致命的缺
陷---易偽造(郵包上的寄信人地址是可以隨便寫的),任何人都可以偽造一個ICMP報文并發(fā)送出去,偽造者可
以利用SOCK_RAW編程直接改寫報文的ICMP首部和IP首部,這樣的報文攜帶的源地址是偽造的,在目的端根本無
法追查,(攻擊者不怕被抓那還不有恃無恐?)根據(jù)這個原理,外面出現(xiàn)了不少基于ICMP的攻擊軟件,有通過
網(wǎng)絡(luò)架構(gòu)缺陷制造ICMP風暴的,有使用非常大的報文堵塞網(wǎng)絡(luò)的,有利用ICMP碎片攻擊消耗服務(wù)器CPU的,甚至
如果將ICMP協(xié)議用來進行通訊,可以制作出不需要任何TCP/UDP端口的木馬(參見揭開木馬的神秘面紗三)
......既然ICMP協(xié)議這么危險,我們?yōu)槭裁床魂P(guān)掉它呢?
我們都知道,Win2000在網(wǎng)絡(luò)屬性中自帶了一個TCP/IP過濾器,我們來看看能不能通過這里關(guān)掉ICMP協(xié)議,
桌面上右擊網(wǎng)上鄰居->屬性->右擊你要配置的網(wǎng)卡->屬性->TCP/IP->高級->選項->TCP/IP過濾,這里有三個過
濾器,分別為:TCP端口、UDP端口和IP協(xié)議,我們先允許TCP/IP過濾,然后一個一個來配置,先是TCP端口,點
擊"只允許",然后在下面加上你需要開的端口,一般來說WEB服務(wù)器只需要開80(www),F(xiàn)TP服務(wù)器需要開20(FTP
Data),21(FTP Control),郵件服務(wù)器可能需要打開25(SMTP),110(POP3),以此類推......接著是UDP,UDP協(xié)
議和ICMP協(xié)議一樣是基于無連結(jié)的,一樣容易偽造,所以如果不是必要(例如要從UDP提供DNS服務(wù)之類)應(yīng)該
選擇全部不允許,避免受到洪水(Flood)或碎片(Fragment)攻擊。最右邊的一個編輯框是定義IP協(xié)議過濾的
,我們選擇只允許TCP協(xié)議通過,添加一個6(6是TCP在IP協(xié)議中的代碼,IPPROTO_TCP=6),從道理上來說,只
允許TCP協(xié)議通過時無論UDP還是ICMP都不應(yīng)該能通過,可惜的是這里的IP協(xié)議過濾指的是狹義的IP協(xié)議,從架
構(gòu)上來說雖然ICMP協(xié)議和IGMP協(xié)議都是IP協(xié)議的附屬協(xié)議,但是從網(wǎng)絡(luò)7層結(jié)構(gòu)上ICMP/IGMP協(xié)議與IP協(xié)議同屬
一層,所以微軟在這里的IP協(xié)議過濾是不包括ICMP協(xié)議的,也就是說即使你設(shè)置了“只允許TCP協(xié)議通過”,
ICMP報文仍然可以正常通過,所以如果我們要過濾ICMP協(xié)議還需要另想辦法。
剛剛在我們進行TCP/IP過濾時,還有另外一個選項:IP安全機制(IP Security),我們過濾ICMP的想法就
要著落在它身上。
打開本地安全策略,選擇IP安全策略,在這里我們可以定義自己的IP安全策略。一個IP安全過濾器由兩個部分
組成:過濾策略和過濾操作,過濾策略決定哪些報文應(yīng)當引起過濾器的關(guān)注,過濾操作決定過濾器是“允許”
還是“拒絕”報文的通過。要新建IP安全過濾器,必須新建自己的過濾策略和過濾操作:右擊本機的IP安全策
略,選擇管理IP過濾器,在IP過濾器管理列表中建立一個新的過濾規(guī)則:ICMP_ANY_IN,源地址選任意IP,目標
地址選本機,協(xié)議類型是ICMP,切換到管理過濾器操作,增加一個名為Deny的操作,操作類型為"阻止"(Block
)。這樣我們就有了一個關(guān)注所有進入ICMP報文的過濾策略和丟棄所有報文的過濾操作了。需要注意的是,在 地址選項中有一個鏡像選擇,如果選中鏡像,那么將會建立一個對稱的過濾策略,也就是說當你關(guān)注any
IP->my IP的時候,由于鏡像的作用,實際上你也同時關(guān)注了my IP->any IP,你可以根據(jù)自己的需要選擇或者
放棄鏡像。再次右擊本機的IP安全策略,選擇新建IP過濾策略,建立一個名稱為ICMP Filter的過濾器,通過增
加過濾規(guī)則向?qū)В覀儼褎倓偠x的ICMP_ANY_IN過濾策略指定給ICMP Filter,然后在操作選框中選擇我們剛
剛定義的Deny操作,退出向?qū)Т翱,右擊ICMP Filter并啟用它,現(xiàn)在任何地址進入的ICMP報文都會被丟棄了。
雖然用IP sec能夠?qū)CMP報文進行過濾,不過操作起來太麻煩,而且如果你只需要過濾特定的ICMP報文,
還要保留一些常用報文(如主機不可達、網(wǎng)絡(luò)不可達等),IP sec策略就力不從心了,我們可以利用Win2000的
另一個強大工具路由與遠程訪問控制(Routing & Remote Access)來完成這些復雜的過濾操作。
路由與遠程訪問控制是Win2000用來管理路由表、配置VPN、控制遠程訪問、進行IP報文過濾的工具,默認
情況下并沒有安裝,所以首先你需要啟用它,打開"管理工具"->"路由與遠程訪問",右擊服務(wù)器(如果沒有則
需要添加本機)選擇"配置并啟用路由及遠程訪問",這時配置向?qū)屇氵x擇是什么樣的服務(wù)器,一般來說,
如果你不需要配置VPN服務(wù)器,那么選擇"手動配置"就可以了,配置完成后,主機下將出現(xiàn)一個IP路由的選項,
在"常規(guī)"中選擇你想配置的網(wǎng)卡(如果你有多塊網(wǎng)卡,你可以選擇關(guān)閉某一塊的ICMP),在網(wǎng)卡屬性中點擊"輸
入篩選器",添加一條過濾策略"from:ANY to:ANY 協(xié)議:ICMP 類型:8 :編碼:0 丟棄"就可以了(類型8編碼
0就是Ping使用的ICMP_ECHO報文,如果
億恩科技地址(ADD):鄭州市黃河路129號天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888
聯(lián)系:億恩小凡
QQ:89317007
電話:0371-63322206 本文出自:億恩科技【mszdt.com】
服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|