資源描述:
《網(wǎng)頁(yè)制作與電子商務(wù)網(wǎng)站安全》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、網(wǎng)頁(yè)制作與電子商務(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)站安全的考慮,在編寫網(wǎng)頁(yè)代碼時(shí),應(yīng)注意的一些防范方法的介紹,以促進(jìn)人們對(duì)網(wǎng)頁(yè)制作中的安全防范技術(shù)的了解。 [關(guān)鍵詞]網(wǎng)站安全腳本數(shù)據(jù)庫(kù)交互 一、引言 Inter已滲透到了社會(huì)的各個(gè)領(lǐng)域,不僅影響著我們的學(xué)習(xí)和工作,在Inter的發(fā)展中,的發(fā)明和迅速推廣應(yīng)用是一個(gè)重要的里程碑。網(wǎng)頁(yè)設(shè)計(jì)作為一門新興
2、的技術(shù),是介于平面設(shè)計(jì)、編程技術(shù)兩者之間的一門學(xué)科,它還涉及到美學(xué)心理、平面構(gòu)成、色彩搭配等平面設(shè)計(jì)方面的知識(shí)。只有綜合運(yùn)用多種知識(shí),才能設(shè)計(jì)出視聽特效、動(dòng)靜結(jié)合、人機(jī)交互的icrosoftASP腳本 普遍存在的問題是程序員在編寫ASP腳本時(shí),缺少或沒有對(duì)客戶端輸入的數(shù)據(jù)/變量進(jìn)行嚴(yán)格的合法性分析。因此,如果攻擊者輸入某些特定sql語(yǔ)句,可能造成數(shù)據(jù)庫(kù)資料丟失/泄漏/甚至威脅整個(gè)站點(diǎn)的安全。比如攻擊者可以任意創(chuàng)建或者刪除表(如果可以猜測(cè)出已存在的表名),清除或者更改數(shù)據(jù)庫(kù)數(shù)據(jù)。攻擊者也可能通過執(zhí)行一些儲(chǔ)存過程函數(shù),將sql語(yǔ)句的輸出結(jié)果通過電子郵
3、件發(fā)送給自己,或者執(zhí)行系統(tǒng)命令?! 、跴HP和Perl 雖然提供了加上””(取消特殊字符含義)處理的手段,但是處理一些數(shù)據(jù)庫(kù)時(shí)依然可以被改寫。對(duì)于MySQL則沒有問題,’不會(huì)與前面的單引號(hào)封閉,而當(dāng)作一個(gè)合法的字符處理。針對(duì)oracle和informix等數(shù)據(jù)庫(kù)暫時(shí)未進(jìn)行相關(guān)測(cè)試?! ×硗?,對(duì)于PHP或者Perl語(yǔ)言,很多程序?qū)τ跀?shù)字類型的輸入變量,沒有加單引號(hào)予以保護(hù),攻擊者就有可能在這種變量中加入額外的SQL語(yǔ)句,來(lái)攻擊數(shù)據(jù)庫(kù)或者獲得非法控制權(quán)限。 (2)數(shù)據(jù)庫(kù)問題 不同的數(shù)據(jù)庫(kù)對(duì)安全機(jī)制的不同認(rèn)識(shí)和實(shí)現(xiàn)方法,使它們的安全性也有所不同
4、。最常見的問題是利用數(shù)據(jù)庫(kù)對(duì)某些字符的不正確解釋,改寫被執(zhí)行的SQL語(yǔ)句,從而非法獲得訪問權(quán)限?! ?.大量數(shù)據(jù)查詢導(dǎo)致拒絕服務(wù) 許多網(wǎng)站對(duì)用戶輸入內(nèi)容的判斷在前臺(tái),用JavaScript判斷,如果用戶繞過前臺(tái)判斷,就能對(duì)數(shù)據(jù)庫(kù)進(jìn)行全查詢,如果數(shù)據(jù)庫(kù)比較龐大,會(huì)耗費(fèi)大量系統(tǒng)資源,如果同時(shí)進(jìn)行大量的這種查詢操作,就會(huì)有DenialofService(DoS——拒絕服務(wù))同樣的效果?! ∪⒋胧┡c解決方案 通過查閱一些資料,下面介紹一些網(wǎng)頁(yè)制作中安全防范的方法,以供大家參考?! ?.防范腳本攻擊 (1)JS腳本和HTML腳本攻擊的防范其實(shí)很簡(jiǎn)單,
5、只要用server.HTMLEncode(Str)就可以了。當(dāng)然全以<%=uid%>過濾,為了方便的過濾,只需要將HTML腳本和JS腳本中的幾個(gè)關(guān)鍵字符過濾掉就可以了,如下代碼所示: 以下是過濾函數(shù)CHK() <% functionCHK(fqyString) fqyString=replace(fqyString,“>”,“>”) fqyString=replace(fqyString,“<”,”<“) fqyString=replace(fqyString,“#”,“”) fqyString=Replace(fqyString,C
6、HR(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>“)
7、CHK=fqyString endfunction %> (2)很多站點(diǎn)在用戶注冊(cè),或者是用戶資料修改的頁(yè)面上也缺少腳本的過濾,或者是只在其中之一進(jìn)行過濾,注冊(cè)進(jìn)入后修改資料仍然可以進(jìn)行腳本攻擊。對(duì)用戶提交的數(shù)據(jù)進(jìn)行檢測(cè)和過濾如以下代碼: IfInstr(request(”username“),”=“)>0or Instr(request(”username“),”%“)>0or Instr(request(”username“),chr(32))>0or Instr(request(”username“),”?“)>0or ……
8、 Instr(request(”username“),”>“)>0or Instr(request(”username“