1. 程式人生 > >Windows服務器安全配置指南

Windows服務器安全配置指南

cmd 利用 屬性 -s 操作系統 nmp ase redirect sql

1)、系統安全基本設置

2)、關閉不需要的服務

Computer Browser:維護網絡計算機更新,禁用  

Distributed File System: 局域網管理共享文件,不需要禁用  

Distributed linktracking client:用於局域網更新連接信息,不需要禁用  

Error reporting service:禁止發送錯誤報告  

Microsoft Serch:提供快速的單詞搜索,不需要可禁用  

NTLMSecuritysupportprovide:telnet服務和Microsoft Serch用的,不需要禁用  

PrintSpooler:如果沒有打印機可禁用  

Remote Registry:禁止遠程修改註冊表  

Remote Desktop Help Session Manager:禁止遠程協助 其他服務有待核查

3)、設置和管理賬戶

1、將Guest賬戶禁用並更改名稱和描述,然後輸入一個復雜的密碼

2、系統管理員賬戶最好少建,更改默認的管理員帳戶名(Administrator)和描述,密碼最好采用數字加大小寫字母加數字的上檔鍵組合,長度最好不少於10位

3、新建一個名為Administrator的陷阱帳號,為其設置最小的權限,然後隨便輸入組合的最好不低於20位的密碼

4、計算機配置-Windows設置-安全設置-賬戶策略-賬戶鎖定策略,將賬戶設為“三次登陸無效 時間為30分鐘

5、在安全設置-本地策略-安全選項中將“不顯示上次的用戶名”設為啟用

6、 在安全設置-本地策略-用戶權利分配中將“從網絡訪問此計算機”中只保留Internet來賓賬戶、啟動IIS進程賬戶,Aspnet賬戶

7、創建一個User賬戶,運行系統,如果要運行特權命令使用Runas命令。

4)、打開相應的審核策略

審核策略更改:成功

審核登錄事件:成功,失敗

審核對象訪問:失敗

審核對象追蹤:成功,失敗

審核目錄服務訪問:失敗

審核特權使用:失敗

審核系統事件:成功,失敗

審核賬戶登錄事件:成功,失敗

審核賬戶管理:成功,失敗

5)、 其它安全相關設置

1、禁止CD、D、ADMIN$一類的缺省共享  

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceslanmanserverparameters,在右邊的 窗口中新建Dword值,名稱設為AutoShareServer值設為0

2、解除NetBios與TCP/IP協議的綁定 

右擊網上鄰居-屬性-右擊本地連接-屬性-雙擊Internet協議-高級-Wins-禁用TCP/IP上的 NETBIOS

3、隱藏重要文件/目錄  

可以修改註冊表實現完全隱藏: “HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrent-VersionExplorerAdvancedFol derHi-ddenSHOWALL”,鼠標右擊“CheckedValue”,選擇修改,把數值由1改為0

4、防止SYN洪水攻擊   

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 新建DWORD 值,名為SynAttackProtect,值為2

5、 禁止響應ICMP路由通告報文

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfacesinterface 新建DWORD值,名為PerformRouterDiscovery 值為0

6. 防止ICMP重定向報文的攻擊

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 將EnableICMPRedirects 值設為0

7、 不支持IGMP協議

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 新建DWORD 值,名為IGMPLevel 值為0

8、禁用DCOM:運行中輸入 Dcomcnfg.exe。 回車, 單擊“控制臺根節點”下的“組件服務”。 打開“計算機”子 文件夾。  

對於本地計算機,請以右鍵單擊“我的電腦”,然後選擇“屬 性”。選擇“默認屬性”選項卡。清除“在這臺計算機上啟用分布式 COM”復選框。

9、終端服務的默認端口為3389,可考慮修改為別的端口。

修改方法為: 服務器端:打開註冊表,在“HKLM\SYSTEM\Current ControlSet\Control\Terminal Server\Win Stations” 處找到類似RDP-TCP的子鍵,修改PortNumber值。 客戶端:按正常步驟建一個客戶端連接,選中這個連接,在“文件”菜單中選擇導出,在指定位置會 生成一個後綴為.cns的文件。打開該文件,修改“Server Port”值為與服務器端的PortNumber對應的 值。然後再導入該文件(方法:菜單→文件→導入),這樣客戶端就修改了端口。

6)、配置 IIS 服務  

