• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • IIS5安全策略設計概要

    發表于:2007-05-25來源:作者:點擊數: 標簽:
    IIS5是Windows2000操作系統所帶的Internet服務程序包,它包含了www、ftp、smtp以及index server等等眾多實用功能。無論是創建一個Internet外部站點,還是構造一個Intranet內部應用,使用IIS5都是非常好的選擇。同時,如何保障IIS5 安全 穩定運行、內容發布正
    IIS5是Windows2000操作系統所帶的Internet服務程序包,它包含了www、ftp、smtp以及index server等等眾多實用功能。無論是創建一個Internet外部站點,還是構造一個Intranet內部應用,使用IIS5都是非常好的選擇。同時,如何保障IIS5安全穩定運行、內容發布正確可靠,這是系統管理員必須高度重視的問題。本文就IIS5的安全策略設計進行概要分析,旨在讓大家從宏觀角度了解系統管理員都應在哪些方面執行必要的安全配置,然后根據實際環境再在各個環節分別擴展,最終創建一個安全的IIS5服務器。

    為虛擬目錄設置適當的訪問權限
    正確設置虛擬目錄的訪問權限,將會很大程度地影響其中文件的安全可靠性。建議考慮以下幾個方面的設置原則:
    文件類型 建議的訪問權限
    CGI 程序(.exe, .dll, .cmd, .pl) Everyone (X)
    Administrators (Full Control)
    System (Full Control)
    腳本文件(.asp) Everyone (X)
    Administrators (Full Control)
    System (Full Control)
    包含文件(.inc, .shtm, .shtml) Everyone (X)
    Administrators (Full Control)
    System (Full Control)
    靜態文件 (.txt, .gif, .jpg, .html) Everyone (R)
    Administrators (Full Control)
    System (Full Control)

    為不同類型的文件創建不同的目錄
    如果一個虛擬目錄下面有多種類型的文件,按照上面的原則為每一種文件設置訪問權限,無疑是非常煩瑣的事情。因此,我們可以采取為不同類型文件創建不同目錄的方式,然后再按照上面的原則為每一個目錄設置相應的訪問權限。比如,我們可以創建如下的目錄結構:
    C:\inetpub\wwwroot\myserver\static:存放靜態文本文件(.html)
    C:\inetpub\wwwroot\myserver\include:存放包含文件(.inc)
    C:\inetpub\wwwroot\myserver\script:存放腳本文件(.asp)
    C:\inetpub\wwwroot\myserver\executable:存放可執行文件(.exe,.dll, .cmd, .pl)
    C:\inetpub\wwwroot\myserver\images:存放圖形文件(.gif,.jpeg)

    另外,請注意以下2個特殊的目錄:

    C:\inetpub\ftproot:FTP服務所在目錄
    C:\inetpub\mailroot:SMTP服務所在目錄

    這2個目錄的訪問權限是Everyone 完全控制(Full Control),每個用戶都具有向其中添加數據的權限。這樣,就有可能造成目錄所在磁盤的空間耗盡。因此,我們建議:

    將這2個目錄放置到另外的磁盤卷中,與其他的IIS服務程序分開。
    使用Windows 2000 磁盤配額功能限制添加到這2個目錄的數據量。

    為IIS日志文件設置適合的訪問權限
    IIS日志文件記錄了所有訪問IIS服務程序的信息,它對于系統管理員檢測故障非常重要。攻擊者為了銷毀他們的侵入痕跡,總是要想方設法刪除掉日志文件。因此,我們建議對這些日志文件進行重點保護,設置如下的訪問權限:

    Administrators (Full Control)
    System (Full Control)
    Everyone (RWC)

    IIS日志文件一般位于如下路徑:%systemroot%\system32\LogFiles。

    使用日志文件
    日志文件對于檢查服務器是否被攻擊是極為重要的。日志文件有多種,我們建議使用"W3C擴充日志文件格式",步驟如下:

    啟動"Internet服務管理器"
    點擊鼠標右鍵選擇要設置的站點,在從彈出菜單中選擇"屬性"
    點擊"Web站點"選項卡
    點擊選中"啟用日志記錄"復選框
    從"活動日志格式"下拉選擇框中選擇"W3C 擴充日志文件格式"
    點擊"屬性"
    點擊"擴充的屬性"選項卡,然后依次選中如下屬性:
    客戶IP地址
    用戶名
    方法
    URI資源
    HTTP狀態
    Win32狀態
    用戶代理
    服務器IP地址
    服務器端口

    點擊小圖放大

    以上最后2個屬性只當一個計算機充當多個Web服務器時有意義,也就是所謂的虛擬主機。屬性"Win32狀態"對于調試非常有用,當它的數值等于5時,表示禁止訪問(aclearcase/" target="_blank" >ccess denied)。我們可以在命令行執行如下命令得到其他的"Win32狀態碼"所表示的含義:
    net helpmsg err
    其中err表示Win32狀態碼。

    禁止或者刪除所有的例子程序
    默認安裝選項中,例子程序不會被安裝到機器中。對于一個正式應用的服務器,我們不應該在其中安裝任何例子程序。如果已經安裝了某些例子程序,建議將它們完整刪除掉。為了查找方便,以下我們列出一些例子程序的默認安裝路徑:
    例子程序類別 所在虛擬目錄 默認安裝路徑
    IIS例子程序 \IISSamples c:\inetpub\iissamples
    IIS文檔 \IISHelp c:\winnt\help\iishelp
    Data Access \MSADC c:\program files\common files\system\msadc

    刪除虛擬目錄IISADMPWD
    這個虛擬目錄的作用是允許用戶重新設置他們在Windows NT或者Windows 2000操作系統上的帳號口令,應用環境主要針對企業內部網Intranet。IIS5的安裝中沒有包含這一項,但是如果是從IIS4升級到IIS5,就會存在這個虛擬目錄。建議如果不是Intranet環境,就將之刪除。

    刪除不使用的應用程序映射關聯
    IIS默認情況下可以解釋如.asp、.htr、.shtm等應用程序文件,當這些文件被IIS接收后,將交由一個DLL文件處理。如果使用不到其中某類文件,我們建議將刪除那個類型在IIS中的映射關系。步驟如下:

    啟動"Internet服務管理器"
    點擊鼠標右鍵選擇要處理的服務器,再選擇"屬性"


    點擊小圖放大


    選擇"WWW服務",點擊"編輯"

    點擊小圖放大


    點擊"主目錄"

    點擊小圖放大


    點擊"配置",顯示出當前"應用程序映射"列表

    點擊小圖放大

    然后參照下表刪除相關類別:
    如果不使用下列應用 就刪除掉以下項目
    基于Web的口令修改 .htr
    Internet數據庫連接器 (注意:所有的IIS5 Web服務器將使用ADO等相似技術代替數據庫連接器) .idc
    服務器端包含文件(Server-side Includes) .stm, .shtm, and .shtml
    Internet打印 .printer
    索引服務(Index Server) .htw, .ida and .idq

    關于Internet打印服務,我們再說明一點。Internet打印可以通過Internet服務管理器進行配置,也可以通過組策略進行配置。當兩者的配置間發生沖突時,以組策略的配置信息優先。如果在Internet服務管理器中刪除了Internet打印,請記住不要再在本地或者域組策略中激活它。默認的組策略配置中,既不激活也不禁止Internet打印。在組策略中配置Internet打印的方法是:在MMC的組策略管理單元中,點擊"計算機配置",點擊"管理模板",點擊"打印機",最后點擊"基于Web的打印":


    點擊小圖放大

    設置IP地址或者DNS域名地址的訪問限制
    如果Web站點只對特殊IP地址的客戶服務,我們建議對Web站點執行IP地址限制的設置。如果設置是DNS域名信息,請注意,這會導致IIS執行DNS搜索工作,耗費一定的時間。

    確認可執行文件的安全性
    在訪問網站內容時,IIS經常要執行一些.DLL文件。DLL文件屬于可執行文件,可能會讀寫硬盤文件內容,所以最好確保其安全性。但是,如何判斷DLL文件的安全性,卻不是個簡單的事情。這里介紹一個叫做DumpBin程序,它可以判斷出可執行文件是否調用了某個API函數。比如說,我們使用下面的命令判斷文件MyISAPI.dll是否調用了RevertToSelf:
    dumpbin /imports MyISAPI.dll | find "RevertToSelf"
    命令執行后,如果屏幕上沒有任何輸出信息,就表明MyISAPI.dll沒有直接調用RevertToSelf。

    更新IIS服務器上的根權威認證機構發放的證書(Root CA Certificates)
    要完成更新工作,需要2個步驟:

    首先,添加一個我們信任的新根權威認證機構發放的證書,特別是通過Microsoft認證服務2.0創建的新根權威認證機構證書。
    然后,刪除所有不被我們信任的根權威認證機構發放的證書。一般情況下,不被信任的機構就是指我們還不認識的機構。

    所有被IIS使用的根權威認證機構證書都存儲在計算機中,我們可以按照下列步驟訪問它們:

    在"開始/運行"中輸入mmc,點擊"確定",啟動Microsoft管理控制臺,即MMC
    從"控制臺"菜單中選擇"添加/刪除管理單元",點擊"添加"
    選擇"證書",點擊"添加"
    點擊"計算機帳戶"選項
    點擊"下一步"
    選擇要訪問的機器
    點擊"完成"
    點擊"關閉",點擊"確定"
    擴展"證書"節點
    擴展"受信任的根證書頒發機構"
    選擇"證書"


    點擊小圖放大

    這時,在右邊窗口格中顯示出當前所有的受信任的根證書頒發機構發放證書的資料。我們可以根據實際情況,刪除不需要的證書。但是請格外注意,不要刪除Microsoft公司或Verisign公司的相關證書,因為它們被操作系統廣泛地使用。

    禁止或刪除不需要的COM組件
    對于大多數應用程序不需要的COM組件,我們就應該考慮將其刪除,比如說"文件系統對象"(File System Object)組件。請注意,如果刪除了"文件系統對象"組件,"目錄對象"(Dictionary object)組件也將被刪除。但是提醒一點,有些程序可能需要禁止的組件,比如說,Site服務器3.0就使用到"文件系統對象"組件。刪除"文件系統對象"組件的命令是: regsvr32 scrrun.dll /u。

    重點檢查ASP代碼中的<FORM>輸入內容和查詢輸入內容
    許多站點都使用來自用戶的輸入信息去調用其他代碼或者直接創建SQL命令。換言之,輸入內容被假設為格式正確和語法正確。但是我們千萬不能這么掉以輕心!許多攻擊者就是在輸入內容中填寫非法代碼從而巧妙偷窺服務器的內容,甚至造成數據的毀壞。因此,我們要特別重視檢查來自<FORM>的輸入內容或者查詢字符串信息,只有其符合安全要求,才能進一步傳遞給下一個程序進行處理。
    我們可以使用Jscript版本5和VBScript版本5的常規表達式功能檢查文本信息的合法性。來看看幾個例子。
    下面的代碼是除去字符串中所有非字母、非數字以及非_的字符:
    Set reg = New RegExp
    reg.Pattern = "\W+"
    strUnTainted = reg.Replace(strTainted,"")
    下面的代碼是除去|操作符后的所有文本:
    Set reg = New RegExp
    reg.Pattern = "^(.+)\|(.+)"Anycharacter from the start of
    ' the string to a | character.
    strUnTainted = reg.Replace(strTainted,"$1")

    另外,當使用"文件系統對象"組件打開或創建文件時,如果文件名取自用戶的輸入內容,那么很可能被攻擊者利用去試圖打開一個計算機的串口或者打印機設備。為了防止這個問題發生,我們可以使用下面的Jscript代碼除去非法文件名:
    var strOut = strIn.replace(/(AUX|PRN|NUL|COM\d|LPT\d)+\s*$/i,"");
    從以上幾個簡單的實例,我們可以看到腳本引擎版本5處理字符串的強大功能。微軟站點有關于腳本應用的詳細文檔與例程,地址如下:
    文檔:http://msdn.microsoft.com/scripting/default.htm
    例程:http://msdn.microsoft.com/workshop/languages/clinic/scripting051099.asp

    禁止父路徑(Parent Paths)表達法
    默認情況下,可以在函數中使用父路徑".."。但是為了安全考慮,我們應該禁止這個功能,步驟如下:

    在"Internet服務管理器"中右鍵點擊要處理服務器的"默認Web站點",從彈出菜單中選擇"屬性 "
    點擊"主目錄"選項卡
    點擊"配置"
    點擊"應用程序選項"選項卡
    去除"啟用父路徑"復選框

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>