IIS安全檢查清單
下面是安全要點的簡要清單,在檢查這些安全要點之前需要確保IIS伺服器線上。在違反下面安全要點的情況下,管理員可能需要了解安全文檔中對已知的安全問題應該發生的安全危害的介紹。
一般性假設
1.域控制器上沒有IIS。
2.僅安裝需要的服務( FTP,WWW,SMTP,NNTP)傳送郵件不需要SMTP服務;可以使用cdosys.dll(一個Windows提供的COM組件)或者使用第三方的Web應用程式例如:blat.exe來傳送郵件。
3.從不使用跨伺服器的虛擬目錄。
4.底層的Windows作業系統是可以靠的。
5.僅系統管理員是本地管理員。
設計指南
1.網站絕不應該在系統驅動器上。
2.如果傳播的信息是敏感的需要安裝SSL,如果SSL已經啟用則請求SSL(通過訪問端口 80 的刪除能力)。
3.所有的FTP站點和需要的全球資訊網站點需要啟用對“stanford-only”的站點進行IP篩選。IPSec篩選器可用於實現這一目標。
4.虛擬目錄應盡少使用, 除非您需要跨驅動器否則不需要使用虛擬目錄。 如果需要跨驅動器,需要基於安全隱患重新考慮。
5.移除NTFS驅動器下所有可移除的寫入許可權。
6.不要讓其他人很容易地找到腳本和代碼。黑客通過這些代碼尋找漏洞,他們可以使用這些漏洞來控制伺服器.
下面是一些好的防範方法:
不要為您的Scripts目錄使用明顯的名稱,考慮重命名您的腳本的擴展名為不尋常的字元。 例如,將 myscript.asp 重命名為 myscript.dum。 這將需要在ISAPI 擴展名映射(MIME)增加一個映射.dum到特定的代碼處理器(在這種情況下是改變到“asp.dll”代碼處理器)。 這樣會使您的腳本難以找到。 順便說一下一種特殊情況,重命名所有的.asp為.html 不需要修改 ISAPI 擴展名映射。
考慮編譯所有的到DLL檔案中。這不僅保護了原始碼,也大大提高了性能。編譯過的代碼運行比原來的腳本將近快20倍。
Web 應用程式 (即腳本和執行檔) 只需要有限的許可權就能正常運行。 提供更多的許可權將會被黑客利用來下載檔案和分析您的代碼的漏洞,以及允許黑客下載你的代碼。 所需的最低許可權是:NTFS: 讀取,IIS:執行,IIS:不需要讀取。
7.小心使用 IIS 伺服器上的添加/刪除控制臺。 如果您打開 Windows 組件,Windows 會無意中重置所有 ISAPI 篩選器和擴展為默認值並可以重置其它事情。這是Microsoft的其中一個你需要小心的有問題的設計。
安裝和配置
1.刪除所有默認虛擬目錄 (帶有世界頂部的資料夾的圖示) 和應用程式根 (帶有綠球在框中的圖示)
刪除iisadmin
刪除iissamples
刪除msadc
刪除iishelp
刪除scripts
刪除printers
2.刪除所有默認內容
刪除%systemdirectory%\inetsrv\iisadmin
刪除%systemdirectory%\inetsrv\iisadmpwd
刪除inetpub\wwwroot (or \ftproot or \smtproot)
刪除inetpub\scripts
刪除inetpub\iissamples
刪除inetpub\adminscripts
刪除%systemroot%\help\iishelp\iis
刪除%systemroot%\web\printers
刪除%systemdrive%\program files\Common Files\system\msadc.只有使用Microsoft Access 資料庫的網站需要 msadc。
3.配置默認網站為極為安全設定(例如,需要SSL,僅集成Windows驗證,只可從一個IP訪問,NTFS許可權主目錄不能為空等) ,然後停止該網站。這樣的結果是破壞默認網站,80%黑客會盲目地攻擊,而不是您的真實網站。
4.配置所有與主機頭的DNS名稱相匹配的網站。 打開ISM,網站選項卡,點擊高級按鈕,選擇對話框 “ 全部未分配 ” (或特定的 IP) 然後點擊編輯按鈕,並指定了主機頭在適當的欄位。對HTTP和HTTPS進行同樣的操作。不配置默認網站的主機頭。這將把90 %的自動化黑客工具的工作轉到癱瘓掉的默認網站上。
5.主目錄的IIS許可權:啟用“讀取”和“記錄訪問”。禁用"寫入","索引資源","目錄瀏覽",“腳本資源訪問”(僅WebDAV使用此許可權)以及Frontpage Web許可權。執行許可權選擇“無”。對目錄包含腳本檔案的目錄啟用執行許可權。
6.禁用所有不必要的ISAPI篩選器,執行此操作打開ISM,ISAPI篩選器選項卡。
刪除 Frontpage ISAPI 篩選器 (或較早的 IIS 伺服器上的擴展)在不需要這些情況下。 如果需要 Frontpage ISAPI (擴展),設定它為唯讀。 較早的 IIS 伺服器上禁用 Frontpage 擴展使用以下命令:“ c \common\microsoft shared\web server extensions\40\bin\fpsrvadm –o uninstall –p all”。
摘要式身份驗證。 此身份驗證方法需要支持可逆加密的密碼,這是一個壞主意。 可逆加密的密碼在斯坦福 Windows 結構中不被支持。 刪除此篩選器。
HTTP 壓縮。 此篩選器允許 HTTP 流的壓縮。 這是一個很好的功能,但可能會導致安全性降低。
SSL。 不大可能您不需要 SSL 的支持,但如果你真不需要它請刪除它。
7.刪除與 ISAPI 篩選器禁用相關聯的 DLL 檔案。 Frontpage: fpexdll.dll,摘要: md5filt.dll,壓縮: compfilt.dll,SSL: Sspifilt.dll。
8.(如果可能) 取消映射下列擴展名:.asa、.asp、.bat、.cdx、.cer、.htr、.htw、.ida、.idc、.idq、.printer、.shtm、.shtml、.stm 在 ISM,主目錄選項卡,並選擇配置按鈕。
9.禁用“啟用父路徑”設定。 在 ISM,主目錄選項卡,點擊 配置按鈕,打開應用程式選項選項卡,取消選中複選框。 這樣可以防止不知道目錄的基礎結構情況下惡意的 Web目錄遍歷。 Web 開發人員不能使用像路徑..\..\Default.htm,必須使用完全合格的路徑。
補丁級別
1.套用 Service Pack 和修補程式。可以使用 UpdateExpert,Microsoft ’s HfCheck 工具。
2.安裝高加密包 (附帶 Windows 2000 SP 2) ,可以使用128 位加密。
身份驗證模式
1.在網站層級、 虛擬目錄層級、 目錄層級 等所有地方禁用基本身份驗證。
2.在任何地方禁用摘要式身份驗證。
3.IUSR & IWAM 帳戶不應是域用戶,也不應是Guests用戶。 如果不需要匿名訪問則刪除這些帳戶。
4.如果web 數據是 ultra-sensitive(超靈敏)數據,考慮將伺服器放置在域之外。
授權更改
1.啟用 IIS 審計,變更為W3號擴展日誌記錄,並檢查信息被正確記錄。 (例如:需要用戶名嗎?) 考慮啟用下列項目: 日期和時間,客戶端的IP位址,伺服器的IP位址,伺服器連線埠,用戶名, 用於訪問網站的HTTP方法,URI 尾,URI 查詢,請求的狀態。
2.設定只允許系統和本地管理員能訪問IIS日誌。
3.刪除"hklm\software"的非管理員帳戶的寫入許可權 。 管理員和系統帳戶:完全控制,所有人: 讀取或執行。
4.限制 系統上所有可執行程式的NTFS許可權。 NTFS 許可權:管理員和系統帳戶:完全控制、 用戶: 讀取或執行。 給 IUSR 帳戶謹慎執行許可權。
5.限制任何腳本編譯器如Perl的許可權 。 NTFS的 許可權 :管理員及系統:完全控制,所有人:讀/執行。給 IUSR 帳戶謹慎執行許可權。
6.確保所有人只有隻讀許可權:
Web root
%systemroot%
%systemroot%\system32
%systemroot%\system32\inetsrv
%systemroot%\system32\inetsrv\asp
%systemroot%\program files\common files\
原文:http://windows.stanford.edu/docs/IISsecchecklist.htm
翻譯:http://webutm.blogspot.com/
官網:http://www.iisutm.com