1、不使用默認的Web站點,如果使用也要將 將IIS目錄與系統磁盤分開。  

2、刪除IIS默認創建的Inetpub目錄(在安裝系統的盤上)。  

3、刪除系統盤下的虛擬目錄,如:_vti_bin、IISSamples、Scripts、IIShelp、IISAdmin、IIShelp、 MSADC。  

4、刪除不必要的IIS擴展名映射。  右鍵單擊“默認Web站點→屬性→主目錄→配置”,打開應用程序窗口,去掉不必要的應用程序映 射。主要為.shtml, .shtm, .stm   

5、更改IIS日誌的路徑 右鍵單擊“默認Web站點→屬性-網站-在啟用日誌記錄下點擊屬性  

6、如果使用的是2000可以使用iislockdown來保護IIS,在2003運行的IE6.0的版本不需要。

7、使用UrlScan   

UrlScan是一個ISAPI篩選器,它對傳入的HTTP數據包進行分析並可以拒絕任何可疑的通信量。 目前最新的版本是2.5,如果是2000Server需要先安裝1.0或2.0的版本。  如果沒有特殊的要求采用UrlScan默認配置就可以了。  但如果你在服務器運行ASP.NET程序,並要進行調試你需打開要 %WINDIR%System32InetsrvURLscan,文件夾中的URLScan.ini 文件,然後在UserAllowVerbs節添 加debug謂詞,註意此節是區分大小寫的。  如果你的網頁是.asp網頁你需要在DenyExtensions刪除.asp相關的內容。  如果你的網頁使用了非ASCII代碼,你需要在Option節中將AllowHighBitCharacters的值設為1   在對URLScan.ini 文件做了更改後,你需要重啟IIS服務才能生效,快速方法運行中輸入iisreset   如果你在配置後出現什麽問題,你可以通過添加/刪除程序刪除UrlScan。  

8、利用WIS (Web Injection Scanner)工具對整個網站進行SQL Injection 脆弱性掃描.

7)、配置Sql服務器  

1、System Administrators 角色最好不要超過兩個  

3、不要使用Sa賬戶,為其配置一個超級復雜的密碼  

4、刪除以下的擴展存儲過程格式為:  

use master   sp_dropextendedproc ‘擴展存儲過程名‘   

xp_cmdshell:是進入操作系統的最佳捷徑,刪除  訪問註冊表的存儲過程,

刪除  

Xp_regaddmultistring  Xp_regdeletekey  Xp_regdeletevalue  Xp_regenumvalues   Xp_regread      Xp_regwrite    Xp_regremovemultistring   

OLE自動存儲過程,不需要刪除  

Sp_OACreate   Sp_OADestroy    Sp_OAGetErrorInfo  Sp_OAGetProperty   Sp_OAMethod  Sp_OASetProperty  Sp_OAStop

5、隱藏 SQL Server、更改默認的1433端口  

右擊實例選屬性-常規-網絡配置中選擇TCP/IP協議的屬性,選擇隱藏 SQL Server 實例,並改原默 認的1433端口。

8)、修改系統日誌保存地址 默認位置為 應用程序日誌、安全日誌、系統日誌、DNS日誌默認位置:%systemroot%\system32\config,默認 文件大小512KB,管理員都會改變這個默認大小。

安全日誌文件:%systemroot%\system32\config\SecEvent.EVT 系統日誌文件:%systemroot%\system32\config\SysEvent.EVT 應用程序日誌文件:%systemroot%\system32\config\AppEvent.EVT Internet信息服務FTP日誌默認位置:%systemroot%\system32\logfiles\msftpsvc1\,默認每天一個日 誌 Internet信息服務WWW日誌默認位置:%systemroot%\system32\logfiles\w3svc1\,默認每天一個日 誌 Scheduler(任務計劃)服務日誌默認位置:%systemroot%\schedlgu.txt 應用程序日誌,安全日誌,系統日誌,DNS服務器日誌,它們這些LOG文件在註冊表中的: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog Schedluler(任務計劃)服務日誌在註冊表中 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SchedulingAgent SQL 刪掉或改名xplog70.dll [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters] "AutoShareServer"=dword:00000000 "AutoShareWks"=dword:00000000 // AutoShareWks 對pro版本 // AutoShareServer 對server版本 // 0

