項目七 電子商務(wù)網(wǎng)站安全_第1頁
項目七 電子商務(wù)網(wǎng)站安全_第2頁
項目七 電子商務(wù)網(wǎng)站安全_第3頁
項目七 電子商務(wù)網(wǎng)站安全_第4頁
項目七 電子商務(wù)網(wǎng)站安全_第5頁
已閱讀5頁,還剩172頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

項目七電子商務(wù)網(wǎng)站安全【項目綜述】該項目主要從服務(wù)器系統(tǒng)病毒漏洞、SQL注入安全、數(shù)據(jù)庫安全等幾個方面讓學(xué)生學(xué)習(xí)電子商務(wù)類網(wǎng)站存在的安全問題及防范措施。讓學(xué)生通過實際操作來學(xué)習(xí)基于windows系統(tǒng)的安全防范的措施。任務(wù)一:操作系統(tǒng)病毒防范【任務(wù)介紹】通過此任務(wù)的學(xué)習(xí),學(xué)生可以完成Windows平臺上殺毒軟件、防火墻等軟件安裝和配置方法,并學(xué)習(xí)基于Windows系統(tǒng)的安全配置方法?!救蝿?wù)分析】計算機病毒是指編制者在計算機程序中插入的破壞性計算機功能或者毀壞數(shù)據(jù)以影響計算機使用,并能自我復(fù)制的一組計算機指令或者程序代碼。象細菌一樣,并能自我復(fù)制。計算機病毒擴散性很強,又常常難以根除。它們能把自身附著在各種類型的文件上,比如.EXE.RAR....等等,有時會替換正常的系統(tǒng)文件。當(dāng)文件被復(fù)制或從一個用戶傳遞到另一個用戶時,它們就隨同文件一起蔓延開來。木馬是一類惡意程序,木馬是有隱藏性的、自發(fā)性的可被用來進行惡意行為的程序,多不會直接對電腦產(chǎn)生危害,而是以控制為主。一般來說,設(shè)計成熟的木馬都有一個信息反饋機制。所謂信息反饋機制是指木馬成功安裝后會收集一些服務(wù)端的軟硬件信息,并通過E-MAIL,IRC或ICO的方式告知控制端用戶。從反饋信息中控制端可以知道服務(wù)端的一些軟硬件信息,包括使用的操作系統(tǒng),系統(tǒng)目錄,硬盤分區(qū)況,系統(tǒng)口令等,在這些信息中,最重要的是服務(wù)端IP,因為只有得到這個參數(shù),控制端才能與服務(wù)端建立連接。木馬和病毒都是一種人為的程序,都屬于電腦病毒,為什么木馬要單獨提出來說呢?大家都知道以前的電腦病毒的作用,其實完全就是為了搞破壞,破壞電腦里的資料數(shù)據(jù),除了破壞之外其它無非就是有些病毒制造者為了達到某些目的而進行的威懾和敲詐勒索的作用,或為了炫耀自己的技術(shù)?!澳抉R”不一樣,木馬的作用是赤裸裸的偷偷監(jiān)視別人和盜竊別人密碼、數(shù)據(jù)等,如盜竊管理員密碼、子網(wǎng)密碼搞破壞,或者好玩,偷竊上網(wǎng)密碼用于它用,游戲帳號,股票帳號,甚至網(wǎng)上銀行帳戶等。達到偷窺別人隱私和得到經(jīng)濟利益的目的。所以木馬的作用比早期的電腦病毒更加有用。更能夠直接達到使用者的目的!導(dǎo)致許多別有用心的程序開發(fā)者大量的編寫這類帶有偷竊和監(jiān)視別人電腦的侵入性程序,這就是目前網(wǎng)上大量木馬泛濫成災(zāi)的原因。鑒于木馬的這些巨大危害性和它與早期病毒的作用性質(zhì)不一樣,所以木馬雖然屬于病毒中的一類,但是要單獨的從病毒類型中間剝離出來。獨立的稱之為“木馬”程序。針對病毒和木馬的入侵,操作系統(tǒng)的安全就更需要有安全的防衛(wèi)措施,如安裝殺毒軟件等,同時也要考慮到系統(tǒng)本身的安全,關(guān)閉不必要的端口等等。下面我們通過任務(wù)的實施來學(xué)習(xí)如何加固系統(tǒng)的安全,防范系統(tǒng)的病毒入侵。【任務(wù)實施】系統(tǒng)病毒的防范措施有很多,除了依靠第三方軟件來保護安全外,更重要的是不要開啟過的無用的服務(wù)及端口,本任務(wù)重點講述四個子任務(wù):依靠殺毒軟件防護病毒,限制多余端口的出入,關(guān)閉危險有害的端口,清楚系統(tǒng)多余啟動項目。子任務(wù)1:安裝配置殺毒軟件 步驟一:下載殺毒軟件 常用國內(nèi)殺毒軟件地址:瑞星/金山/江民/ 360衛(wèi)士/

以瑞星殺毒軟件為例,如圖1所示。步驟步驟二:下載后雙擊安裝包,如圖2所示。

圖2步驟三:選擇“中文簡體”,點擊【確定】開始安裝,安裝成功后如圖3所示。安裝完成后提示重啟動計算機,重新啟動即可。重新啟動后會有設(shè)置向?qū)ВJ下一步完成即可。步驟四:選擇“設(shè)置”,找到“查殺設(shè)置”—“開機查殺”,選擇“所有的服務(wù)和驅(qū)動”如圖4所示。

