windows主機安全設定原理篇

來源:互聯網
上載者:User
 
我們將從入侵者入侵的各個環節來作出對應措施
一步步的加固windows系統.
對於想直接瞭解操作具體步驟的讀者.
可以跳躍直接閱讀後面一個章節的[實踐篇].
加固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
一些註冊表加固的登錄機碼.
實踐篇
下面我用的例子.將是一台標準的虛擬機器主機.
系統:windows2003
服務:[IIS] [SERV-U] [IMAIL] [SQL SERVER 2000] [PHP] [MYSQL]
描述:為了示範,綁定了最多的服務.大家可以根據實際情況做篩減
1.WINDOWS本地安全性原則 連接埠限制
A.對於我們的例子來說.需要開通以下連接埠
外-〉本地 80
外-〉本地 20
外-〉本地 21
外-〉本地 PASV所用到的一些連接埠
外-〉本地 25
外-〉本地 110
外-〉本地 3389
然後按照具體情況.開啟SQL SERVER和MYSQL的連接埠
外-〉本地 1433
外-〉本地 3306
B.接著是開放從內部往外需要開放的連接埠
按照實際情況,如果無需郵件服務,則不要開啟以下兩條規則
本地-〉外 53 TCP,UDP
本地-〉外 25
按照具體情況.如果無需在伺服器上訪問網頁.盡量不要開以下連接埠
本地-〉外 80
C.除了明確允許的一律阻止.這個是安全規則的關鍵.
外-〉本地 所有協議 阻止
2.使用者帳號
a.將administrator改名,例子中改為root
b.取消所有除管理員root外所有使用者屬性中的 
遠端控制-〉啟用遠端控制 以及
終端服務組態檔-〉允許登陸到終端伺服器
c.將guest改名為administrator並且修改密碼
d.除了管理員root,IUSER以及IWAM以及ASPNET使用者外.禁用其他一切使用者.包括SQL DEBUG以及TERMINAL USER等等
3.目錄許可權
將所有盤符的許可權,全部改為只有
administrators組 全部許可權
system 全部許可權
將C盤的所有子目錄和子檔案繼承C盤的administrator(組或使用者)和SYSTEM所有許可權的兩個許可權
然後做如下修改
C:\Program Files\Common Files
開放Everyone 預設的讀取及運行,列出檔案目錄,讀取三個許可權
C:\WINDOWS\
開放Everyone 預設的讀取及運行,列出檔案目錄,讀取三個許可權
C:\WINDOWS\Temp
開放Everyone 修改,讀取及運行,列出檔案目錄,讀取,寫入許可權
現在WebShell就無法在系統目錄內寫入檔案了.
當然也可以使用更嚴格的許可權.
在WINDOWS下分別目錄設定許可權.
可是比較複雜.效果也並不明顯.
如果伺服器上需要運行.NET
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files
開放Everyone 修改,讀取及運行,列出檔案目錄,讀取,寫入許可權
4.IIS
在IIS 6下.應用程式擴充內的檔案類型對應ISAPI的類型已經去掉了IDQ,PRINT等等危險的指令碼類型,
在IIS 5下我們需要把除了ASP以及ASA以外所有類型刪除.
安裝URLSCAN
在[DenyExtensions]中
一般加入以下內容
.cer
.cdx
.mdb
.bat
.cmd
.com
.htw   
.ida   
.idq   
.htr   
.idc   
.shtm 
.shtml 
.stm   
.printer 
這樣入侵者就無法下載.mdb資料庫.這種方法比外面一些在檔案頭加入特殊字元的方法更加徹底.
因為即便檔案頭加入特殊字元.還是可以通過編碼構造出來的
5.WEB目錄許可權
作為虛擬機器主機.會有許多獨立客戶
比較保險的做法就是為每個客戶,建立一個windows使用者
然後在IIS的響應的網站項內
把IIS執行的匿名使用者.綁定成這個使用者
並且把他指向的目錄
許可權變更為
administrators 全部許可權
system 全部許可權
單獨建立的使用者 讀寫執行
如果伺服器上網站不多.並且有論壇
我們可以把每個論壇的上傳目錄
去掉此使用者的執行許可權.
只有讀寫權限
這樣入侵者即便繞過論壇檔案類型檢測上傳了webshell
也是無法啟動並執行.
6.MS SQL SERVER2000
使用系統帳戶登陸查詢分析器
運行以下指令碼
use master 
exec sp_dropextendedproc ’xp_cmdshell’ 
exec sp_dropextendedproc ’xp_dirtree’
exec sp_dropextendedproc ’xp_enumgroups’
exec sp_dropextendedproc ’xp_fixeddrives’
exec sp_dropextendedproc ’xp_loginconfig’
exec sp_dropextendedproc ’xp_enumerrorlogs’
exec sp_dropextendedproc ’xp_getfiledetails’
exec sp_dropextendedproc ’Sp_OACreate’ 
exec sp_dropextendedproc ’Sp_OADestroy’ 
exec sp_dropextendedproc ’Sp_OAGetErrorInfo’ 
exec sp_dropextendedproc ’Sp_OAGetProperty’ 
exec sp_dropextendedproc ’Sp_OAMethod’ 
exec sp_dropextendedproc ’Sp_OASetProperty’ 
exec sp_dropextendedproc ’Sp_OAStop’ 
exec sp_dropextendedproc ’Xp_regaddmultistring’ 
exec sp_dropextendedproc ’Xp_regdeletekey’ 
exec sp_dropextendedproc ’Xp_regdeletevalue’ 
exec sp_dropextendedproc ’Xp_regenumvalues’ 
exec sp_dropextendedproc ’Xp_regread’ 
exec sp_dropextendedproc ’Xp_regremovemultistring’ 
exec sp_dropextendedproc ’Xp_regwrite’ 
drop procedure sp_makewebtask
go
刪除所有危險的擴充.
7.修改CMD.EXE以及NET.EXE許可權
將兩個檔案的許可權.修改到特定管理員才能訪問,比如本例中.我們如下修改
cmd.exe   root使用者   所有許可權
net.exe   root使用者   所有許可權
net1.exe   root使用者   所有許可權
command.com   root使用者   所有許可權
這樣就能防止非法訪問.
還可以使用例子中提供的comlog程式
將com.exe改名_com.exe,然後替換com檔案.這樣可以記錄所有執行的命令列指令
8.備份
使用ntbackup軟體.備份系統狀態.
使用reg.exe 備份系統關鍵資料
如reg export HKLM\SOFTWARE\ODBC e:\backup\system\odbc.reg /y
來備份系統的ODBC
9.殺毒
這裡介紹MCAFEE 8i 中文企業版
因為這個版本對於國內的許多惡意代碼和木馬都能夠及時的更新.
比如已經能夠檢測到海陽頂端2006
而且能夠殺除IMAIL等SMTP軟體使用的隊列中MIME編碼的病毒檔案
而很多人喜歡安裝諾頓企業版.而諾頓企業版,對於WEBSHELL.基本都是沒有反應的.
而且無法對於MIME編碼的檔案進行殺毒.
在MCAFEE中.
我們還能夠加入規則.阻止在windows目錄建立和修改EXE.DLL檔案等
我們在軟體中加入對WEB目錄的殺毒計劃.
每天執行一次
並且開啟即時監控.
10.關閉無用的服務
我們一般關閉如下服務
Computer Browser
Help and Support
Messenger
Print Spooler
Remote Registry
TCP/IP NetBIOS Helper
如果伺服器不用作域控,我們也可以禁用
Workstation
11.取消危險組件
如果伺服器不需要FSO
regsvr32 /u c:\windows\system32\scrrun.dll
登出組件
使用regedit
將/HKEY_CLASSES_ROOT下的
WScript.Network
WScript.Network.1
WScript.Shell
WScript.Shell.1
Shell.Application
Shell.Application.1
索引值改名或刪除
將這些索引值下CLSID中包含的字串
如{72C24DD5-D70A-438B-8A42-98424B88AFB8}
到/HKEY_CLASSES_ROOT/CLSID下找到以這些字串命名的索引值
全部刪除
12.審計
本地安全性原則-〉本地策略-〉稽核原則
開啟以下內容
稽核原則更改     成功,失敗
審核系統事件     成功,失敗
審核帳戶登陸事件     成功,失敗
審核帳戶管理     成功,失敗
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.