禁止管理共享admin,c,c,d[HKEYLOCALMACHINE\System\CurrentControlSet\Control\LSA]"restrictanonymous"=dword:00000001//0x1//0x2IPC之類默認共享[HKEYLOCALMACHINE\System\CurrentControlSet\Control\LSA]"restrictanonymous"=dword:00000001//0x1匿名用戶無法列舉本機用戶列表//0x2匿名用戶無法連接本機IPC共享(可能sql server不能夠啟動

9)、本地安全策略

1.只開放服務需要的端口與協議。 具體方法為:按順序打開“網上鄰居→屬性→本地連接→屬性→Internet 協議→屬性→高級→選項→ TCP/IP篩選→屬性”,添加需要的TCP、UDP端口以及IP協議即可。根據服務開設口,常用的TCP 口有:80口用於Web服務;21用於FTP服務;25口用於SMTP;23口用於Telnet服務;110口 用於POP3。常用的UDP端口有:53口-DNS域名解析服務;161口-snmp簡單的網絡管理協議。 8000、4000用於OICQ,服務器用8000來接收信息,客戶端用4000發送信息。 封TCP端口: 21(FTP,換FTP端口)23(TELNET),53(DNS),135,136,137,138,139,443,445,1028,1433,3389 可封TCP端口:1080,3128,6588,8080(以上為代理端口).25(SMTP),161(SNMP),67(引導) 封UDP端口:1434(這個就不用說了吧) 封所有ICMP,即封PING 以上是最常被掃的端口,有別的同樣也封,當然因為80是做WEB用的

2、禁止建立空連接 默認情況下,任何用戶可通過空連接連上服務器,枚舉賬號並猜測密碼。空連接用的端口是139, 通過空連接,可以復制文件到遠端服務器,計劃執行一個任務,這就是一個漏洞。可以通過以下兩 種方法禁止建立空連接:

(1) 修改註冊表中 Local_Machine\System\ CurrentControlSet\Control\LSA-RestrictAnonymous 的值為1。

(2) 修改Windows 2000的本地安全策略。設置“本地安全策略→本地策略→選項”中的 RestrictAnonymous(匿名連接的額外限制)為“不容許枚舉SAM賬號和共享”。 首先,Windows 2000的默認安裝允許任何用戶通過空連接得到系統所有賬號和共享列表,這本來 是為了方便局域網用戶共享資源和文件的,但是,同時任何一個遠程用戶也可以通過同樣的方法得 到您的用戶列表,並可能使用暴力法破解用戶密碼給整個網絡帶來破壞。很多人都只知道更改註冊 表Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous = 1來禁止空用戶連接, 實際上Windows 2000的本地安全策略裏(如果是域服務器就是在域服務器安全和域安全策略裏) 就有RestrictAnonymous選項,其中有三個值:“0”這個值是系統默認的,沒有任何限制,遠程用戶 可以知道您機器上所有的賬號、組信息、共享目錄、網絡傳輸列表(NetServerTransportEnum)等;“1” 這個值是只允許非NULL用戶存取SAM賬號信息和共享信息;“2”這個值只有Windows 2000才支 持,需要註意的是,如果使用了這個值,就不能再共享資源了,所以還是推薦把數值設為“1”比較 好。

10)、防止asp木馬

1、基於FileSystemObject組件的asp木馬

cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用 regsvr32 scrrun.dll /u /s //刪除

2.基於shell.application組件的asp木馬

cacls %systemroot%\system32\shell32.dll /e /d guests //禁止guests使用 regsvr32 shell32.dll /u /s //刪除

3.將圖片文件夾的權限設置為不允許運行。

4.如果網站中不存在有asp的話,禁用asp

11)、防止SQL註入

1.盡量使用參數化語句

2.無法使用參數化的SQL使用過濾。

3.網站設置為不顯示詳細錯誤信息,頁面出錯時一律跳轉到錯誤頁面。

4.不要使用sa用戶連接數據庫

5、新建一個public權限數據庫用戶,並用這個用戶訪問數據庫 6、[角色]去掉角色public對sysobjects與syscolumns對象的select訪問權限

最後強調一下,以上設置可能會影響到有些應用服務,例如導至不能連接上遠程服務器,

因此強烈建議,以上設置首先在本地機器或虛擬機(VMware Workstation)上做好設置,確定沒事之後然後再在服務器上做

Windows服務器安全配置指南