圖4步驟五:在“設(shè)置”選項卡內(nèi),找到“電腦防護”—“木馬行為防御”,選擇“自動處理”,等級設(shè)置為“推薦”,啟用“啟用危險動作分析”及“自動放過簽名程序”如圖5所示。圖5步驟六:在“設(shè)置”選項卡內(nèi),找到“高級設(shè)置”—“云安全”,選擇“加入瑞星云安全計劃”,郵箱可以不填寫,如圖6所示。子任務(wù)2:限制端口出入端口出入限制只針對服務(wù)器來設(shè)置,如windowsserver2000系統(tǒng),個人用戶來說既繁瑣又沒有太多意義。步驟一:【開始】—【控制面板】—【網(wǎng)絡(luò)連接】。如圖7所示。步驟二:右鍵單擊【本地連接】圖標(biāo),單擊【屬性】,打開“本地連接”屬性窗口,如圖8所示。步驟三:選擇“Internet協(xié)議(TCP/IP)”項目,單擊“屬性”按鈕,打開“Internet協(xié)議(TCP/IP)屬性”對話框,如圖9所示。步驟四:單擊“高級”按鈕打開“高級TCP/IP設(shè)置”對話框該窗口中切換到“選項”界面,如圖10所示。步驟五:在“可選設(shè)置”中選擇“TCP/IP篩選”隨后單擊“屬性”打開“TCP/IP篩選”對話框,勾選“啟用TCP/IP篩選”復(fù)選框,這樣系統(tǒng)會通過該連接按照所配置的規(guī)則限制所有端口的出入,如圖11所示。步驟六:為了限制服務(wù)器只提供web服務(wù),并且端口限制為80端口,那么我們可以添加80端口,并且開啟特定IP協(xié)議(80協(xié)議),如圖12所示。子任務(wù)3:關(guān)閉有害端口對客戶端使用用戶來說,關(guān)閉有害端口可以有效防止一些病毒通過端口入侵,如windowsxp系統(tǒng)。該任務(wù)學(xué)習(xí)在windows下如何關(guān)閉23、135、445、139、3389等端口。(1)學(xué)習(xí)關(guān)閉23端口:23端口主要用于Telnet(遠程登錄)服務(wù),是Internet上普遍采用的登錄和仿真程序。端口說明:23端口主要用于Telnet(遠程登錄)服務(wù),是Internet上普遍采用的登錄和仿真程序。同樣需要設(shè)置客戶端和服務(wù)器端,開啟Telnet服務(wù)的客戶端就可以登錄遠程Telnet服務(wù)器,采用授權(quán)用戶名和密碼登錄。登錄之后,允許用戶使用命令提示符窗口進行相應(yīng)的操作。在Windows中可以在命令提示符窗口中,鍵入“Telnet”命令來使用Telnet遠程登錄。操作建議:利用Telnet服務(wù),黑客可以搜索遠程登錄Unix的服務(wù),掃描操作系統(tǒng)的類型。而且在Windows2000中Telnet服務(wù)存在多個嚴(yán)重的漏洞,比如提升權(quán)限、拒絕服務(wù)等,可以讓遠程服務(wù)器崩潰。Telnet服務(wù)的23端口也是TTS(TinyTelnetServer)木馬的缺省端口。所以,建議關(guān)閉23端口。步驟一:【開始】—【控制面板】—【管理工具】,雙擊打開。如圖13所示。步驟二:在“管理工具”界面,選擇“服務(wù)”,雙擊打開。如圖14所示。步驟三:在“服務(wù)”對話框的服務(wù)列表中,找到Telnet服務(wù),右鍵單擊,選擇“屬性”。如圖15所示。步驟四:在“Telnet的屬性”對話框中,將啟動類型改為“禁用”。如圖16所示。步驟五:單擊“停止”按鈕,將服務(wù)狀態(tài)改變?yōu)椤巴V埂?,單擊“確定”,完成設(shè)置。如圖1-17(2)學(xué)習(xí)關(guān)閉135端口:135端口主要用于使用RPC(RemoteProcedureCall,遠程過程調(diào)用)協(xié)議并提供DCOM(分布式組件對象模型)服務(wù)。端口說明:135端口主要用于使用RPC(RemoteProcedureCall,遠程過程調(diào)用)協(xié)議并提供DCOM(分布式組件對象模型)服務(wù),通過RPC可以保證在一臺計算機上運行的程序可以順利地執(zhí)行遠程計算機上的代碼;使用DCOM可以通過網(wǎng)絡(luò)直接進行通信,能夠跨包括HTTP協(xié)議在內(nèi)的多種網(wǎng)絡(luò)傳輸。端口漏洞:相信去年很多Windows2000和WindowsXP用戶都中了“沖擊波”病毒,該病毒就是利用RPC漏洞來攻擊計算機的。RPC本身在處理通過TCP/IP的消息交換部分有一個漏洞,該漏洞是由于錯誤地處理格式不正確的消息造成的。該漏洞會影響到RPC與DCOM之間的一個接口,該接口偵聽的端口就是135。操作建議:為了避免“沖擊波”病毒的攻擊,建議關(guān)閉該端口。步驟一:【開始】—【運行】,輸入“dcomcnfg”,單擊“確定”,打開組件服務(wù)。如圖18所示。步驟二:在彈出的“組件服務(wù)”對話框中,選擇“計算機”選項,在“計算機”選項右邊,右鍵單擊“我的電腦”,選擇“屬性”。如圖19所示。步驟三:在出現(xiàn)的“我的電腦屬性”對話框“默認屬性”選項卡中,去掉“在此計算機上啟用分布式COM”前的勾。如圖20所示。步驟四:選擇“默認協(xié)議”選項卡,選中“面向連接的TCP/IP”,單擊“刪除”/“移除”按鈕。如圖21所示。步驟五:單擊“確定”按鈕,設(shè)置完成,重新啟動計算機后即可關(guān)閉135端口。(3)學(xué)習(xí)關(guān)閉445端口:445端口是一個毀譽參半的端口,有了它我們可以在局域網(wǎng)中輕松訪問各種共享文件夾或共享打印機,但也正是因為有了它,黑客們才有了可乘之機,他們能通過該端口偷偷共享你的硬盤,甚至?xí)谇臒o聲息中將你的硬盤格式化掉!我們所能做的就是想辦法不讓黑客有機可乘,封堵住445端口漏洞。步驟一:【開始】—【運行】,輸入“regedit”,單擊“確定”按鈕,打開注冊表。如圖22所示。步驟二:找到注冊表項“HKEY_LOCAL_MACHINE\System\CurrentControlset\Services\NetBT\Parameters”。如圖23所示。步驟三:選擇“Parameters”項,右鍵單擊,選擇“新建”——“DWORD值”。如圖24所示。步驟四:將DWORD值命名為“SMBDeviceEnabled”。如圖25所示。步驟五:右鍵單擊“SMBDeviceEnabled”值,選擇“修改”。如圖26所示。步驟六:在出現(xiàn)的“編輯DWORD值”對話框中,在“數(shù)值數(shù)據(jù)”下,輸入“0”,選擇“16進制”,單擊“確定”按鈕,完成設(shè)置。如圖27所示。(4)學(xué)習(xí)關(guān)閉139端口:139端口是為“NetBIOSSessionService”提供的,主要用于提供Windows文件和打印機共享以及Unix中的Samba服務(wù)。端口說明:139端口是為“NetBIOSSessionService”提供的,主要用于提供Windows文件和打印機共享以及Unix中的Samba服務(wù)。在Windows中要在局域網(wǎng)中進行文件的共享,必須使用該服務(wù)。比如在Windows98中,可以打開“控制面板”,雙擊“網(wǎng)絡(luò)”圖標(biāo),在“配置”選項卡中單擊“文件及打印共享”按鈕選中相應(yīng)的設(shè)置就可以安裝啟用該服務(wù);在Windows2000/XP中,可以打開“控制面板”,雙擊“網(wǎng)絡(luò)連接”圖標(biāo),打開本地連接屬性;接著,在屬性窗口的“常規(guī)”選項卡中選擇“Internet協(xié)議(TCP/IP)”,單擊“屬性”按鈕;然后在打開的窗口中,單擊“高級”按鈕;在“高級TCP/IP設(shè)置”窗口中選擇“WINS”選項卡,在“NetBIOS設(shè)置”區(qū)域中啟用TCP/IP上的NetBIOS。端口漏洞:開啟139端口雖然可以提供共享服務(wù),但是常常被攻擊者所利用進行攻擊,比如使用流光、SuperScan等端口掃描工具,可以掃描目標(biāo)計算機的139端口,如果發(fā)現(xiàn)有漏洞,可以試圖獲取用戶名和密碼,這是非常危險的。操作建議:如果不需要提供文件和打印機共享,建議關(guān)閉該端口。步驟一:【開始】—【控制面板】—【管理工具】—【網(wǎng)絡(luò)連接】,右鍵“本地連接”,選擇“屬性”,如圖28所示。步驟二:在出現(xiàn)的“本地連接屬性”對話框中,選擇“Internet協(xié)議(TCP/IP)”,雙擊打開。如圖29所示。步驟三:在出現(xiàn)的“Internet協(xié)議(TCP/IP)屬性”對話框中,單擊“高級”按鈕。如圖30所示。步驟四:在出現(xiàn)的“高級TCP/IP設(shè)置”對話框中,選擇“WINS”選項卡。如圖31所示。步驟五:在“WINS”選項卡,“NetBIOS設(shè)置”下,選擇“禁用TCP/IP上的”NetBIOS,單擊“確定”,重新啟動后即可關(guān)閉139端口。如圖32所示。(5)學(xué)習(xí)關(guān)閉3389端口:3389又稱TerminalService,服務(wù)終端。在WindowsNT中最先開始使用的一種終端,在Win2000的Professional版本中不可以安裝,在Server或以上版本才可以安裝這個服務(wù),其服務(wù)端口為3389。由于使用簡單,方便等特點,一直受系統(tǒng)管理員的青睞。也正式因為他的簡便,不產(chǎn)生交互式登陸,可以在后臺操作,因此也受到了黑客朋友的喜愛,事實可以說明,現(xiàn)在大多數(shù)朋友在入侵之后,都想打開windows終端服務(wù),甚至不惜重啟對方的計算機,也要把終端服務(wù)安裝上,由此可見他的普遍性。在在XP系統(tǒng)中又叫做“遠程桌面”。步驟一:右鍵單擊“我的電腦”,選擇“屬性”。如圖33所示。步驟二:在彈出的“系統(tǒng)屬性”對話框中,選擇“遠程”選項卡。如圖34所示。步驟三:在“遠程”選項卡下,去掉遠程協(xié)助和遠程桌面兩個選項框里的勾。如圖35所示。子任務(wù)4:清除多余啟動項目前流行的病毒往往會隨開機時自動運行,清理啟動項目后,既能保障系統(tǒng)病毒的自動運行,又能提高系統(tǒng)啟動速度。步驟一:【開始】—【運行】,輸入“msconfig”,點擊確定后出現(xiàn)“系統(tǒng)配置實用程序”界面。如圖36所示。步驟二:找到右面的“啟動”選項卡,點擊右下角的“全部禁用”按鈕。如圖37所示。步驟三:然后根據(jù)自己的實際需求情況,選擇需要啟動的選項,一般情況下只選擇“.ctfmon.exe”項目即可,此項目是輸入法程序啟動項目,也是必選項。其他的可以都不選擇,其中殺毒軟件啟動項目會自動在開機的時候添加上,不需要考慮,如360、瑞星等。如圖38所示。步驟四:點擊“確定”按鈕,重新啟動計算機即可生效。【知識擴展】一、計算機端口概念計算機“端口”是英文port的義譯,可以認為是計算機與外界通訊交流的出口。其中硬件領(lǐng)域的端口又稱接口,如:USB端口、串行端口等。軟件領(lǐng)域的端口一般指網(wǎng)絡(luò)中面向連接服務(wù)和無連接服務(wù)的通信協(xié)議端口,是一種抽象的軟件結(jié)構(gòu),包括一些數(shù)據(jù)結(jié)構(gòu)和I/O(基本輸入輸出)緩沖區(qū)。1.按端口號可分為3大類(1)公認端口(WellKnownPorts):從0到1023,它們緊密綁定(binding)于一些服務(wù)。通常這些端口的通訊明確表明了某種服務(wù)的協(xié)議。例如:80端口實際上總是HTTP通訊。(2)注冊端口(RegisteredPorts):從1024到49151。它們松散地綁定于一些服務(wù)。也就是說有許多服務(wù)綁定于這些端口,這些端口同樣用于許多其它目的。例如:許多系統(tǒng)處理動態(tài)端口從1024左右開始。(3)動態(tài)和/或私有端口(Dynamicand/orPrivatePorts):從49152到65535。理論上,不應(yīng)為服務(wù)分配這些端口。實際上,機器通常從1024起分配動態(tài)端口。但也有例外:SUN的RPC端口從32768開始。2.常用端口介紹一些端口常常會被黑客利用,還會被一些木馬病毒利用,對計算機系統(tǒng)進行攻擊,以下是計算機端口的介紹。(1)8080端口端口說明:8080端口同80端口,是被用于WWW代理服務(wù)的,可以實現(xiàn)網(wǎng)頁瀏覽,經(jīng)常在訪問某個網(wǎng)站或使用代理服務(wù)器的時候,會加上“:8080”端口號,比如:8080。端口漏洞:8080端口可以被各種病毒程序所利用,比如BrownOrifice(BrO)特洛伊木馬病毒可以利用8080端口完全遙控被感染的計算機。另外,RemoConChubo,RingZero木馬也可以利用該端口進行攻擊。(2)端口:21服務(wù):FTP說明:FTP服務(wù)器所開放的端口,用于上傳、下載。最常見的攻擊者用于尋找打開anonymous的FTP服務(wù)器的方****。這些服務(wù)器帶有可讀寫的目錄。木馬DolyTrojan、Fore、InvisibleFTP、WebEx、WinCrash和BladeRunner所開放的端口。(3)端口:22服務(wù):Ssh說明:PcAnywhere建立的TCP和這一端口的連接可能是為了尋找ssh。這一服務(wù)有許多弱點,如果配置成特定的模式,許多使用RSAREF庫的版本就會有不少的漏洞存在。

(4)端口:23服務(wù):Telnet說明:遠程登錄,入侵者在搜索遠程登錄UNIX的服務(wù)。大多數(shù)情況下掃描這一端口是為了找到機器運行的操作系統(tǒng)。還有使用其他技術(shù),入侵者也會找到密碼。木馬TinyTelnetServer就開放這個端口。

(5)端口:25服務(wù):SMTP說明:SMTP服務(wù)器所開放的端口,用于發(fā)送郵件。入侵者尋找SMTP服務(wù)器是為了傳遞他們的SPAM。入侵者的帳戶被關(guān)閉,他們需要連接到高帶寬的E-MAIL服務(wù)器上,將簡單的信息傳遞到不同的地址。木馬Antigen、EmailPasswordSender、HaebuCoceda、ShtrilitzStealth、WinPC、WinSpy都開放這個端口。

