我們將從入侵者入侵的各個環節來作出對應措施一步步的加固windows系統,一共歸於以下幾個方面:
1. 連接埠限制
2. 設定ACL許可權
3. 關閉服務或組件
4. 包過濾
5. 審計
我們現在開始從入侵者的第一步開始,對應的開始加固已有的windows系統:
1. 掃描
這是入侵者在剛開始要做的第一步,比如搜尋有漏洞的服務
對應措施:連接埠限制
以下所有規則,都需要選擇鏡像,否則會導致無法串連我們需要作的就是開啟服務所需要的連接埠.而將其他的連接埠一律屏蔽。
2. 下載資訊
這裡主要是通過URL SCAN.來過濾一些非法請求
對應措施:過濾相應包
我們通過安全URL SCAN並且設定urlscan.ini中的DenyExtensions欄位來阻止特定結尾的檔案的執行
3. 上傳檔案
入侵者通過這步上傳WEBSHELL、提權軟體、運行cmd指令等等
對應措施:取消相應服務和功能,設定ACL許可權
如果有條件可以不使用FSO的
通過 regsvr32 /u c:\windows\system32\scrrun.dll來登出掉相關的DLL,如果需要使用,那就為每個網站建立一個user使用者對每個網站相應的目錄,只給這個使用者讀、寫、執行許可權,給administrators全部許可權。安裝殺毒軟體,即時殺除上傳上來的惡意代碼,個人推薦MCAFEE或者卡巴斯基。如果使用MCAFEE.對WINDOWS目錄所有添加與修改檔案的行為進行阻止。
4. WebShell
入侵者上傳檔案後,需要利用WebShell來執行可執行程式,或者利用WebShell進行更加方便的檔案操作。
對應措施:取消相應服務和功能
一般WebShell用到以下組件
WScript.Network
WScript.Network.1
WScript.Shell
WScript.Shell.1
Shell.Application
Shell.Application.1
我們在註冊表中將以上索引值改名或刪除,同時需要注意按照這些索引值下的CLSID鍵的內容,從/HKEY_CLASSES_ROOT/CLSID下面對應的索引值刪除。
5. 執行SHELL
入侵者獲得shell來執行更多指令
對應措施:設定ACL許可權
Windows的命令列控制台位於\WINDOWS\SYSTEM32\CMD.EXE
我們將此檔案的ACL修改為某個特定系統管理員帳戶(比如administrator)擁有全部許可權。
其他使用者,包括system使用者、administrators組等等,一律無許可權訪問此檔案。
6. 利用已有使用者或添加使用者
入侵者通過利用修改已有使用者或者添加Windows正式使用者,向擷取管理員權限邁進。
對應措施:設定ACL許可權、修改使用者
將除管理員外所有使用者的終端存取權限去掉,限制CMD.EXE的存取權限,限制SQL SERVER內的XP_CMDSHELL
7. 登陸圖形終端
入侵者登陸TERMINAL SERVER或者RADMIN等等圖形終端,擷取許多圖形程式的運行許可權。由於WINDOWS系統下絕大部分應用程式都是GUI的,所以這步是每個入侵WINDOWS的入侵者都希望獲得的。
對應措施:連接埠限制
入侵者可能利用3389或者其他的木馬之類的擷取對於圖形介面的訪問。我們在第一步的連接埠限制中,對所有從內到外的訪問一律屏蔽也就是為了防止反彈木馬,所以在連接埠限制中,由本地訪問外部網路的連接埠越少越好。如果不是作為MAIL SERVER,可以不用加任何由內向外的連接埠,阻斷所有的反彈木馬。
8. 擦除腳印
入侵者在獲得了一台機器的完全管理員權限後,就是擦除腳印來隱藏自身。
對應措施:審計
首先我們要確定在windows日誌中開啟足夠的審計項目,如果審計項目不足,入侵者甚至都無需去刪除windows事件。其次我們可以用自己的cmd.exe以及net.exe來替換系統內建的將啟動並執行指令儲存下來,瞭解入侵者的行動。對於windows日誌,我們可以通過將日誌發送到遠程Log Service器的方式來保證記錄的完整性。evtsys工具(https://engineering.purdue.edu/ECN/Resources/Documents)提供將windows日誌轉換成syslog格式並且發送到遠程伺服器上的功能,使用此用具,並且在遠程伺服器上開放syslogd,如果遠程伺服器是windows系統,推薦使用kiwi syslog deamon。我們要達到的目的就是不讓入侵者掃描到主機弱點,即使掃描到了也不能上傳檔案,即使上傳檔案了不能操作其他目錄的檔案,即使操作了其他目錄的檔案也不能執行shell,即使執行了shell也不能添加使用者,即使添加使用者了也不能登陸圖形終端,即使登陸了圖形終端、擁有系統控制權,他的所作所為還是會被記錄下來。
額外措施:我們可以通過增加一些裝置和措施來進一步加強系統安全性。
1. 代理型防火牆,如ISA2004
代理型防火牆可以對進出的包進行內容過濾,設定對HTTP REQUEST內的request string或者form內容進行過濾,將SELECT、DROP、DELETE、INSERT等都過濾掉,因為這些關鍵詞在客戶提交的表單或者內容中是不可能出現的。過濾了以後可以說從根本杜絕了SQL 注入。
2. 用SNORT建立IDS
用另一台伺服器建立個SNORT,對於所有進出伺服器的包都進行分析和記錄,特別是FTP上傳的指令以及HTTP對ASP檔案的請求,可以特別關注一下。本文提到的部分軟體在提供下載的RAR中包含:
包括COM命令列執行記錄
URLSCAN 2.5以及配置好的設定檔
IPSEC匯出的連接埠規則
evtsys
一些註冊表加固的登錄機碼