秦文生
摘要:實訓(xùn)操作是職業(yè)學(xué)校各專業(yè)教學(xué)中的重要一環(huán),搭建一套基于Web服務(wù)的Windows server 2003安全實驗系統(tǒng),在實訓(xùn)室內(nèi)部中就可以開展多種安全攻防實訓(xùn)。
關(guān)鍵詞:信息安全;Web安全;仿真;實驗平臺;網(wǎng)絡(luò)攻防平臺
中圖分類號:G710 文獻(xiàn)標(biāo)志碼:A 文章編號:1674-9324(2017)37-0257-02
一、引言
實訓(xùn)操作是職業(yè)學(xué)校各專業(yè)教學(xué)中的重要一環(huán)。進(jìn)行信息安全的實驗時,沒有相關(guān)的實驗平臺,實驗就很難開展。本系統(tǒng)搭建了一套基于Web服務(wù)的Windows server 2003靶機(jī)系統(tǒng),從而在實訓(xùn)室內(nèi)部網(wǎng)中就可以開展相關(guān)安全測試和評估,為各開展信息安全課程的職業(yè)院校相關(guān)專業(yè)提供借鑒和參考。
二、Web安全系統(tǒng)部署
對于進(jìn)行初級階段練習(xí)的靶機(jī)環(huán)境,不選擇最新的系統(tǒng)和軟件,本系統(tǒng)選擇了Windows server 2003企業(yè)版作為操作系統(tǒng),雷弛新聞系統(tǒng)v1.0和2.0等作為Web安全測試系統(tǒng)。
使用者可以通過仿真的安全環(huán)境,可以實現(xiàn)對SQL注入,文件上傳,XSS跨站的安全測試,并可以使用某些免費的Web防火墻進(jìn)行安全加固,在安全的攻與防中提高對Web安全的認(rèn)識。
三、安全漏洞分析
1.萬能密碼漏洞分析。
雷弛V1.0系統(tǒng)存在萬能密碼漏洞(用戶名寫:'or 1 or' 或 'or'='or' )。漏洞文件在后臺驗證文件上/admin/CHKLOGIN.ASP中,見代碼4-7行:
dim rs
admin1=request("admin") '沒有任何過濾
password1=request("password")'沒有任何過濾
set rs=server.CreateObject("ADODB.RecordSet")
rs.open "select * from admin where admin='"& admin1 &"' and password='"&encrypt(password1)&"'",conn,1'帶入SQL查詢中時依然沒有過濾
if rs.eof and rs.bof then
因此可以構(gòu)造SQL語句,利用“萬能密碼”登錄。此系統(tǒng)使用ACCSESS小型數(shù)據(jù)庫,access數(shù)據(jù)庫的運算優(yōu)先級與其他數(shù)據(jù)庫稍有不同,根據(jù)microsoft官方的ACCSEE的SQL語句的運算符優(yōu)先級資料分析如下:
構(gòu)造一個用戶名為“ 'or 1 or' ”的用戶帶入原SQL語句,分析此SQL后半部分的邏輯值過程如下:
(1)SELECT * from admin where admin='' or 1 or '' and password='';(''為兩個單引號,為轉(zhuǎn)義字符,單引號里面的內(nèi)容不做任何解析)
在這個表達(dá)式里,由于沒有優(yōu)先級別1-3的運算符,第一批執(zhí)行的是優(yōu)先級為4的比較優(yōu)運算符,即“=”等于,顯然,這次運算的結(jié)果不成立,為0。此時表達(dá)式結(jié)果如下:
(2)SELECT * from admin where 0 or 1 or '' and 0;
第二批執(zhí)行的優(yōu)先級別為6的“and”運算符,此時'' (兩個單引號,內(nèi)容為空)and與0相與,結(jié)果仍為0,此時表達(dá)式結(jié)果如下:
(3)SELECT * from admin where 0 or 1 or 0;
第三批執(zhí)行的優(yōu)先級別為7的“or”運算符,此時0與1相或,結(jié)果變成了1,此時表達(dá)式成立,結(jié)果如下:
(4)SELECT * from admin where 1 or 0
第三批執(zhí)行的優(yōu)先級別為7的“or”運算符,此時1與0相或,結(jié)果仍為1,此時where后的整個表達(dá)式宣告成立,整體結(jié)果為1,可以成功地通過系統(tǒng)對用戶名密碼的驗證。
2.SQL注入漏洞。
雷弛V1.0中http://172.16.57.120:87/onews.asp?id=44存在SQL注入漏洞,
打開數(shù)據(jù)庫發(fā)現(xiàn)有11個字段,可以構(gòu)造這樣的語句來進(jìn)行:
-1 union select 1,admin,password,4,5,6,7,8,9,
10,11 from admin
其中的-1是讓原本的SQL不成立就執(zhí)行后面的聯(lián)合查詢語句,其中位置2和3是網(wǎng)頁會在網(wǎng)頁中顯示的字段。使用
http://172.16.57.120:87/onews.asp?id=44%20union%20select%201,admin,password,4,5,6,7,8,9,10,11%20from%20admin進(jìn)行測試,可獲得用戶名和密碼,用戶名“admin”,密碼為“bfpms”(簡單加密后的密碼)。
3.cookie注入漏洞。
雷池新聞系統(tǒng)的2.0增強(qiáng)版本,加入了防注入系統(tǒng),但是經(jīng)過分析知道在SQL通用防注入系統(tǒng)3.0版存在cookie注入漏洞,在/sql/Neeao_SqlIn.Asp文件中:
文件只對GET和POST提交方式進(jìn)行檢測合法性。網(wǎng)頁文件在接受處理方式的時候一般是POST或GET兩種方式。比如Request.form或Request.QueryString。而防注入程序3.0是限制,這兩種方式提交。卻沒有限制Request.cookie的方式。
此時使用可修改cookies的瀏覽器(或插件),根據(jù)瀏覽器對cookies的處理機(jī)制不同,有的會對URL自動進(jìn)行URL編碼,有的需要手動進(jìn)行。endprint
注入語句:
id=-1 union select 1,admin,password,4,5,6,7,8,
9,10,11 from admin
(1)Cookies browswer:可以自動編碼,1設(shè)置好cookies后,點修改cookies,然后點右鍵,“重新載入”,即可。
(2)中國菜刀:需要手動編碼(含特殊符號的必須用URL編碼,空格的URL編碼即20%,編碼后為:id=-1%20union%20select%201,admin,password,4,5,6,7,8,9,10,11%20from%20admin)
4.XSS漏洞。
使用IE6.0瀏覽器,在“新聞搜索”框里輸入任意數(shù)字111,得到如下url地址
http://10.92.92.32/leichinews/search.asp?key=111&
otype=title&Submit=%CB%D1%CB%F7
將111后面字符串刪除,插入一些跨站語句進(jìn)行測試,發(fā)現(xiàn)存在XSS漏洞。
http://192.168.33.150/search.asp?key=111
alert('XSS')
http://192.168.33.150/search.asp?key=111
alert(document.cookie)
四、網(wǎng)站安全加固
Web應(yīng)用安全問題本質(zhì)上源于軟件質(zhì)量問題。一方面Web程序通常是某個機(jī)構(gòu)所獨有的,另一方面,Web應(yīng)用需要頻繁地變更以滿足業(yè)務(wù)目標(biāo),從而使得很難維持有序的開發(fā)周期;針對Web應(yīng)用安全,折中的解決方案是使用由專業(yè)的安全公司開發(fā)的Web安全防護(hù)產(chǎn)品,即Web防火墻,Web防火墻有硬件的也有軟件的,本文使用的為軟件的。
1.自動:安裝本地Web防火墻。
在Windows平臺,針對IIS的Web防火墻,常見的有網(wǎng)站安全狗(IIS版)、智創(chuàng)IIS防火墻系統(tǒng)、D盾_IIS防火墻等。這些產(chǎn)品需要在服務(wù)器上安裝,安裝后根據(jù)產(chǎn)品自身內(nèi)置的防護(hù)規(guī)則,會對http流量進(jìn)行監(jiān)控并實施防護(hù)。
2.使用在線的云Web防火墻。
云WAF,也稱WEB應(yīng)用防火墻的云模式。這種模式讓用戶不需要在自己的網(wǎng)絡(luò)中安裝軟件程序或部署硬件設(shè)備,就可以對網(wǎng)站實施安全防護(hù),如防SQL注入、防XSS、防DDOS等。目前常見的云WAF有阿里WAF,360WAF和安全寶WAF等。以阿里云WAF產(chǎn)品功能如下:
3.手動加固。
除了使用各種WAF產(chǎn)品,也可以手動對網(wǎng)站和服務(wù)器進(jìn)行安全加固。目前有關(guān)IIS加固和Windows安全加固的資料在網(wǎng)上特別多,此不贅述。僅就其中幾項關(guān)鍵的地方提示如下:
(1)iis加固。
限制后臺登錄:
刪除所有自定義錯誤。發(fā)送統(tǒng)一出錯信息:
(2)權(quán)限控制。
終極防網(wǎng)馬:有寫入權(quán)限的目錄不給執(zhí)行權(quán)限,即使有webshell傳上來無法運行,給執(zhí)行權(quán)限的不給寫入權(quán)限(即禁止上傳文件)
五、結(jié)論
通過自行構(gòu)建網(wǎng)絡(luò)安全實驗環(huán)境,使用在普通PC上即可進(jìn)行安全測試和安全加固的實訓(xùn),給信息安全課程教學(xué)提供了方便。
參考文獻(xiàn):
[1]阿里云web應(yīng)用防火墻[EB/OL].https://cn.aliyun.com/product/waf.
[2]天融信:淺談云WAF帶來的利與弊[EB/OL].http://www.enet.com.cn/article/2014/0213/A20140213349317.shtml.
[3]解讀Web應(yīng)用防火墻[EB/OL].http://www.2cto.com/article/201010/77002.html.endprint