(6)端口:80服務(wù):HTTP說明:用于網(wǎng)頁瀏覽。木馬Executor開放此端口。

(7)端口:102服務(wù):Messagetransferagent(MTA)-X.400overTCP/IP說明:消息傳輸代理。

(8)端口:109服務(wù):PostOfficeProtocol-Version3說明:POP3服務(wù)器開放此端口,用于接收郵件,客戶端訪問服務(wù)器端的郵件服務(wù)。POP3服務(wù)有許多公認的弱點。關(guān)于用戶名和密碼交換緩沖區(qū)溢出的弱點至少有20個,這意味著入侵者可以在真正登陸前進入系統(tǒng)。成功登陸后還有其他緩沖區(qū)溢出錯誤。

(9)端口:110服務(wù):SUN公司的RPC服務(wù)所有端口

說明:常見RPC服務(wù)有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等

(10)端口:119服務(wù):NetworkNewsTransferProtocol說明:NEWS新聞組傳輸協(xié)議,承載USENET通信。這個端口的連接通常是人們在尋找USENET服務(wù)器。多數(shù)ISP限制,只有他們的客戶才能訪問他們的新聞組服務(wù)器。打開新聞組服務(wù)器將允許發(fā)/讀任何人的帖子,訪問被限制的新聞組服務(wù)器,匿名發(fā)帖或發(fā)送SPAM。

(11)端口:135服務(wù):LocationService說明:Microsoft在這個端口運行DCERPCend-pointmapper為它的DCOM服務(wù)。這與UNIX111端口的功能很相似。使用DCOM和RPC的服務(wù)利用計算機上的end-pointmapper注冊它們的位置。遠端客戶連接到計算機時,它們查找end-pointmapper找到服務(wù)的位置。HACKER掃描計算機的這個端口是為了找到這個計算機上運行ExchangeServer嗎?什么版本?還有些DOS攻擊直接針對這個端口。

(12)端口:137、138、139服務(wù):NETBIOSNameService說明:其中137、138是UDP端口,當(dāng)通過網(wǎng)上鄰居傳輸文件時用這個端口。而139端口:通過這個端口進入的連接試圖獲得NetBIOS/SMB服務(wù)。這個協(xié)議被用于windows文件和打印機共享和SAMBA。還有WINSRegisrtation也用它。

(13)端口:161服務(wù):SNMP說明:SNMP允許遠程管理設(shè)備。所有配置和運行信息的儲存在數(shù)據(jù)庫中,通過SNMP可獲得這些信息。許多管理員的錯誤配置將被暴露在Internet。Cackers將試圖使用默認的密碼public、private訪問系統(tǒng)。他們可能會試驗所有可能的組合。SNMP包可能會被錯誤的指向用戶的網(wǎng)絡(luò)。3.有關(guān)端口的操作(1)查看端口Windows2000/XP/Server2003中要查看端口,可以使用NETSTAT命令:“開始”>“運行”>“cmd”,打開命令提示符窗口。在命令提示符狀態(tài)下鍵入“NETSTAT-a-n”,按下回車鍵后就可以看到以數(shù)字形式顯示的TCP和UDP連接的端口號及狀態(tài)。命令格式:Netstat-a–e–n–o–s-a表示顯示所有活動的TCP連接以及計算機監(jiān)聽的TCP和UDP端口。-e表示顯示以太網(wǎng)發(fā)送和接收的字節(jié)數(shù)、數(shù)據(jù)包數(shù)等。-n表示只以數(shù)字形式顯示所有活動的TCP連接的地址和端口號。-o表示顯示活動的TCP連接并包括每個連接的進程ID(PID)。-s表示按協(xié)議顯示各種連接的統(tǒng)計信息,包括端口號。(2)關(guān)閉端口比如在Windows2000/XP中關(guān)閉SMTP服務(wù)的25端口,可以這樣做:首先打開“控制面板”,雙擊“管理工具”,再雙擊“服務(wù)”。接著在打開的服務(wù)窗口中找到并雙擊“SimpleMailTransferProtocol(SMTP)”服務(wù),單擊“停止”按鈕來停止該服務(wù),然后在“啟動類型”中選擇“已禁用”,最后單擊“確定”按鈕即可。這樣,關(guān)閉了SMTP服務(wù)就相當(dāng)于關(guān)閉了對應(yīng)的端口。(3)開啟端口如果要開啟該端口只要先在“啟動類型”選擇“自動”,單擊“確定”按鈕,再打開該服務(wù),在“服務(wù)狀態(tài)”中單擊“啟動”按鈕即可啟用該端口,最后,單擊“確定”按鈕即可。另外在網(wǎng)絡(luò)連接屬性中,選擇“TCP/IP協(xié)議”屬性,打開高級TCP/IP設(shè)置,在選項的那個頁面打開TCP/IP篩選,在出現(xiàn)的設(shè)置窗口中也可以根據(jù)實現(xiàn)情況設(shè)置端口的打開和關(guān)閉,默認是未啟用TCP/IP篩選。二、TCP/IP協(xié)議

1.定義TCP/IP指傳輸控制協(xié)議/網(wǎng)際協(xié)議(TransmissionControlProtocol/InternetProtocol)。TCP/IP定義了電子設(shè)備(比如計算機)如何連入因特網(wǎng),以及數(shù)據(jù)如何在它們之間傳輸?shù)臉?biāo)準(zhǔn)。TCP/IP(傳輸控制協(xié)議/網(wǎng)際協(xié)議)是互聯(lián)網(wǎng)中的基本通信語言或協(xié)議。在私網(wǎng)中,它也被用作通信協(xié)議。當(dāng)你直接網(wǎng)絡(luò)連接時,你的計算機應(yīng)提供一個TCP/IP程序的副本,此時接收你所發(fā)送的信息的計算機也應(yīng)有一個TCP/IP程序的副本。TCP/IP是一個兩層的程序。高層為傳輸控制協(xié)議,它負責(zé)聚集信息或把文件拆分成更小的包。這些包通過網(wǎng)絡(luò)傳送到接收端的TCP層,接收端的TCP層把包還原為原始文件。低層是網(wǎng)際協(xié)議,它處理每個包的地址部分,使這些包正確的到達目的地。網(wǎng)絡(luò)上的網(wǎng)關(guān)計算機根據(jù)信息的地址來進行路由選擇。即使來自同一文件的分包路由也有可能不同,但最后會在目的地匯合。TCP/IP使用客戶端/服務(wù)器模式進行通信。TCP/IP通信是點對點的,意思是通信是網(wǎng)絡(luò)中的一臺主機與另一臺主機之間的。2.OSI模型及TCP/IP協(xié)議族數(shù)據(jù)鏈路層包括了硬件接口和協(xié)議ARP,RARP,這兩個協(xié)議主要是用來建立送到物理層上的信息和接收從物理層上傳來的信息;

網(wǎng)絡(luò)層中的協(xié)議主要有IP,ICMP,IGMP等,由于它包含了IP協(xié)議模塊,所以它是所有基于TCP/IP協(xié)議網(wǎng)絡(luò)的核心。在網(wǎng)絡(luò)層中,IP模塊完成大部分功能。ICMP和IGMP以及其他支持IP的協(xié)議幫助IP完成特定的任務(wù),如傳輸差錯控制信息以及主機/路由器之間的控制電文等。網(wǎng)絡(luò)層掌管著網(wǎng)絡(luò)中主機間的信息傳輸。

傳輸層上的主要協(xié)議是TCP和UDP。正如網(wǎng)絡(luò)層控制著主機之間的數(shù)據(jù)傳遞,傳輸層控制著那些將要進入網(wǎng)絡(luò)層的數(shù)據(jù)。兩個協(xié)議就是它管理這些數(shù)據(jù)的兩種方式:TCP是一個基于連接的協(xié)議(還記得我們在網(wǎng)絡(luò)基礎(chǔ)中講到的關(guān)于面向連接的服務(wù)和面向無連接服務(wù)的概念嗎?忘了的話,去看看);UDP則是面向無連接服務(wù)的管理方式的協(xié)議。應(yīng)用層位于協(xié)議棧的頂端,它的主要任務(wù)就是應(yīng)用了。上面的協(xié)議當(dāng)然也是為了這些應(yīng)用而設(shè)計的,具體說來一些常用的協(xié)議功能如下:

Telnet:提供遠程登錄(終端仿真)服務(wù),好象比較古老的BBS就是用的這個登陸。

FTP:提供應(yīng)用級的文件傳輸服務(wù),說的簡單明了點就是遠程文件訪問等等服務(wù);

SMTP:不用說拉,天天用到的電子郵件協(xié)議。

TFTP:提供小而簡單的文件傳輸服務(wù),實際上從某個角度上來說是對FTP的一種替換(在文件特別小并且僅有傳輸需求的時候)。

SNMP:簡單網(wǎng)絡(luò)管理協(xié)議。DNS:域名解析服務(wù),也就是如何將域名映射成IP地址的協(xié)議。

HTTP:這是超文本傳輸協(xié)議,網(wǎng)上的圖片,動畫,音頻,等等,都是這個協(xié)議在起作用。三、DNS服務(wù)器1.定義DNS服務(wù)器是(DomainNameSystem或者DomainNameService)域名系統(tǒng)或者域名服務(wù),域名系統(tǒng)為Internet上的主機分配域名地址和IP地址。用戶使用域名地址,該系統(tǒng)就會自動把域名地址轉(zhuǎn)為IP地址。域名服務(wù)是運行域名系統(tǒng)的Internet工具。執(zhí)行域名服務(wù)的服務(wù)器稱之為DNS服務(wù)器,通過DNS服務(wù)器來應(yīng)答域名服務(wù)的查詢。

