電子商務(wù)網(wǎng)站安全論文
電子商務(wù)網(wǎng)站安全主要涉及網(wǎng)絡(luò)信息的安全和網(wǎng)絡(luò)系統(tǒng)本身的安全。以下是小編為大家整理好的電子商務(wù)網(wǎng)站安全論文,歡迎大家閱讀參考!
[摘 要] 網(wǎng)頁(yè)制作是目前比較流行的一種行業(yè),它已經(jīng)滲透到社會(huì)的各個(gè)角落,而電子商務(wù)網(wǎng)站中網(wǎng)頁(yè)制作技術(shù)應(yīng)用的最多,本文主要從電子商務(wù)網(wǎng)站的安全隱患、網(wǎng)站安全現(xiàn)狀、網(wǎng)站安全的措施與解決方案、電子商務(wù)發(fā)展等方面進(jìn)行探討,尤其對(duì)于網(wǎng)站安全的考慮,在編寫(xiě)網(wǎng)頁(yè)代碼時(shí),應(yīng)注意的一些防范方法的介紹,以促進(jìn)人們對(duì)網(wǎng)頁(yè)制作中的安全防范技術(shù)的了解。
[關(guān)鍵詞] 網(wǎng)站 安全 腳本 數(shù)據(jù)庫(kù) 交互
一、引言
Internet已滲透到了社會(huì)的各個(gè)領(lǐng)域,不僅影響著我們的學(xué)習(xí)和工作,在Internet的發(fā)展中,WWW的發(fā)明和迅速推廣應(yīng)用是一個(gè)重要的里程碑。網(wǎng)頁(yè)設(shè)計(jì)作為一門(mén)新興的技術(shù),是介于平面設(shè)計(jì)、編程技術(shù)兩者之間的一門(mén)學(xué)科,它還涉及到美學(xué)心理、平面構(gòu)成、色彩搭配等平面設(shè)計(jì)方面的知識(shí)。只有綜合運(yùn)用多種知識(shí),才能設(shè)計(jì)出視聽(tīng)特效、動(dòng)靜結(jié)合、人機(jī)交互的WEB頁(yè)面。
電子商務(wù)網(wǎng)站是一個(gè)非常豐富和方便的系統(tǒng),很多是過(guò)去無(wú)法想像的,隨著今天的社會(huì)的發(fā)展以及科學(xué)技術(shù)的發(fā)展,現(xiàn)在都可以想像得到。由此可以想像到未來(lái)的網(wǎng)頁(yè)設(shè)計(jì),那時(shí)候網(wǎng)頁(yè)設(shè)計(jì)的要求是什么呢?怎樣才能適應(yīng)電子商務(wù)的發(fā)展呢?我有以下幾點(diǎn)想法:網(wǎng)頁(yè)能具有人性化;網(wǎng)頁(yè)要具有相當(dāng)?shù)拿栏?網(wǎng)頁(yè)更加強(qiáng)調(diào)交互性。
二、電子商務(wù)網(wǎng)站的安全現(xiàn)狀
電子商務(wù)網(wǎng)站安全主要涉及網(wǎng)絡(luò)信息的安全和網(wǎng)絡(luò)系統(tǒng)本身的安全。電子商務(wù)網(wǎng)站安全的隱患主要來(lái)自操作系統(tǒng)、網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)的脆弱性以及安全管理上的疏忽。電子商務(wù)網(wǎng)站安全從本質(zhì)上講就是網(wǎng)絡(luò)上信息的安全,包括靜態(tài)信息的存儲(chǔ)安全和信息的傳輸安全。從廣義上講,凡是涉及到網(wǎng)絡(luò)上信息的保密性、完整性、可用性、真實(shí)性和可控性的相關(guān)技術(shù)和理論都是網(wǎng)絡(luò)安全的研究領(lǐng)域。因此為了保證網(wǎng)絡(luò)的安全,必須保證以下四個(gè)方面的安全: 運(yùn)行系統(tǒng)的.安全;
網(wǎng)絡(luò)上系統(tǒng)信息的安全; 網(wǎng)絡(luò)上信息傳播安全; 網(wǎng)絡(luò)上信息內(nèi)容的安全。
以下是對(duì)目前國(guó)內(nèi)電子商務(wù)站點(diǎn)普遍存在的幾個(gè)嚴(yán)重的安全問(wèn)題的一些分析。
1.客戶端數(shù)據(jù)的完整性和有效性檢查
(1)特殊字符的過(guò)濾
在 W3C 的 WWW Security FAQ 中關(guān)于CGI安全編程一節(jié)里列出了建議過(guò)濾的字符:&;“”“|*?-<>^()[]{} ,這些字符由于在不同的系統(tǒng)或運(yùn)行環(huán)境中會(huì)具有特殊意義,如變量定義/賦值/取值、非顯示字符、運(yùn)行外部程序等,而被列為危險(xiǎn)字符。
、貱GI和Script編程語(yǔ)言的問(wèn)題
在幾種國(guó)內(nèi)常見(jiàn)的WEB編程語(yǔ)言中,ASP和Cold Fusion 腳本語(yǔ)言對(duì)特殊字符的過(guò)濾機(jī)制不夠完善,例如沒(méi)有對(duì)單引號(hào)做任何處理等。Perl和php對(duì)特殊字符的過(guò)濾則較為嚴(yán)密,如忽略或加上“”(取消特殊字符含義)處理。C語(yǔ)言編寫(xiě)的cgi程序?qū)μ厥庾址倪^(guò)濾完全依賴于程序員的知識(shí)和技術(shù),因此也可能存在安全問(wèn)題。
、贛icrosoft ASP腳本
普遍存在的問(wèn)題是程序員在編寫(xiě)ASP腳本時(shí),缺少或沒(méi)有對(duì)客戶端輸入的數(shù)據(jù)/變量進(jìn)行嚴(yán)格的合法性分析。因此,如果攻擊者輸入某些特定sql語(yǔ)句,可能造成數(shù)據(jù)庫(kù)資料丟失/泄漏/甚至威脅整個(gè)站點(diǎn)的安全。比如攻擊者可以任意創(chuàng)建或者刪除表(如果可以猜測(cè)出已存在的表名),清除或者更改數(shù)據(jù)庫(kù)數(shù)據(jù)。攻擊者也可能通過(guò)執(zhí)行一些儲(chǔ)存過(guò)程函數(shù),將sql語(yǔ)句的輸出結(jié)果通過(guò)電子郵件發(fā)送給自己,或者執(zhí)行系統(tǒng)命令。
、跴HP和Perl
雖然提供了加上””(取消特殊字符含義)處理的手段,但是處理一些數(shù)據(jù)庫(kù)時(shí)依然可以被改寫(xiě)。對(duì)于MySQL則沒(méi)有問(wèn)題,’不會(huì)與前面的單引號(hào)封閉,而當(dāng)作一個(gè)合法的字符處理。針對(duì)oracle和informix等數(shù)據(jù)庫(kù)暫時(shí)未進(jìn)行相關(guān)測(cè)試。
另外,對(duì)于PHP或者Perl語(yǔ)言,很多程序?qū)τ跀?shù)字類型的輸入變量,沒(méi)有加單引號(hào)予以保護(hù),攻擊者就有可能在這種變量中加入額外的SQL語(yǔ)句,來(lái)攻擊數(shù)據(jù)庫(kù)或者獲得非法控制權(quán)限。
(2)數(shù)據(jù)庫(kù)問(wèn)題
不同的數(shù)據(jù)庫(kù)對(duì)安全機(jī)制的不同認(rèn)識(shí)和實(shí)現(xiàn)方法,使它們的安全性也有所不同。最常見(jiàn)的問(wèn)題是利用數(shù)據(jù)庫(kù)對(duì)某些字符的不正確解釋,改寫(xiě)被執(zhí)行的SQL語(yǔ)句,從而非法獲得訪問(wèn)權(quán)限。
2.大量數(shù)據(jù)查詢導(dǎo)致拒絕服務(wù)
許多網(wǎng)站對(duì)用戶輸入內(nèi)容的判斷在前臺(tái),用JavaScript判斷,如果用戶繞過(guò)前臺(tái)判斷,就能對(duì)數(shù)據(jù)庫(kù)進(jìn)行全查詢,如果數(shù)據(jù)庫(kù)比較龐大,會(huì)耗費(fèi)大量系統(tǒng)資源,如果同時(shí)進(jìn)行大量的這種查詢操作,就會(huì)有Denial of Service(DoS ―― 拒絕服務(wù))同樣的效果。
三、措施與解決方案
通過(guò)查閱一些資料,下面介紹一些網(wǎng)頁(yè)制作中安全防范的方法,以供大家參考。
1.防范腳本攻擊
(1)JS腳本和HTML腳本攻擊的防范其實(shí)很簡(jiǎn)單,只要用server.HTMLEncode(Str)就可以了。當(dāng)然全以<%=uid%>過(guò)濾,為了方便的過(guò)濾,只需要將HTML腳本和JS腳本中的幾個(gè)關(guān)鍵字符過(guò)濾掉就可以了,如下代碼所示:
以下是過(guò)濾函數(shù)CHK()
。%
function CHK(fqyString)
fqyString = replace(fqyString, “>”, “>”)
fqyString = replace(fqyString, “<”, ”<“)
fqyString = replace(fqyString, “&#”, “&”)
fqyString = Replace(fqyString, CHR(32), “ ”)
fqyString = Replace(fqyString, CHR(9), “ ”)
fqyString = Replace(fqyString, CHR(34), “”“)
fqyString = Replace(fqyString, CHR(39), ”‘“)
fqyString = Replace(fqyString, CHR(13), ”“)
fqyString = Replace(fqyString, CHR(10) & CHR(10), ”</P><P> “)
fqyString = Replace(fqyString, CHR(10), ”<BR> “)
CHK = fqyString
end function
%>
(2)很多站點(diǎn)在用戶注冊(cè),或者是用戶資料修改的頁(yè)面上也缺少腳本的過(guò)濾,或者是只在其中之一進(jìn)行過(guò)濾,注冊(cè)進(jìn)入后修改資料仍然可以進(jìn)行腳本攻擊。對(duì)用戶提交的數(shù)據(jù)進(jìn)行檢測(cè)和過(guò)濾如以下代碼:
If Instr(request(”username“),”=“)>0 or
Instr(request(”username“),”%“)>0 or
Instr(request(”username“),chr(32))>0 or
Instr(request(”username“),”?“)>0 or
……
Instr(request(”username“),”>“)>0 or
Instr(request(”username“),”<“)>0 or
Instr(request(”username“),”“”“)>0 then
response.write ”朋友,你的提交用戶名含有非法字符,請(qǐng)更改,謝謝合作 <a href=’****:window.history.go(-1);‘>返回</a>“
response.end
end if
2.防范sql injeciton攻擊
從最一般的.SQL Injection 漏洞攻擊來(lái)看,主要在用戶名和密碼上的過(guò)濾問(wèn)題,提交:用戶名為:‘or’‘=’ 用戶密碼為:‘or’‘=’從程序出發(fā),數(shù)據(jù)庫(kù)在執(zhí)行以下操作Sql=“ SELECT * FROM lUsers WHERE Username=”or“=” and Password = “or”=“”時(shí),SQL 服務(wù)器將返回lUsers表格中的所有記錄,而ASP腳本將會(huì)因此而誤認(rèn)為攻擊者的輸入符 lUsers表格中的第一條記錄,從而允許攻擊者以該用戶的名義登入網(wǎng)站。對(duì)此類注入的防范可以利用以下代碼就可以實(shí)現(xiàn)strUsername = Replace(Request.Form(“Username”), “‘’”, “‘’‘”)
strPassword = Replace(Request.Form(“Password”), “’‘”, “’‘’‘”)
3.防止ASP木馬
防止ASP木馬被上傳到服務(wù)器的方法很簡(jiǎn)單,如果你的論壇支持文件上傳,請(qǐng)?jiān)O(shè)定好你要上傳的文件格式,我不贊成使用可更改的文件格式,直接從程序上鎖定,只有圖象文件格式和壓縮文件就完全可以,因?yàn)槎嘟o自己留點(diǎn)方便也就多給攻擊者留點(diǎn)方便。怎么判斷格式,如下面代碼所示:
判斷文件類型是否合格
Private Function CheckFileExt (fileEXT)
dim Forumupload
Forumupload=”gif,jpg,bmp,jpeg“
Forumupload=split(Forumupload,”,“)
for i=0 to ubound(Forumupload)
if lcase(fileEXT)=lcase(trim(Forumupload(i))) then
CheckFileExt=true
exit Function
else
CheckFileExt=false
end if
next
End Function
上述介紹的一些安全防范的方法在編寫(xiě)網(wǎng)頁(yè)代碼時(shí)被常用到,這些代碼還是較為基本的一些代碼,但能有效的防止一些黑客的攻擊,當(dāng)然加入了這些代碼可能會(huì)降低程序的使用效率。做為一名網(wǎng)站的管理人員或網(wǎng)頁(yè)制作人員在進(jìn)行網(wǎng)頁(yè)制作和網(wǎng)站維護(hù)時(shí)應(yīng)加強(qiáng)安全防范的意識(shí),確保在網(wǎng)絡(luò)上進(jìn)行數(shù)據(jù)傳輸?shù)目煽啃浴?/p>
總之,隨著網(wǎng)頁(yè)制作的技術(shù)不斷的發(fā)展和提高,對(duì)電子商務(wù)的發(fā)展有著不可估量的推進(jìn)作用,對(duì)于網(wǎng)站的安全防范已經(jīng)成為目前發(fā)展電子商務(wù)最需考慮的一個(gè)問(wèn)題之一,在開(kāi)發(fā)網(wǎng)站中應(yīng)注意在網(wǎng)絡(luò)安全方面的考慮。目前如JSP、ASP、PHP、XML等一些網(wǎng)站新技術(shù)融入網(wǎng)頁(yè)制作中,進(jìn)一步提高了網(wǎng)頁(yè)的性能。隨著新的技術(shù)的推出,我相信網(wǎng)頁(yè)制作的發(fā)展會(huì)把我們帶入一嶄新的信息世界。
參考文獻(xiàn):
林 海 楊晨光等編寫(xiě):計(jì)算機(jī)網(wǎng)絡(luò)安全.上海:高等教育出版社