windows 2000中的IIS網站安全構建指南
因此,為了保護SAM數據庫的安全,管理員可以使用這個工具將雜亂信息代碼轉移到軟盤上,并注意為這個軟盤制作多個備份,放置到一個非常安全的地方。如果這個軟盤丟失或損壞,就無法重新啟動服務器了,因為再沒有其它辦法可以對用戶賬戶和口令數據庫進行解密。
另外,我們還應該對SAM數據庫添加口令復雜性的要求,這是通過啟動“本地安全策略”工具并啟用其中的“密碼必須符合復雜性要求”來完成的:
5、確定Web站點的口令訪問策略
訪問Web 站點的不同內容可能需要不同的口令,考慮到相應的行為并設計好對策將極大地減少許多安全隱患。例如:服務器是只作為公共信息站點使用嗎?它允許不同權限的用戶訪問受保護的數據嗎?站點要求用戶向其提交數據嗎?......通常,我們可以對所有的Internet服務器都執行相同的基本安全配置,然后再根據具體服務類型,進一步做出特殊安全設置。比如:如果服務器只是為公司提供一個Web上的存在,那最好就只允許匿名訪問,這樣就避免了服務器與客戶之間的口令傳遞,并降低了攻擊者探測服務器口令的可能性。
6、消除空連接安全漏洞
在Win2K中存在一種可能性:攻擊者可以使用一個所謂的空帳號登錄到系統、建立一個空對話,從而獲取服務器上用戶和組帳號情況列表以及服務器上的所有共享資源列表。呵呵,空手套帳號啊!讓這個“空手”真正落空的方法是修改注冊表相關項目,方法分別是:
禁止空連接獲取帳號信息:修改的鍵值及取值是
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\LSA,REG_DWORD,1
注意:有些服務可能要使用空連接在網絡上完成與其它服務器和系統通信的任務,所以如果修改注冊表后發現這些服務工作不正常了,那就再修改回來吧。摸著石頭過河嗎!
禁止空連接獲取共享資源:修改的鍵值及取值是
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\RestrictNullSessAccess,REG_DWORD,1
當這個值設置為1時,空連接用戶將不能訪問任何共享;如果設置為0,那么空連接用戶就可以連接到所有對Everyone組共享的程序或打印機上。
注意:修改這個鍵值可能會影響空連接對Named Pipes(名字管道)的訪問。Named Pipes就是一個系統上的程序與另一個不同系統上的程序通訊的功能。在Win2K中設置了許多named pipes,例如Winreg以IPC機制允許在一個客戶機器上運行Regedit并訪問遠程服務器的注冊表文件,Netlogon通過一個named pipe使用RPC連接來進行登錄認證,SMB (Server Message Blocks)使用named pipes進行網絡上服務器之間的通訊。注冊表中有關于空連接可以使用的named pipes列表,鍵值如下:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\NullSessionPipes
我們可以根據需要對以上列表中的字符串進行去除,但同樣請注意:如果發現有些服務工作不正常,請再修改回來。
7、去除對其他操作系統的支持
Win2K可以很好地支持其他操作系統,允許例如OS/2和POSIX的應用程序向服務器發送請求以執行代碼。這種功能通常叫做Win2K的子系統。Win2K的子系統一般情況下不會用到,但卻是一個很大的安全漏洞,應該采取措施堵住它。關閉這個漏洞的最簡單方法是去掉這個子系統,使它們無法使用。放心,這不會給Win2K服務器或IIS帶來任何問題,因為它們是在Win32子系統中運行的。
禁止OS/2和POSIX要通過刪除相關文件和改寫相關注冊表鍵值來完成,步驟如下:
刪除“\%systemroot%\system32\os2”文件夾及其中所有內容。
刪除“\HKLM\Software\Microsoft\OS/2 Subsystem for NT”下面所有的子鍵。
刪除“\HKLM\System\CurrentControlSet\Control\Session Manager\Environment”中的值Os2LibPath。
清除“\HKLM\System\CurrentControlSet\Control\Session Manager\Subsystems”中Optional的內容,但是保留值Optional的名字。
刪除“\HKLM\System\CurrentControlSet\Control\Session Manager\SubSystems ”中的值Os/2 和Posix。
重新啟動。
8、合理調整頁面文件的設置
需要處理的另一個問題是頁面文件(page file)在系統上的存放位置。當應用程序或系統程序需要訪問物理RAM時,Win2K使用頁面文件作為應用程序代碼的臨時保存區。因此,硬盤驅動器上必須有足夠的空間供頁面文件使用,否則就會導致系統崩潰。避免出現這種情況的方法有:
在系統上盡可能多安裝RAM。可用的物理RAM越多,系統運行的效率越高。
將所有的操作系統文件放置在自己的分區。這個分區中應該只包含操作系統文件和一個至少相當于物理RAM大小的頁面文件。當系統遭遇一個STOP錯誤時,這個頁面文件允許系統創建一個crashdump文件。
至少在另外一個分區上創建一個頁面文件,其大小大約為物理RAM + 11 MB。如果可能的話,將這個頁面文件放置在一個單獨的物理驅動器上,這樣系統執行I/O操作就更加有效。
配置系統服務和生成日志文件及擴展數據的應用程序,使它們寫入的文件不在操作系統所在的驅動器上。
四、結 語
以上詳細論述了使用Win2K和IIS5構建安全Internet網站的Win2K操作系統安全配置指南部分,如果是嚴格按照這些步驟裝扮了Win2K,就可以說基本上做到了從“地面部分”全力堵截入侵者的攻擊。要做到從“空中部分”攔截入侵,請看“Win2K Internet服務器安全構建指南(IIS篇)”。