2.作用DNS服務(wù)器在互聯(lián)網(wǎng)的作用是:把域名轉(zhuǎn)換成為網(wǎng)絡(luò)可以識別的ip地址。首先,要知道互聯(lián)網(wǎng)的網(wǎng)站都是一臺一臺服務(wù)器的形式存在的,但是我們怎么去到要訪問的網(wǎng)站服務(wù)器呢?這就需要給每臺服務(wù)器分配IP地址,互聯(lián)網(wǎng)上的網(wǎng)站無窮多,我們不可能記住每個網(wǎng)站的IP地址,這就產(chǎn)生了方便記憶的域名管理系統(tǒng)DNS,他可以把我們輸入的好記的域名轉(zhuǎn)換為要訪問的服務(wù)器的IP地址。簡單的說,就是為了方便我們?yōu)g覽互聯(lián)網(wǎng)上的網(wǎng)站而不用去刻意記住每個主機的IP地址,DNS服務(wù)器就應(yīng)運而生,提供將域名解析為IP的服務(wù),從而使我們上網(wǎng)的時候能夠用簡短而好記的域名來訪問互聯(lián)網(wǎng)上的靜態(tài)IP的主機。四、注冊表概念

注冊表是為WindowsNT和Windows95中所有32位硬件/驅(qū)動和32位應(yīng)用程序設(shè)計的數(shù)據(jù)文件。16位驅(qū)動在Winnt下無法工作,所以所有設(shè)備都通過注冊表來控制,一般這些是通過BIOS來控制的。在Win95下,16位驅(qū)動會繼續(xù)以實模式方式設(shè)備工作,它們使用system.ini來控制。16位應(yīng)用程序會工作在NT或者Win95下,它們的程序仍然會參考win.ini和system.ini文件獲得信息和控制。在沒有注冊表的情況下,操作系統(tǒng)不會獲得必須的信息來運行和控制附屬的設(shè)備和應(yīng)用程序及正確響應(yīng)用戶的輸入?!救蝿?wù)評價】一、評價方法本任務(wù)以小組為單位上機操作殺毒軟件的安裝及啟動項的篩選。學(xué)生本人根據(jù)在本任務(wù)中的作用和貢獻進行自我評價,小組根據(jù)每位學(xué)生的自評和完成任務(wù)的情況對本組每位學(xué)生進行小組評價,最后由教師根據(jù)任務(wù)的完成情況和學(xué)習(xí)目標(biāo)的掌握情況結(jié)合小組評價和學(xué)生自評指出每位同學(xué)的操作和學(xué)習(xí)的方向。二、評價指標(biāo)【任務(wù)總結(jié)】該任務(wù)學(xué)習(xí)了如何通過第三方防護軟件進行計算機的病毒防護;進一步學(xué)習(xí)操作系統(tǒng)的安全防御,如端口的限制,啟動項目的篩選等等。讓學(xué)生對病毒防護的工具及操作系統(tǒng)本身有所了解,要夠充分認識到病毒防護需要綜合考慮。任務(wù)二操作系統(tǒng)漏洞防范【任務(wù)介紹】通過此任務(wù)的學(xué)習(xí),學(xué)生可以完成Windows平臺上系統(tǒng)漏洞的修復(fù)與防范,避免黑客利用系統(tǒng)漏洞來破壞計算機甚至網(wǎng)站系統(tǒng)?!救蝿?wù)分析】漏洞即某個程序(包括操作系統(tǒng))在設(shè)計時未考慮周全,當(dāng)程序遇到一個看似合理,但實際無法處理的問題時,引發(fā)的不可預(yù)見的錯誤。系統(tǒng)漏洞又稱安全缺陷,對用戶造成的不良后果,如漏洞被惡意用戶利用,會造成信息泄漏,如黑客攻擊網(wǎng)站即利用網(wǎng)絡(luò)服務(wù)器操作系統(tǒng)的漏洞。很有可能對用戶操作造成不便,如不明原因的死機和丟失文件等。對服務(wù)器而言,網(wǎng)站服務(wù)器被黑客利用漏洞攻擊后,很大程度上造成系統(tǒng)癱瘓,無法提供服務(wù)。 綜上所述,只有及時堵住系統(tǒng)漏洞,用戶才會有一個安全和穩(wěn)定的工作環(huán)境,服務(wù)器才能更好的提供服務(wù)。我們可以通過系統(tǒng)自身的升級或者第三方工具進行系統(tǒng)漏洞的修復(fù)?!救蝿?wù)實施】漏洞的防范一是要開啟系統(tǒng)本身的安全防范,二是要借助第三方軟件來鞏固系統(tǒng)的安全。子任務(wù)1:啟用系統(tǒng)自動更新步驟一:【開始】—【所有程序】—【附件】—【系統(tǒng)工具】—【安全中心】。如圖39所示。步驟二:找到“自動更新”,點擊“啟用自動更新”,如圖40所示。子任務(wù)2:用瑞星卡卡修復(fù)系統(tǒng)漏洞步驟一:打開安裝好的瑞星殺毒界面,在“工具”選項卡,找到“瑞星卡卡上網(wǎng)助手”,點擊“安裝”,如圖41所示。步驟二:在打開的網(wǎng)頁中,點擊“立即下載”,如圖42所示。步驟三:下載安裝后啟動卡卡助手,如圖43所示。步驟四:在“常用”選項卡,點擊“漏洞掃描與修復(fù)”,在右側(cè)點擊“全選”,然后點擊“修復(fù)所有選項”,如圖44所示。【知識擴展】一、漏洞簡介系統(tǒng)漏洞是指應(yīng)用軟件或操作系統(tǒng)軟件在邏輯設(shè)計上的缺陷或在編寫時產(chǎn)生的錯誤,這個缺陷或錯誤可以被不法者或者電腦黑客利用,通過植入木馬、病毒等方式來攻擊或控制整個電腦,從而竊取您電腦中的重要資料和信息,甚至破壞您的系統(tǒng)。漏洞會影響到的范圍很大,包括系統(tǒng)本身及其支撐軟件,網(wǎng)絡(luò)客戶和服務(wù)器軟件,網(wǎng)絡(luò)路由器和安全防火墻等。換而言之,在這些不同的軟硬件設(shè)備中都可能存在不同的安全漏洞問題。在不同種類的軟、硬件設(shè)備,同種設(shè)備的不同版本之間,由不同設(shè)備構(gòu)成的不同系統(tǒng)之間,以及同種系統(tǒng)在不同的設(shè)置條件下,都會存在各自不同的安全漏洞問題。二、漏洞原理Windows系統(tǒng)漏洞問題是與時間緊密相關(guān)的。一個Windows系統(tǒng)從發(fā)布的那一天起,隨著用戶的深入使用,系統(tǒng)中存在的漏洞會被不斷暴露出來,這些早先被發(fā)現(xiàn)的漏洞也會不斷被系統(tǒng)供應(yīng)商:微軟公司發(fā)布的補丁軟件修補,或在以后發(fā)布的新版系統(tǒng)中得以糾正。而在新版系統(tǒng)糾正了舊版本中具有漏洞的同時,也會引入一些新的漏洞和錯誤。因而隨著時間的推移,舊的系統(tǒng)漏洞會不斷消失,新的系統(tǒng)漏洞會不斷出現(xiàn)。系統(tǒng)漏洞問題也會長期存在。三、漏洞的危害在互聯(lián)網(wǎng)日益普及的今天,越來越多的計算機連接到互聯(lián)網(wǎng),甚至某些計算機保持“始終在線”的連接,這樣的連接使他們暴露在病毒感染、黑客入侵、拒絕服務(wù)攻擊以及其它可能的風(fēng)險面前。操作系統(tǒng)是一個基礎(chǔ)的特殊軟件,它是硬件、網(wǎng)絡(luò)與用戶的一個接口。不管用戶在上面使用什么應(yīng)用程序或享受怎樣的服務(wù),操作系統(tǒng)一定是必用的軟件。因此它的漏洞如果不補,就像我們的門不上鎖一樣地危險!等待我們的輕則資源耗盡、重則感染病毒、被插木馬、隱私盡泄甚至?xí)a(chǎn)生經(jīng)濟上的損失!四、漏洞修復(fù)的幾種方式

1.Windows自身

Windows自身以前是通過光盤或其他介質(zhì)來發(fā)行補丁,后來隨著網(wǎng)絡(luò)的發(fā)展,現(xiàn)在多數(shù)可以通過互聯(lián)網(wǎng)來直接下載,而且Windows將漏洞補丁功能集成在了其系統(tǒng)中,只要安裝完后,默認會自動開啟此功能。

2.各殺毒軟件系統(tǒng)漏洞同樣有很大的危險,作為殺毒公司自然不能不管。因此他們也開發(fā)了系統(tǒng)漏洞掃描和打補丁的功能。國內(nèi)的殺毒廠商的產(chǎn)品基本都有這樣的功能。

3.反惡意軟件以360安全衛(wèi)士為代表的反惡意軟件同樣提供了類似的功能,還有雅虎的天盾也有這樣的功能。

4.迅雷軟件隨著下載在網(wǎng)民上網(wǎng)行為中占據(jù)越來越重的份額,木馬、后門、蠕蟲、病毒、插件等也“泥沙俱下”,將其夾帶在了下載資源之中,給我們帶來了極大麻煩。作為最大的下載服務(wù)提供商的迅雷提供了漏洞補丁修復(fù)功能。而且,它較其他的產(chǎn)品還有很多的特色功能?!救蝿?wù)評價】一、評價方法本任務(wù)以小組為單位上機操作,通過第三方軟件來修復(fù)系統(tǒng)漏洞。學(xué)生本人根據(jù)在本任務(wù)中的作用和貢獻進行自我評價,小組根據(jù)每位學(xué)生的自評和完成任務(wù)的情況對本組每位學(xué)生進行小組評價,最后由教師根據(jù)任務(wù)的完成情況和學(xué)習(xí)目標(biāo)的掌握情況結(jié)合小組評價和學(xué)生自評指出每位同學(xué)的操作和學(xué)習(xí)的方向。二、評價指標(biāo)【任務(wù)總結(jié)】該任務(wù)學(xué)習(xí)了通過第三方軟件來進行系統(tǒng)的漏洞修復(fù),操作簡單,關(guān)鍵是理解漏洞修復(fù)的重要性及掌握漏洞修復(fù)的方法。任務(wù)三防止SQL注入攻擊【任務(wù)介紹】通過此任務(wù)的學(xué)習(xí),讓學(xué)生了解SQL注入的危險及在設(shè)計網(wǎng)站時應(yīng)該考慮到的安全問題。SQL注入的安全問題包含內(nèi)容很多,如數(shù)據(jù)庫的設(shè)計合理性、程序語言的編寫安全性、web服務(wù)器的安全設(shè)置等等方面。本任務(wù)重點講述防止SQL注入的常見防治措施。【任務(wù)分析】 SQL注入攻擊是黑客對數(shù)據(jù)庫進行攻擊的常用手段之一。隨著B/S模式應(yīng)用開發(fā)的發(fā)展,使用這種模式編寫應(yīng)用程序的程序員也越來越多。但是由于程序員的水平及經(jīng)驗也參差不齊,相當(dāng)大一部分程序員在編寫代碼的時候,沒有對用戶輸入數(shù)據(jù)的合法性進行判斷,使應(yīng)用程序存在安全隱患。用戶可以提交一段數(shù)據(jù)庫查詢代碼,根據(jù)程序返回的結(jié)果,獲得某些他想得知的數(shù)據(jù),這就是所謂的SQLInjection,即SQL注入。

