阿江的Windows 2000服務器安全設置教程
成都創(chuàng)新互聯是一家專業(yè)提供寶山企業(yè)網站建設,專注與成都做網站、成都網站制作、成都外貿網站建設、H5建站、小程序制作等業(yè)務。10年已為寶山眾多企業(yè)、政府機構等服務。創(chuàng)新互聯專業(yè)網站建設公司優(yōu)惠進行中。
前言
其實,在服務器的安全設置方面,我雖然有一些經驗,但是還談不上有研究,所以我寫這篇文章的時候心里很不踏實,總害怕說錯了會誤了別人的事。
本文更側重于防止ASP漏洞攻擊,所以服務器防黑等方面的講解可能略嫌少了點。
基本的服務器安全設置
安裝補丁
安裝好操作系統(tǒng)之后,最好能在托管之前就完成補丁的安裝,配置好網絡后,如果是2000則確定安裝上了SP4,如果是2003,則最好安裝上SP1,然后點擊開始→Windows Update,安裝所有的關鍵更新。
安裝殺毒軟件
雖然殺毒軟件有時候不能解決問題,但是殺毒軟件避免了很多問題。我一直在用諾頓2004,據說2005可以殺木馬,不過我沒試過。還有人用瑞星,瑞星是確定可以殺木馬的。更多的人說卡巴司機好,不過我沒用過。
不要指望殺毒軟件殺掉所有的木馬,因為ASP木馬的特征是可以通過一定手段來避開殺毒軟件的查殺。
設置端口保護和防火墻、刪除默認共享
都是服務器防黑的措施,即使你的服務器上沒有IIS,這些安全措施都最好做上。這是阿江的盲區(qū),大概知道屏蔽端口用本地安全策略,不過這方面的東西網上攻略很多,大家可以擻出來看看,晚些時候我或者會復制一些到我的網站上。
權限設置
阿江感覺這是防止ASP漏洞攻擊的關鍵所在,優(yōu)秀的權限設置可以將危害減少在一個IIS站點甚至一個虛擬目錄里。我這里講一下原理和設置思路,聰明的朋友應該看完這個就能解決問題了。
權限設置的原理
WINDOWS用戶,在WINNT系統(tǒng)中大多數時候把權限按用戶(組)來劃分。在【開始→程序→管理工具→計算機管理→本地用戶和組】管理系統(tǒng)用戶和用戶組。
NTFS權限設置,請記住分區(qū)的時候把所有的硬盤都分為NTFS分區(qū),然后我們可以確定每個分區(qū)對每個用戶開放的權限。【文件(夾)上右鍵→屬性→安全】在這里管理NTFS文件(夾)權限。
IIS匿名用戶,每個IIS站點或者虛擬目錄,都可以設置一個匿名訪問用戶(現在暫且把它叫“IIS匿名用戶),當用戶訪問你的網站的.ASP文件的時候,這個.ASP文件所具有的權限,就是這個“IIS匿名用戶所具有的權限。
權限設置的思路
要為每個獨立的要保護的個體(比如一個網站或者一個虛擬目錄)創(chuàng)建一個系統(tǒng)用戶,讓這個站點在系統(tǒng)中具有惟一的可以設置權限的身份。
在IIS的【站點屬性或者虛擬目錄屬性→目錄安全性→匿名訪問和驗證控制→編輯→匿名訪問→編輯】填寫剛剛創(chuàng)建的那個用戶名。
設置所有的分區(qū)禁止這個用戶訪問,而剛才這個站點的主目錄對應的那個文件夾設置允許這個用戶訪問(要去掉繼承父權限,并且要加上超管組和SYSTEM組)。
這樣設置了之后,這個站點里的ASP程序就只有當前這個文件夾的權限了,從探針上看,所有的硬盤都是紅叉叉。
我的設置方法
我是先創(chuàng)建一個用戶組,以后所有的站點的用戶都建在這個組里,然后設置這個組在各個分區(qū)沒病權限。然后再設置各個IIS用戶在各在的文件夾里的權限。
因為比較多,所以我很不想寫,其實知道了上面的原理,大多數人都應該懂了,除非不知道怎么添加系統(tǒng)用戶和組,不知道怎么設置文件夾權限,不知道IIS站點屬性在那里。真的有那樣的人,你也不要著急,要沉住氣慢慢來,具體的方法其實自己也能摸索出來的,我就是這樣。當然,如果我有空,我會寫我的具體設置方法,很傲能還會配上圖片。
改名或卸載不安全組件
不安全組件不驚人
我的在阿江探針1.9里加入了不安全組件檢測功能(其實這是參考7i24的代碼寫的,只是把界面改的友好了一點,檢測方法和他是基本一樣的),這個功能讓很多站長吃驚不小,因為他發(fā)現他的服務器支持很多不安全組件。
其實,只要做好了上面的權限設置,那么FSO、XML、strem都不再是不安全組件了,因為他們都沒有跨出自己的文件夾或者站點的權限。那個歡樂時光更不用怕,有殺毒軟件在還怕什么時光啊。
最危險的組件是WSH和Shell,因為它可以運行你硬盤里的EXE等程序,比如它可以運行提升程序來提升SERV-U權限甚至用SERVU來運行更高權限的系統(tǒng)程序。
卸載最不安全的組件
最簡單的辦法是直接卸載后刪除相應的程序文件。將下面的代碼保存為一個.BAT文件,
regsvr32/u C:WINNTSystem32wshom.ocx
del C:WINNTSystem32wshom.ocx
regsvr32/u C:WINNTsystem32shell32.dll
del C:WINNTsystem32shell32.dll
然后運行一下,WScript.Shell, Shell.application, WScript.Network就會被卸載了??赡軙崾緹o法刪除文件,不用管它,重啟一下服務器,你會發(fā)現這三個都提示“×安全了。
改名不安全組件
需要注意的是組件的名稱和Clsid都要改,并且要改徹底了。下面以Shell.application為例來介紹方法。
打開注冊表編輯器【開始→運行→regedit回車】,然后【編輯→查找→填寫Shell.application→查找下一個】,用這個方法能找到兩個注冊表項:“{13709620-C279-11CE-A49E-444553540000}和“Shell.application。為了確保萬無一失,把這兩個注冊表項導出來,保存為 .reg 文件。
比如我們想做這樣的更改
13709620-C279-11CE-A49E-444553540000 改名為 13709620-C279-11CE-A49E-444553540001
Shell.application 改名為 Shell.application_ajiang
那么,就把剛才導出的.reg文件里的內容按上面的對應關系替換掉,然后把修改好的.reg文件導入到注冊表中(雙擊即可),導入了改名后的注冊表項之后,別忘記了刪除原有的`那兩個項目。這里需要注意一點,Clsid中只能是十個數字和ABCDEF六個字母。
下面是我修改后的代碼(兩個文件我合到一起了):
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}]
@="Shell Automation Service"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}InProcServer32]
@="C:WINNTsystem32shell32.dll"
"ThreadingModel"="Apartment"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}ProgID]
@="Shell.Application_ajiang.1"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}TypeLib]
@="{50a7e9b0-70ef-11d1-b75a-00a0c90564fe}"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}Version]
@="1.1"
[HKEY_CLASSES_ROOTCLSID{13709620-C279-11CE-A49E-444553540001}VersionIndependentProgID]
@="Shell.Application_ajiang"
[HKEY_CLASSES_ROOTShell.Application_ajiang]
@="Shell Automation Service"
[HKEY_CLASSES_ROOTShell.Application_ajiangCLSID]
@="{13709620-C279-11CE-A49E-444553540001}"
[HKEY_CLASSES_ROOTShell.Application_ajiangCurVer]
@="Shell.Application_ajiang.1"
你可以把這個保存為一個.reg文件運行試一下,但是可別就此了事,因為萬一黑客也看了我的這篇文章,他會試驗我改出來的這個名字的。
防止列出用戶組和系統(tǒng)進程
我在阿江ASP探針1.9中結合7i24的方法利用getobject("WINNT")獲得了系統(tǒng)用戶和系統(tǒng)進程的列表,這個列表可能會被黑客利用,我們應當隱藏起來,方法是:
【開始→程序→管理工具→服務】,找到Workstation,停止它,禁用它。
防止Serv-U權限提升
其實,注銷了Shell組件之后,侵入者運行提升工具的可能性就很小了,但是prel等別的腳本語言也有shell能力,為防萬一,還是設置一下為好。
用Ultraedit打開ServUDaemon.exe查找Ascii:LocalAdministrator,和#l@$ak#.lk;0@P,修改成等長度的其它字符就可以了,ServUAdmin.exe也一樣處理。
另外注意設置Serv-U所在的文件夾的權限,不要讓IIS匿名用戶有讀取的權限,否則人家下走你修改過的文件,照樣可以分析出你的管理員名和密碼。
利用ASP漏洞攻擊的常見方法及防范
一般情況下,黑客總是瞄準論壇等程序,因為這些程序都有上傳功能,他們很容易的就可以上傳ASP木馬,即使設置了權限,木馬也可以控制當前站點的所有文件了。另外,有了木馬就然后用木馬上傳提升工具來獲得更高的權限,我們關閉shell組件的目的很大程度上就是為了防止攻擊者運行提升工具。
如果論壇管理員關閉了上傳功能,則黑客會想辦法獲得超管密碼,比如,如果你用動網論壇并且數據庫忘記了改名,人家就可以直接下載你的數據庫了,然后距離找到論壇管理員密碼就不遠了。
作為管理員,我們首先要檢查我們的ASP程序,做好必要的設置,防止網站被黑客進入。另外就是防止攻擊者使用一個被黑的網站來控制整個服務器,因為如果你的服務器上還為朋友開了站點,你可能無法確定你的朋友會把他上傳的論壇做好安全設置。這就用到了前面所說的那一大堆東西,做了那些權限設置和防提升之后,黑客就算是進入了一個站點,也無法破壞這個網站以外的東西。
安全組 是一個ECS的重要安全設置,但對小白用戶來說卻很難理解其中晦澀難懂的專業(yè)術語。websoft9在此介紹個人的理解:
阿里云官方解釋 :安全組是一種虛擬防火墻,用于設置單臺或多臺云服務器的網絡訪問控制,它是重要的網絡安全隔離手段,用于在云端劃分安全域。每個實例至少屬于一個安全組,在創(chuàng)建的時候就需要指定。
注解:簡單理解:服務器什么端口(服務)可以被訪問,什么端口可以被封鎖
例子:服務器80端口是用來提供http服務,如果服務器部署了網站,而沒有開放80端口,這個網站肯定訪問不了,http: //ip 是打不開的。
這是很常見的問題,用戶第一感覺就是購買的服務器有問題或購買的鏡像用不了。
遠程連接(SSH)Linux 實例和遠程桌面連接 Windows 實例可能會失敗。
遠程 ping 該安全組下的 ECS 實例的公網 IP 和內網 IP 可能會失敗。
HTTP 訪問該安全組下的 ECS 實例暴漏的 Web 服務可能會失敗。
該安全組下 ECS 實例可能無法通過內網訪問同地域(或者同 VPC)下的其他安全組下的 ECS 實例。
該安全組下 ECS 實例可能無法通過內網訪問同地域下(或者同 VPC)的其他云服務。
該安全組下 ECS 實例可能無法訪問 Internet 服務。
當用戶購買一個新的服務器的時候,阿里云會提醒選擇安全組,對于一部分入門用戶來說,第一感覺就是選擇一個等級比較高的安全組,這樣更為保險。實際上,等級越高,開放的端口越少。甚至連80端口、21端口都被封鎖了,導致服務器ping不通、http打不開。這樣最常見的訪問都無法進行,用戶第一感覺就是購買的服務器有問題或購買的鏡像用不了。
在Websoft9客服工作中統(tǒng)計發(fā)現,96%的用戶瀏覽器http://公網IP 打不開首頁,都是因為安全組的設置關閉了80端口所導致。
第一,找到對應的實例,通過安全組配置選項進入設置。
第二,點擊“配置規(guī)則”,進入安全組規(guī)則設置。
Web服務器攻擊常利用Web服務器軟件和配置中的漏洞,web服務器安全也是我們現在很多人關注的一點,那么你知道web服務器安全設置嗎?下面是我整理的一些關于web服務器安全設置的相關資料,供你參考。
web服務器安全設置一、IIS的相關設置
刪除默認建立的站點的虛擬目錄,停止默認web站點,刪除對應的文件目錄c:inetpub,配置所有站點的公共設置,設置好相關的連接數限制, 帶寬設置以及性能設置等其他設置。配置應用程序映射,刪除所有不必要的應用程序擴展,只保留asp,php,cgi,pl,aspx應用程序擴展。對于php和cgi,推薦使用isapi方式解析,用exe解析對安全和性能有所影響。用戶程序調試設置發(fā)送文本錯誤信息給客戶。
對于數據庫,盡量采用mdb后綴,不需要更改為asp,可在IIS中設置一個mdb的擴展映射,將這個映射使用一個無關的dll文件如C:WINNTsystem32inetsrvssinc.dll來防止數據庫被下載。設置IIS的日志保存目錄,調整日志記錄信息。設置為發(fā)送文本錯誤信息。修改403錯誤頁面,將其轉向到其他頁,可防止一些掃描器的探測。另外為隱藏系統(tǒng)信息,防止telnet到80端口所泄露的系統(tǒng)版本信息可修改IIS的banner信息,可以使用winhex手工修改或者使用相關軟件如banneredit修改。
對于用戶站點所在的目錄,在此說明一下,用戶的FTP根目錄下對應三個文件佳,wwwroot,database,logfiles,分別存放站點文件,數據庫備份和該站點的日志。如果一旦發(fā)生入侵事件可對該用戶站點所在目錄設置具體的權限,圖片所在的目錄只給予列目錄的權限,程序所在目錄如果不需要生成文件(如生成html的程序)不給予寫入權限。因為是虛擬主機平常對腳本安全沒辦法做到細致入微的地步。
方法
用戶從腳本提升權限:
web服務器安全設置二、ASP的安全設置
設置過權限和服務之后,防范asp木馬還需要做以下工作,在cmd窗口運行以下命令:
regsvr32/u C:\WINNT\System32\wshom.ocx
del C:\WINNT\System32\wshom.ocx
regsvr32/u C:\WINNT\system32\shell32.dll
del C:\WINNT\system32\shell32.dll
即可將WScript.Shell, Shell.application, WScript.Network組件卸載,可有效防止asp木馬通過wscript或shell.application執(zhí)行命令以及使用木馬查看一些系統(tǒng)敏感信息。另法:可取消以上文件的users用戶的權限,重新啟動IIS即可生效。但不推薦該方法。
另外,對于FSO由于用戶程序需要使用,服務器上可以不注銷掉該組件,這里只提一下FSO的防范,但并不需要在自動開通空間的虛擬商服務器上使用,只適合于手工開通的站點。可以針對需要FSO和不需要FSO的站點設置兩個組,對于需要FSO的用戶組給予c:winntsystem32scrrun.dll文件的執(zhí)行權限,不需要的不給權限。重新啟動服務器即可生效。
對于這樣的設置結合上面的權限設置,你會發(fā)現海陽木馬已經在這里失去了作用!
web服務器安全設置三、PHP的安全設置
默認安裝的php需要有以下幾個注意的問題:
C:\winnt\php.ini只給予users讀權限即可。在php.ini里需要做如下設置:
Safe_mode=on
register_globals = Off
allow_url_fopen = Off
display_errors = Off
magic_quotes_gpc = On [默認是on,但需檢查一遍]
open_basedir =web目錄
disable_functions =passthru,exec,shell_exec,system,phpinfo,get_cfg_var,popen,chmod
默認設置com.allow_dcom = true修改為false[修改前要取消掉前面的;]
web服務器安全設置四、MySQL安全設置
如果服務器上啟用MySQL數據庫,MySQL數據庫需要注意的安全設置為:
刪除mysql中的所有默認用戶,只保留本地root帳戶,為root用戶加上一個復雜的密碼。賦予普通用戶updatedeletealertcreatedrop權限的時候,并限定到特定的數據庫,尤其要避免普通客戶擁有對mysql數據庫操作的權限。檢查mysql.user表,取消不必要用戶的shutdown_priv,reload_priv,process_priv和File_priv權限,這些權限可能泄漏更多的服務器信息包括非mysql的 其它 信息出去??梢詾閙ysql設置一個啟動用戶,該用戶只對mysql目錄有權限。設置安裝目錄的data數據庫的權限(此目錄存放了mysql數據庫的數據信息)。對于mysql安裝目錄給users加上讀取、列目錄和執(zhí)行權限。
Serv-u安全問題:
安裝程序盡量采用最新版本,避免采用默認安裝目錄,設置好serv-u目錄所在的權限,設置一個復雜的管理員密碼。修改serv-u的banner信息,設置被動模式端口范圍(4001—4003)在本地服務器中設置中做好相關安全設置:包括檢查匿名密碼,禁用反超時調度,攔截“FTP bounce”攻擊和FXP,對于在30秒內連接超過3次的用戶攔截10分鐘。域中的設置為:要求復雜密碼,目錄只使用小寫字母,高級中設置取消允許使用MDTM命令更改文件的日期。
更改serv-u的啟動用戶:在系統(tǒng)中新建一個用戶,設置一個復雜點的密碼,不屬于任何組。將servu的安裝目錄給予該用戶完全控制權限。建立一個FTP根目錄,需要給予這個用戶該目錄完全控制權限,因為所有的ftp用戶上傳,刪除,更改文件都是繼承了該用戶的權限,否則無法操 作文 件。另外需要給該目錄以上的上級目錄給該用戶的讀取權限,否則會在連接的時候出現530 Not logged in, home directory does not exist。比如在測試的時候ftp根目錄為d:soft,必須給d盤該用戶的讀取權限,為了安全取消d盤其他文件夾的繼承權限。而一般的使用默認的system啟動就沒有這些問題,因為system一般都擁有這些權限的。
web服務器安全設置五、數據庫服務器的安全設置
對于專用的MSSQL數據庫服務器,按照上文所講的設置TCP/IP篩選和IP策略,對外只開放1433和5631端口。對于MSSQL首先需要為sa設置一個強壯的密碼,使用混合身份驗證,加強數據庫日志的記錄,審核數據庫登陸事件的”成功和失敗”.刪除一些不需要的和危險的OLE自動存儲過程(會造成 企業(yè)管理 器中部分功能不能使用),這些過程包括如下:
Sp_OAcreate Sp_OADestroy Sp_OAGetErrorInfo Sp_OAGetProperty
Sp_OAMethod Sp_OASetProperty Sp_OAStop
去掉不需要的注冊表訪問過程,包括有:
Xp_regaddmultistring Xp_regdeletekey Xp_regdeletevalue
Xp_regenumvalues Xp_regread Xp_regremovemultistring
Xp_regwrite
去掉其他系統(tǒng)存儲過程,如果認為還有威脅,當然要小心drop這些過程,可以在測試機器上測試,保證正常的系統(tǒng)能完成工作,這些過程包括:
xp_cmdshell xp_dirtree xp_dropwebtask sp_addsrvrolemember
xp_makewebtask xp_runwebtask xp_subdirs sp_addlogin
sp_addextendedproc
在實例屬性中選擇TCP/IP協(xié)議的屬性。選擇隱藏 SQL Server 實例可防止對1434端口的探測,可修改默認使用的1433端口。除去數據庫的guest賬戶把未經認可的使用者據之在外。 例外情況是master和 tempdb 數據庫,因為對他們guest帳戶是必需的。另外注意設置好各個數據庫用戶的權限,對于這些用戶只給予所在數據庫的一些權限。在程序中不要用sa用戶去連接任何數據庫。網絡上有建議大家使用協(xié)議加密的,千萬不要這么做,否則你只能重裝MSSQL了。
1、首先來到搜索引擎云控制臺
2、選擇云服務器BBC
3、選擇你要設置的服務器
4、此時你就可以看到安全組了
5、單擊默認安全組
6、此時你就可以根據自己的需求修改安全組了