SQL注入是從正常的WWW端口訪問,而且表面看起來跟一般的Web頁面訪問沒什么區(qū)別,所以目前市面的防火墻都不會對SQL注入發(fā)出警報,如果管理員沒查看IIS日志的習(xí)慣,可能被入侵很長時間都不會發(fā)覺。但是,SQL注入的手法相當(dāng)靈活,在注入的時候會碰到很多意外的情況,需要構(gòu)造巧妙的SQL語句,從而成功獲取想要的數(shù)據(jù)。

SQL注入攻擊的危害性很大。在講解其防止辦法之前,數(shù)據(jù)庫管理員有必要先了解一下其攻擊的原理。這有利于管理員采取有針對性的防治措施。【任務(wù)實施】本任務(wù)通過簡單示例了解注入方式,進一步學(xué)習(xí)注入原理,然后學(xué)習(xí)如何防范SQL注入。子任務(wù)1:

SQL注入攻擊的簡單示例

SQL語句分析:statement:="SELECT*FROMUsersWHEREValue="+a_variable+"上面這條語句是很普通的一條SQL語句,他主要實現(xiàn)的功能就是讓用戶輸入一個員工編號然后查詢出這個員工的信息。但是若這條語句被不法攻擊者改裝過后,就可能成為破壞數(shù)據(jù)的黑手。如攻擊者在輸入變量的時候,輸入以下內(nèi)容’SA001’;droptablec_order--。那么以上這條SQL語句在執(zhí)行的時候就變?yōu)榱耍篠ELECT*FROMUsersWHEREValue=’SA001’;droptablec_order--這條語句是什么意思呢?’SA001’后面的分號表示一個查詢的結(jié)束和另一條語句的開始。c_order后面的雙連字符指示當(dāng)前行余下的部分只是一個注釋,應(yīng)該忽略。如果修改后的代碼語法正確,則服務(wù)器將執(zhí)行該代碼。系統(tǒng)在處理這條語句時,將首先執(zhí)行查詢語句,查到用戶編號為SA001的用戶信息。然后,數(shù)據(jù)將刪除表C_ORDER(如果沒有其他主鍵等相關(guān)約束,則刪除操作就會成功)。只要注入的SQL代碼語法正確,便無法采用編程方式來檢測篡改。因此,想要避免SQL注入,必須驗證所有用戶輸入,并仔細檢查在您所用的服務(wù)器中執(zhí)行構(gòu)造SQL命令的代碼。子任務(wù)2:

SQL注入攻擊的原理

可見SQL注入攻擊的危害性很大。在講解其防止辦法之前,數(shù)據(jù)庫管理員有必要先了解一下其攻擊的原理。這有利于管理員采取有針對性的防治措施。SQL注入是目前比較常見的針對數(shù)據(jù)庫的一種攻擊方式。在這種攻擊方式中,攻擊者會將一些惡意代碼插入到字符串中。然后會通過各種手段將該字符串傳遞到SQLServer數(shù)據(jù)庫的實例中進行分析和執(zhí)行。只要這個惡意代碼符合SQL語句的規(guī)則,則在代碼編譯與執(zhí)行的時候,就不會被系統(tǒng)所發(fā)現(xiàn)。SQL注入式攻擊的主要形式有兩種。一是直接將代碼插入到與SQL命令串聯(lián)在一起并使得其以執(zhí)行的用戶輸入變量。上面筆者舉的例子就是采用了這種方法。由于其直接與SQL語句捆綁,故也被稱為直接注入式攻擊法。二是一種間接的攻擊方法,它將惡意代碼注入要在表中存儲或者作為原書據(jù)存儲的字符串。在存儲的字符串中會連接到一個動態(tài)的SQL命令中,以執(zhí)行一些惡意的SQL代碼。注入過程的工作方式是提前終止文本字符串,然后追加一個新的命令。如以直接注入式攻擊為例。就是在用戶輸入變量的時候,先用一個分號結(jié)束當(dāng)前的語句。然后再插入一個惡意SQL語句即可。由于插入的命令可能在執(zhí)行前追加其他字符串,因此攻擊者常常用注釋標(biāo)記“--”來終止注入的字符串。執(zhí)行時,系統(tǒng)會認為此后語句位注釋,故后續(xù)的文本將被忽略,不背編譯與執(zhí)行。子任務(wù)3:

SQL注入攻擊的防治

既然SQL注入式攻擊的危害這么大,那么該如何來防治呢?下面這些建議或許對數(shù)據(jù)庫管理員防治SQL注入式攻擊有一定的幫助。(1)普通用戶與系統(tǒng)管理員用戶的權(quán)限要有嚴(yán)格的區(qū)分如果一個普通用戶在使用查詢語句中嵌入另一個DropTable語句,那么是否允許執(zhí)行呢?由于Drop語句關(guān)系到數(shù)據(jù)庫的基本對象,故要操作這個語句用戶必須有相關(guān)的權(quán)限。在權(quán)限設(shè)計中,對于終端用戶,即應(yīng)用軟件的使用者,沒有必要給他們數(shù)據(jù)庫對象的建立、刪除等權(quán)限。那么即使在他們使用SQL語句中帶有嵌入式的惡意代碼,由于其用戶權(quán)限的限制,這些代碼也將無法被執(zhí)行。故應(yīng)用程序在設(shè)計的時候,最好把系統(tǒng)管理員的用戶與普通用戶區(qū)分開來。如此可以最大限度的減少注入式攻擊對數(shù)據(jù)庫帶來的危害。(2)強迫使用參數(shù)化語句如果在編寫SQL語句的時候,用戶輸入的變量不是直接嵌入到SQL語句。而是通過參數(shù)來傳遞這個變量的話,那么就可以有效的防治SQL注入式攻擊。也就是說,用戶的輸入絕對不能夠直接被嵌入到SQL語句中。與此相反,用戶的輸入的內(nèi)容必須進行過濾,或者使用參數(shù)化的語句來傳遞用戶輸入的變量。參數(shù)化的語句使用參數(shù)而不是將用戶輸入變量嵌入到SQL語句中。采用這種措施,可以杜絕大部分的SQL注入式攻擊。

不過可惜的是,現(xiàn)在支持參數(shù)化語句的數(shù)據(jù)庫引擎并不多。不過數(shù)據(jù)庫工程師在開發(fā)產(chǎn)品的時候要盡量采用參數(shù)化語句。(3)加強對用戶輸入的驗證總體來說,防治SQL注入式攻擊可以采用兩種方法,一是加強對用戶輸入內(nèi)容的檢查與驗證;二是強迫使用參數(shù)化語句來傳遞用戶輸入的內(nèi)容。在SQLServer數(shù)據(jù)庫中,有比較多的用戶輸入內(nèi)容驗證工具,可以幫助管理員來對付SQL注入式攻擊。測試字符串變量的內(nèi)容,只接受所需的值。拒絕包含二進制數(shù)據(jù)、轉(zhuǎn)義序列和注釋字符的輸入內(nèi)容。這有助于防止腳本注入,防止某些緩沖區(qū)溢出攻擊。測試用戶輸入內(nèi)容的大小和數(shù)據(jù)類型,強制執(zhí)行適當(dāng)?shù)南拗婆c轉(zhuǎn)換。這即有助于防止有意造成的緩沖區(qū)溢出,對于防治注入式攻擊有比較明顯的效果。如可以使用存儲過程來驗證用戶的輸入。利用存儲過程可以實現(xiàn)對用戶輸入變量的過濾,如拒絕一些特殊的符號。如以上那個惡意代碼中,只要存儲過程把那個分號過濾掉,那么這個惡意代碼也就沒有用武之地了。在執(zhí)行SQL語句之前,可以通過數(shù)據(jù)庫的存儲過程,來拒絕接納一些特殊的符號。在不影響數(shù)據(jù)庫應(yīng)用的前提下,應(yīng)該讓數(shù)據(jù)庫拒絕包含以下字符的輸入。如分號分隔符,它是SQL注入式攻擊的主要幫兇。如注釋分隔符。注釋只有在數(shù)據(jù)設(shè)計的時候用的到。一般用戶的查詢語句中沒有必要注釋的內(nèi)容,故可以直接把他拒絕掉,通常情況下這么做不會發(fā)生意外損失。把以上這些特殊符號拒絕掉,那么即使在SQL語句中嵌入了惡意代碼,他們也將毫無作為。故始終通過測試類型、長度、格式和范圍來驗證用戶輸入,過濾用戶輸入的內(nèi)容。這是防止SQL注入式攻擊的常見并且行之有效的措施。(4)多使用SQLServer數(shù)據(jù)庫自帶的安全參數(shù)為了減少注入式攻擊對于SQLServer數(shù)據(jù)庫的不良影響,在SQLServer數(shù)據(jù)庫專門設(shè)計了相對安全的SQL參數(shù)。在數(shù)據(jù)庫設(shè)計過程中,工程師要盡量采用這些參數(shù)來杜絕惡意的SQL注入式攻擊。如在SQLServer數(shù)據(jù)庫中提供了Parameters集合。這個集合提供了類型檢查和長度驗證的功能。如果管理員采用了Parameters這個集合的話,則用戶輸入的內(nèi)容將被視為字符值而不是可執(zhí)行代碼。即使用戶輸入的內(nèi)容中含有可執(zhí)行代碼,則數(shù)據(jù)庫也會過濾掉。因為此時數(shù)據(jù)庫只把它當(dāng)作普通的字符來處理。使用Parameters集合的另外一個優(yōu)點是可以強制執(zhí)行類型和長度檢查,范圍以外的值將觸發(fā)異常。如果用戶輸入的值不符合指定的類型與長度約束,就會發(fā)生異常,并報告給管理員。如上面這個案例中,如果員工編號定義的數(shù)據(jù)類型為字符串型,長度為10個字符。而用戶輸入的內(nèi)容雖然也是字符類型的數(shù)據(jù),但是其長度達到了20個字符。則此時就會引發(fā)異常,因為用戶輸入的內(nèi)容長度超過了數(shù)據(jù)庫字段長度的限制。(5)多層環(huán)境如何防治SQL注入式攻擊在多層應(yīng)用環(huán)境中,用戶輸入的所有數(shù)據(jù)都應(yīng)該在驗證之后才能被允許進入到可信區(qū)域。未通過驗證過程的數(shù)據(jù)應(yīng)被數(shù)據(jù)庫拒絕,并向上一層返回一個錯誤信息。實現(xiàn)多層驗證。對無目的的惡意用戶采取的預(yù)防措施,對堅定的攻擊者可能無效。更好的做法是在用戶界面和所有跨信任邊界的后續(xù)點上驗證輸入。如在客戶端應(yīng)用程序中驗證數(shù)據(jù)可以防止簡單的腳本注入。但是,如果下一層認為其輸入已通過驗證,則任何可以繞過客戶端的惡意用戶就可以不受限制地訪問系統(tǒng)。故對于多層應(yīng)用環(huán)境,在防止注入式攻擊的時候,需要各層一起努力,在客戶端與數(shù)據(jù)庫端都要采用相應(yīng)的措施來防治SQL語句的注入式攻擊。(6)必要的情況下使用專業(yè)的漏洞掃描工具來尋找可能被攻擊的點。使用專業(yè)的漏洞掃描工具,可以幫助管理員來尋找可能被SQL注入式攻擊的點。不過漏洞掃描工具只能發(fā)現(xiàn)攻擊點,而不能夠主動起到防御SQL注入攻擊的作用。當(dāng)然這個工具也經(jīng)常被攻擊者拿來使用。如攻擊者可以利用這個工具自動搜索攻擊目標(biāo)并實施攻擊。為此在必要的情況下,企業(yè)應(yīng)當(dāng)投資于一些專業(yè)的漏洞掃描工具。一個完善的漏洞掃描程序不同于網(wǎng)絡(luò)掃描程序,它專門查找數(shù)據(jù)庫中的SQL注入式漏洞。最新的漏洞掃描程序可以查找最新發(fā)現(xiàn)的漏洞。所以憑借專業(yè)的工具,可以幫助管理員發(fā)現(xiàn)SQL注入式漏洞,并提醒管理員采取積極的措施來預(yù)防SQL注入式攻擊。如果攻擊者能夠發(fā)現(xiàn)的SQL注入式漏洞數(shù)據(jù)庫管理員都發(fā)現(xiàn)了并采取了積極的措施堵住漏洞,那么攻擊者也就無從下手了?!局R擴展】一、SQL注入簡介所謂SQL注入,就是通過把SQL命令插入到Web表單遞交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務(wù)器執(zhí)行惡意的SQL命令,比如先前的很多影視網(wǎng)站泄露VIP會員密碼大多就是通過WEB表單遞交查詢字符暴出的,這類表單特別容易受到SQL注入式攻擊.二、防SQL注入原則歸納一下,主要有以下幾點:1.永遠不要信任用戶的輸入。對用戶的輸入進行校驗,可以通過正則表達式,或限制長度;對單引號和雙"-"進行轉(zhuǎn)換等。2.永遠不要使用動態(tài)拼裝sql,可以使用參數(shù)化的sql或者直接使用存儲過程進行數(shù)據(jù)查詢存取。3.永遠不要使用管理員權(quán)限的數(shù)據(jù)庫連接,為每個應(yīng)用使用單獨的權(quán)限有限的數(shù)據(jù)庫連接。4.不要把機密信息直接存放,加密或者hash掉密碼和敏感的信息。5.應(yīng)用的異常信息應(yīng)該給出盡可能少的提示,最好使用自定義的錯誤信息對原始錯誤信息進行包裝。三、SQL容易受到攻擊的過程當(dāng)應(yīng)用程序使用輸入內(nèi)容來構(gòu)造動態(tài)sql語句以訪問數(shù)據(jù)庫時,會發(fā)生sql注入攻擊。如果代碼使用存儲過程,而這些存儲過程作為包含未篩選的用戶輸入的字符串來傳遞,也會發(fā)生sql注入。sql注入可能導(dǎo)致攻擊者使用應(yīng)用程序登陸在數(shù)據(jù)庫中執(zhí)行命令。如果應(yīng)用程序使用特權(quán)過高的帳戶連接到數(shù)據(jù)庫,這種問題會變得很嚴(yán)重。在某些表單中,用戶輸入的內(nèi)容直接用來構(gòu)造動態(tài)sql命令,或者作為存儲過程的輸入?yún)?shù),這些表單特別容易受到sql注入的攻擊。而許多網(wǎng)站程序在編寫時,沒有對用戶輸入的合法性進行判斷或者程序中本身的變量處理不當(dāng),使應(yīng)用程序存在安全隱患。這樣,用戶就可以提交一段數(shù)據(jù)庫查詢的代碼,根據(jù)程序返回的結(jié)果,獲得一些敏感的信息或者控制整個服務(wù)器,于是sql注入就發(fā)生了?!救蝿?wù)總結(jié)】該任務(wù)學(xué)習(xí)了SQL注入的一些理論知識,這部分內(nèi)容學(xué)習(xí)起來比較難懂,該任務(wù)也僅僅是為了讓學(xué)生們了解SQL注入的概念及防范的簡單措施。不需要深入研究如何注入及如何具體防范SQL注入,這些深層次的內(nèi)容學(xué)生可以在主修自己專業(yè)的方向上研究。任務(wù)四數(shù)據(jù)庫安全防范【任務(wù)介紹】通過此任務(wù)的學(xué)習(xí),學(xué)生可以完成Windows平臺上web數(shù)據(jù)庫的安全管理與防范,避免由于設(shè)計、管理等因素引起的數(shù)據(jù)庫入侵和破壞。【任務(wù)分析】

數(shù)據(jù)庫是Web的命脈,由于管理者的安全疏漏使得其成為攻擊者入侵Web的入口。如何來加固Web數(shù)據(jù)庫呢?本次任務(wù)就以當(dāng)前使用比較廣泛的Access和MSSQL數(shù)據(jù)庫為例,講述Web數(shù)據(jù)庫的安全防護?!救蝿?wù)實施】本任務(wù)有兩個子任務(wù),分別以常見數(shù)據(jù)庫來講述數(shù)據(jù)庫在網(wǎng)站建設(shè)中如何做基本的防護操作。子任務(wù)1:

Access數(shù)據(jù)庫防下載

數(shù)據(jù)庫被下載這對Web來說幾乎是毀滅性的,因為攻擊者從中可以獲取包括管理員帳戶及密碼等在內(nèi)的敏感信息,然后實施進一步的攻擊??杀幌螺d的數(shù)據(jù)庫主要是Access數(shù)據(jù)庫,采用這種數(shù)據(jù)庫的Web站點不在少數(shù)。防止Access數(shù)據(jù)庫下載,可以從以下幾個方面入手。步驟一:數(shù)據(jù)庫改名數(shù)據(jù)庫改名包括兩部分,首先將其改成比較生僻的名稱,建議名字足夠長并使用某些特殊字符以防被攻擊者猜中。建議首字母為#字符。另外,將mdb后綴改為asp,以防數(shù)據(jù)庫被下載。當(dāng)然數(shù)據(jù)庫改名后,數(shù)據(jù)庫連接配置文件也要進行修改。如圖45所示。步驟二:改變數(shù)據(jù)庫路徑

站點系統(tǒng)都有默認的數(shù)據(jù)庫路徑,由于安全意識淡薄,部署Web站點時有很多人不去修改數(shù)據(jù)庫路徑,因而攻擊者很容易地猜到該站點的數(shù)據(jù)庫路徑。

更改數(shù)據(jù)庫路徑,大家可以在站點目錄下創(chuàng)建比較生僻的目錄,然后將數(shù)據(jù)庫文件拷貝到該目錄中。當(dāng)然,更改數(shù)據(jù)庫路徑后,需要修改站點系統(tǒng)的數(shù)據(jù)庫連接文件。一般asp站點系統(tǒng)的數(shù)據(jù)庫連接文件是conn.asp。打開該文件后,然后根據(jù)實際情況進行修改,使得其跟當(dāng)前的數(shù)據(jù)庫路徑相一致。如圖46所示。步驟三:設(shè)置好目錄權(quán)限要設(shè)置好數(shù)據(jù)庫目錄的訪問權(quán)限,原則是權(quán)限最小化以防止非正常的訪問。因為Web程序是通過IIS用戶運行的,我們只要給IIS用戶讀取和寫入權(quán)限,然后通過“IIS管理器”把這個目錄的腳本執(zhí)行權(quán)限去掉,防止入侵者在該目錄中通過上傳獲得webshell了。如圖47所示。步驟四:設(shè)置好數(shù)據(jù)庫的NTFS權(quán)限要設(shè)置好數(shù)據(jù)庫的NTFS訪問權(quán)限,原則是權(quán)限最小化以防止非正常的訪問。因為Web程序是通過IIS用戶運行的,我們只要給IIS用戶讀取和寫入權(quán)限和系統(tǒng)管理員賬戶所有權(quán)限即可。右鍵選擇數(shù)據(jù)庫文件,點擊屬性,找到“安全”選項卡,只保留”administrators”,”Internet來賓賬戶”,其中要確?!盜nternet來賓賬戶”用戶的權(quán)限為“讀取”“寫入”,如圖48所示。步驟五:添加mdb的擴展映射IIS對于不能解析的文件類型就會彈出下載對話框讓用戶下載,我們可以通過在IIS管理器中添加對mdb的擴展映射,防止數(shù)據(jù)庫被下載。

其設(shè)置方法是:打開IIS管理器定位到相應(yīng)的Web站點,右鍵選擇“屬性”,然后依次點擊“主目錄→配置→映射”,在“應(yīng)用程序擴展”里面添加.mdb文件應(yīng)用解析,至于用于解析它的可執(zhí)行文件大家可以自己進行選擇,只要讓攻擊者無法訪問數(shù)據(jù)庫文件就可以了。如圖49,50,51所示。步驟六:數(shù)據(jù)庫改造思路是將數(shù)據(jù)庫后綴名(.mdb)修改為.asp,然后在數(shù)據(jù)庫中加上一個NotDownLoad的表以防數(shù)據(jù)庫被下載。具體添加字段的操作方法如下:首先新建一個.asp文件(notdown.asp),其代碼如下:<%db="Data/26net.asp"'這里改成你的數(shù)據(jù)庫地址,這是相對根目錄的地址setconn=server.createobject("Adodb.Connection")conn.Open"driver={MicrosoftAccessDriver(*.mdb)};dbq="&Server.MapPath(db)conn.execute("createtablenotdownload(notdownoleobject)")setrs=server.createobject("adodb.recordset")sql="select*fromnotdownload"rs.opensql,conn,1,3rs.addnewrs("notdown").appendchunk(chrB(asc("<"))&chrB(asc("%")))rs.updaters.closesetrs=nothingconn.closesetconn=nothingresponse.write”防止下載數(shù)據(jù)庫改造成功!”%>然后在服務(wù)器端運行notdown.asp,這樣在數(shù)據(jù)庫添加了包含notdown字段的notdownload數(shù)據(jù)表,即可防止數(shù)據(jù)庫的下載,因為notdown有一個值是"<%",asp運行是因缺少"%>"關(guān)閉標(biāo)記而拒絕訪問,下載當(dāng)然會失敗。如圖52所示。同時要注意在access數(shù)據(jù)庫改后綴名為.asp后,要把其他asp調(diào)用數(shù)據(jù)庫的連接文件也要修改成.asp的后綴。子任務(wù)2:MSSQL數(shù)據(jù)庫防注入MSSQL數(shù)據(jù)庫是大中型Web站點常采用的數(shù)據(jù)庫,對于SQL數(shù)據(jù)最大的威脅是注入。攻擊者通過注入來調(diào)用SQL語句執(zhí)行系統(tǒng)命令,因此其危險性更大。一個注入點,有可能造成整個Web服務(wù)器的淪陷。根據(jù)任務(wù)3(防止SQL注入攻擊)的指導(dǎo)思想,防MSSQL注入可以從下面幾個方面入手。步驟一:慎重選擇建站系統(tǒng)通過站點系統(tǒng)建立一個Web站點是非常容易的,但是某些站點系統(tǒng)代碼編寫不夠嚴(yán)謹(jǐn),考慮不周,變量過濾不嚴(yán)等使得可被攻擊者利用。因此,選擇一款安全的站點系統(tǒng)是至關(guān)重要的。當(dāng)然,沒有百分之百安全的站點系統(tǒng)。管理員如果懂代碼的話可以進行檢測分析,看看是否有漏洞。另外,可以扮演入侵者進行入侵檢測。最后,及時打補丁也是非常重要的。步驟二:最小權(quán)限連接數(shù)據(jù)庫

Web站點連接數(shù)據(jù)庫都是通過相應(yīng)的賬戶進行連接,在這些賬戶中SA是權(quán)限最大的也是最危險的。數(shù)據(jù)庫不要用SA賬戶,使用SA賬戶連接

數(shù)據(jù)庫對服務(wù)器來說就是一場災(zāi)難。一般來說可以使用DB_OWNER權(quán)限賬戶連接數(shù)據(jù)庫,如果可以正常運行,使用public用戶最安全的。設(shè)置成dbo權(quán)限連接數(shù)據(jù)庫之后,入侵者基本就只能通過猜解用戶名和密碼或者是差異備份來獲得webshell了,對于前者,我們可以通過加密和修改管理后臺的默認登陸地址來防御。對于差異備份,我們知道它的條件是有備份的權(quán)限,并且要知道web的目錄。這樣被攻擊的可能性大大地降低。如圖53所示。

步驟三:刪除危險的存儲過程

MSSQL數(shù)據(jù)庫系統(tǒng)集成了較多的存儲過程,這些命令集方便了我們的操作當(dāng)然也為攻擊者入侵Web提供了便利。因此我們要根據(jù)需要刪除某些在Web中用不到的,并且可被攻擊者利用才存儲過程。比如xp_regread和xp_dirtree這兩個存儲過程可被攻擊者用來讀取注冊表信息和列目錄,我們可以刪除。另外,xp_cmdshell可被用來執(zhí)行DOS命令比如建立系統(tǒng)賬戶等等,是非常危險的。sp_makwebtask過程,可以讀取SQLSELECT命令所得到的結(jié)果到表格形式的HTML文件中。這些比較危險,可被攻擊者利用的存儲過程我們可以刪除。比如刪除xp_cmdshell可以執(zhí)行“execmaster..sp_dropextendedprocxp_cmdshell”,其它的類似。如圖54步驟四:修改錯誤頁,誤導(dǎo)攻擊者SQL注入入侵是根據(jù)IIS給出的ASP錯誤提示信息來入侵的,如果我們把IIS設(shè)置成不管出什么樣的ASP錯誤,只給出一種錯誤提示信息,即http500錯誤,那么攻擊者就無法獲得敏感信息實施入侵了。打開IIS管理器選擇相應(yīng)的Web站點打開其站點“屬性”窗口,在“自定義錯誤”選項卡下選擇“500:100”點擊“編輯”打開“編輯自定義錯誤屬性”窗口,消息類型選擇“文件”,然后通過瀏覽定位到自己構(gòu)造的錯誤頁,比如“c:\test.htm”,然后確定即可。如圖55【知識擴展】

一、數(shù)據(jù)庫安全

數(shù)據(jù)庫系統(tǒng)的安全除依賴自身內(nèi)部的安全機制外,還與外部網(wǎng)絡(luò)環(huán)境、應(yīng)用環(huán)境、從業(yè)人員素質(zhì)等因素息息相關(guān),因此,從廣義上講,數(shù)據(jù)庫系統(tǒng)的安全框架可以劃分為三個層次:

網(wǎng)絡(luò)系統(tǒng)層次;

宿主操作系統(tǒng)層次;

數(shù)據(jù)庫管理系統(tǒng)層次。這三個層次構(gòu)筑成數(shù)據(jù)庫系統(tǒng)的安全體系,與數(shù)據(jù)安全的關(guān)系是逐步緊密的,防范的重要性也逐層加強,從外到內(nèi)、由表及里保證數(shù)據(jù)的安全。下面就安全框架的三個層次展開論述?!局R擴展】

1.網(wǎng)絡(luò)系統(tǒng)層次安全技術(shù)從廣義上講,數(shù)據(jù)庫的安全首先依賴于網(wǎng)絡(luò)系統(tǒng)。隨著Internet的發(fā)展和普及,越來越多的公司將其核心業(yè)務(wù)向互聯(lián)網(wǎng)轉(zhuǎn)移,各種基于網(wǎng)絡(luò)的數(shù)據(jù)庫應(yīng)用系統(tǒng)如雨后春筍般涌現(xiàn)出來,面向網(wǎng)絡(luò)用戶提供各種信息服務(wù)。可以說網(wǎng)絡(luò)系統(tǒng)是數(shù)據(jù)庫應(yīng)用的外部環(huán)境和基礎(chǔ),數(shù)據(jù)庫系統(tǒng)要發(fā)揮其強大作用離不開網(wǎng)絡(luò)系統(tǒng)的支持,數(shù)據(jù)庫系統(tǒng)的用戶(如異地用戶、分布式用戶)也要通過網(wǎng)絡(luò)才能訪問數(shù)據(jù)庫的數(shù)據(jù)。網(wǎng)絡(luò)系統(tǒng)的安全是數(shù)據(jù)庫安全的第一道屏障,外部入侵首先就是從入侵網(wǎng)絡(luò)系統(tǒng)開始的。網(wǎng)絡(luò)入侵試圖破壞信息系統(tǒng)的完整性、機密性或可信任的任何網(wǎng)絡(luò)活動的集合,具有以下特點:

a)沒有地域和時間的限制,跨越國界的攻擊就如同在現(xiàn)場一樣方便;

b)通過網(wǎng)絡(luò)的攻擊往往混雜在大量正常的網(wǎng)絡(luò)活動之中,隱蔽性強;

c)入侵手段更加隱蔽和復(fù)雜。【知識擴展】

計算機網(wǎng)絡(luò)系統(tǒng)開放式環(huán)境面臨的威脅主要有以下幾種類型:

a)欺騙(Masquerade);

b)重發(fā)(Replay);

c)報文修改(Modificationofmessage);

d)拒絕服務(wù)(Denyofservice);

e)陷阱門(Trapdoor);

f)特洛伊木馬(Trojanhorse);

g)攻擊,如透納攻擊(TunnelingAttack)、應(yīng)用軟件攻擊等。這些安全威脅是無時、無處不在的,因此必須采取有效的措施來保障系統(tǒng)的安全?!局R擴展】

從技術(shù)角度講,網(wǎng)絡(luò)系統(tǒng)層次的安全防范技術(shù)有很多種,大致可以分為防火墻、入侵檢測、協(xié)作式入侵檢測技術(shù)等。防火墻防火墻是應(yīng)用最廣的一種防范技術(shù)。作為系統(tǒng)的第一道防線,其主要作用是監(jiān)控可信任網(wǎng)絡(luò)和不可信任網(wǎng)絡(luò)之間的訪問通道,可在內(nèi)部與外部網(wǎng)絡(luò)之間形成一道防護屏障,攔截來自外部的非法訪問并阻止內(nèi)部信息的外泄,但它無法阻攔來自網(wǎng)絡(luò)內(nèi)部的非法操作。它根據(jù)事先設(shè)定的規(guī)則來確定是否攔截信息流的進出,但無法動態(tài)識別或自適應(yīng)地調(diào)整規(guī)則,因而其智能化程度很有限。防火墻技術(shù)主要有三種:數(shù)據(jù)包過濾器(packetfilter)、代理(proxy)和狀態(tài)分析(statefulinspection)?,F(xiàn)代防火墻產(chǎn)品通?;旌鲜褂眠@幾種技術(shù)?!局R擴展】

⑵入侵檢測入侵檢測(IDS—InstrusionDetectionSystem)是近年來發(fā)展起來的一種防范技術(shù),綜合采用了統(tǒng)計技術(shù)、規(guī)則方法、網(wǎng)絡(luò)通信技術(shù)、人工智能、密碼學(xué)、推理等技術(shù)和方法,其作用是監(jiān)控網(wǎng)絡(luò)和計算機系統(tǒng)是否出現(xiàn)被入侵或濫用的征兆。1987年,DerothyDenning首次提出了一種檢測入侵的思想,經(jīng)過不斷發(fā)展和完善,作為監(jiān)控和識別攻擊的標(biāo)準(zhǔn)解決方案,IDS系統(tǒng)已經(jīng)成為安全防御系統(tǒng)的重要組成部分。入侵檢測采用的分析技術(shù)可分為三大類:簽名、統(tǒng)計和數(shù)據(jù)完整性分析法。⑶協(xié)作式入侵監(jiān)測技術(shù)獨立的入侵監(jiān)測系統(tǒng)不能夠?qū)V泛發(fā)生的各種入侵活動都做出有效的監(jiān)測和反應(yīng),為了彌補獨立運作的不足,人們提出了協(xié)作式入侵監(jiān)測系統(tǒng)的想法。在協(xié)作式入侵監(jiān)測系統(tǒng)中,IDS基于一種統(tǒng)一的規(guī)范,入侵監(jiān)測組件之間自動地交換信息,并且通過信息的交換得到了對入侵的有效監(jiān)測,可以應(yīng)用于不同的網(wǎng)絡(luò)環(huán)境。【知識擴展】

2.宿主操作系統(tǒng)層次安全技術(shù)操作系統(tǒng)是大型數(shù)據(jù)庫系統(tǒng)的運行平臺,為數(shù)據(jù)庫系統(tǒng)提供一定程度的安全保護。目前操作系統(tǒng)平臺大多數(shù)集中在WindowsNT和Unix,安全級別通常為C1、C2級。主要安全技術(shù)有操作系統(tǒng)安全策略、安全管理策略、數(shù)據(jù)安全等方面。操作系統(tǒng)安全策略用于配置本地計算機的安全設(shè)置,包括密碼策略、賬戶鎖定策略、審核策略、IP安全策略、用戶權(quán)利指派、加密數(shù)據(jù)的恢復(fù)代理以及其它安全選項。具體可以體現(xiàn)在用戶賬戶、口令、訪問權(quán)限、審計等方面。用戶賬戶:用戶訪問系統(tǒng)的“身份證”,只有合法用戶才有賬戶??诹睿河脩舻目诹顬橛脩粼L問系統(tǒng)提供一道驗證。訪問權(quán)限:規(guī)定用戶的權(quán)限。審計:對用戶的行為進行跟蹤和記錄,便于系統(tǒng)管理員分析系統(tǒng)的訪問情況以及事后的追查使用。安全管理策略是指網(wǎng)絡(luò)管理員對系統(tǒng)實施安全管理所采取的方法及策略。針對不同的操作系統(tǒng)、網(wǎng)絡(luò)環(huán)境需要采取的安全管理策略一般也不盡相同,其核心是保證服務(wù)器的安全和分配好各類用戶的權(quán)限。數(shù)據(jù)安全主要體現(xiàn)在以下幾個方面:數(shù)據(jù)加密技術(shù)、數(shù)據(jù)備份、數(shù)據(jù)存儲的安全性、數(shù)據(jù)傳輸?shù)陌踩缘???梢圆捎玫募夹g(shù)很多,主要有Kerberos認證、IPSec、SSL、TLS、VPN(PPTP、L2TP)等技術(shù)?!局R擴展】

3.數(shù)據(jù)庫管理系統(tǒng)層次安全技術(shù)數(shù)據(jù)庫系統(tǒng)的安全性很大程度上依賴于數(shù)據(jù)庫管理系統(tǒng)。如果數(shù)據(jù)庫管理系統(tǒng)安全機制非常強大,則數(shù)據(jù)庫系統(tǒng)的安全性能就較好。目前市場上流行的是關(guān)系式數(shù)據(jù)庫管理系統(tǒng),其安全性功能很弱,這就導(dǎo)致數(shù)據(jù)庫系統(tǒng)的安全性存在一定的威脅。由于數(shù)據(jù)庫系統(tǒng)在操作系統(tǒng)下都是以文件形式進行管理的,因此入侵者可以直接利用操作系統(tǒng)的漏洞竊取數(shù)據(jù)庫文件,或者直接利用OS工具來非法偽造、篡改數(shù)據(jù)庫文件內(nèi)容。這種隱患一般數(shù)據(jù)庫用戶難以察覺,分析和堵塞這種漏洞被認為是B2級的安全技術(shù)措施。數(shù)據(jù)庫管理系統(tǒng)層次安全技術(shù)主要是用來解決這一問題,即當(dāng)前面兩個層次已經(jīng)被突破的情況下仍能保障數(shù)據(jù)庫數(shù)據(jù)的安全,這就要求數(shù)據(jù)庫管理系統(tǒng)必須有一套強有力的安全機制。解決這一問題的有效方法之一是數(shù)據(jù)庫管理系統(tǒng)對數(shù)據(jù)庫文件進行加密處理,使得即使數(shù)據(jù)不幸泄露或者丟失,也難以被人破譯和閱讀。【知識擴展】

我們可以考慮在三個不同層次實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)的加密,這三個層次分別是OS層、DBMS內(nèi)核層和DBMS外層。⑴在OS層加密。在OS層無法辨認數(shù)據(jù)庫文件中的數(shù)據(jù)關(guān)系,從而無法產(chǎn)生合理的密鑰,對密鑰合理的管理和使用也很難。所以,對大型數(shù)據(jù)庫來說,在OS層對數(shù)據(jù)庫文件進行加密很難實現(xiàn)。⑵在DBMS內(nèi)核層實現(xiàn)加密。這種加密是指數(shù)據(jù)在物理存取之前完成加/解密工作。這種加密方式的優(yōu)點是加密功能強,并且加密功能幾乎不會影響DBMS的功能,可以實現(xiàn)加密功能與數(shù)據(jù)庫管理系統(tǒng)之間的無縫耦合。其缺點是加密運算在服務(wù)器端進行,加重了服務(wù)器的負載,而且DBMS和加密器之間的接口需要DBMS開發(fā)商的支持。⑶在DBMS外層實現(xiàn)加密。比較實際的做法是將數(shù)據(jù)庫加密系統(tǒng)做成DBMS的一個外層工具,根據(jù)加密要求自動完成對數(shù)據(jù)庫數(shù)據(jù)的加/解密處理。采用這種加密方式進行加密,加/解密運算可在客戶端進行,它的優(yōu)點是不會加重數(shù)據(jù)庫服務(wù)器的負載并且可以實現(xiàn)網(wǎng)上傳輸?shù)募用?,缺點是加密功能會受到一些限制,與數(shù)據(jù)庫管理系統(tǒng)之間的耦合性稍差?!局R擴展】

下面我們進一步解釋在DBMS外層實現(xiàn)加密功能的原理:數(shù)據(jù)庫加密系統(tǒng)分成兩個功能獨立的主要部件:一個是加密字典管理程序,另一個是數(shù)據(jù)庫加/解密引擎。數(shù)據(jù)庫加密系統(tǒng)將用戶對數(shù)據(jù)庫信息具體的加密要求以及基礎(chǔ)信息保存在加密字典中,通過調(diào)用數(shù)據(jù)加/解密引擎實現(xiàn)對數(shù)據(jù)庫表的加密、脫密及數(shù)據(jù)轉(zhuǎn)換等功能。數(shù)據(jù)庫信息的加/解密處理是在后臺完成的,對數(shù)據(jù)庫服務(wù)器是透明的。按以上方式實現(xiàn)的數(shù)據(jù)庫加密系統(tǒng)具有很多優(yōu)點:首先,系統(tǒng)對數(shù)據(jù)庫的最終用戶是完全透明的,管理員可以根據(jù)需要進行明文和密文的轉(zhuǎn)換工作;其次,加密系統(tǒng)完全獨立于數(shù)據(jù)庫應(yīng)用系統(tǒng),無須改動數(shù)據(jù)庫應(yīng)用系統(tǒng)就能實現(xiàn)數(shù)據(jù)加密功能;第三,加解密處理在客戶端進行,不會影響數(shù)據(jù)庫服務(wù)器的效率?!局R擴展】

數(shù)據(jù)庫加/解密引擎是數(shù)據(jù)庫加密系統(tǒng)的核心部件,它位于應(yīng)用程序與數(shù)據(jù)庫服務(wù)器之間,負責(zé)在后臺完成數(shù)據(jù)庫信息的加/解密處理,對應(yīng)用開發(fā)人員和操作人員來說是透明的。數(shù)據(jù)加/解密引擎沒有操作界面,在需要時由操作系統(tǒng)自動加載并駐留在內(nèi)存中,通過內(nèi)部接口與加密字典管理程序和用戶應(yīng)用程序通訊。數(shù)據(jù)庫加/解密引擎由三大模塊組成:加/解密處理模塊、用戶接口模塊和數(shù)據(jù)庫接口模塊。其中,“數(shù)據(jù)庫接口模塊”的主要工作是接受用戶的操作請求,并傳遞給“加/解密處理模塊”,此外還要代替“加/解密處理模塊”去訪問數(shù)據(jù)庫服務(wù)器,并完成外部接口參數(shù)與加/脫密引擎內(nèi)部數(shù)據(jù)結(jié)構(gòu)之間的轉(zhuǎn)換?!凹?解密處理模塊”完成數(shù)據(jù)庫加/解密引擎的初始化、內(nèi)部專用命令的處理、加密字典信息的檢索、加密字典緩沖區(qū)的管理、SQL命令的加密變換、查詢結(jié)果的脫密處理以及加脫密算法實現(xiàn)等功能,另外還包括一些公用的輔助函數(shù)?!局R擴展】

數(shù)據(jù)加/解密處理的主要流程如下:

1)對SQL命令進行語法分析,如果語法正確,轉(zhuǎn)下一步;如不正確,則轉(zhuǎn)6),直接將SQL命令交數(shù)據(jù)庫

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論