馬蓉平
摘要:隨著互聯(lián)網(wǎng)的發(fā)展,互聯(lián)網(wǎng)+時(shí)代的到來,網(wǎng)站更能快速且直觀體現(xiàn)企業(yè)的文化和變化。在網(wǎng)站建設(shè)中,網(wǎng)頁設(shè)計(jì)工作是重要內(nèi)容。同樣的,網(wǎng)絡(luò)上不懷好意的網(wǎng)絡(luò)攻擊和黑客也迅速的出現(xiàn),網(wǎng)頁設(shè)計(jì)中的安全缺陷及對策分析更顯重要。
Abstract: With the development of the Internet and the arrival of the Internet + era, the website can more quickly and intuitively reflect the culture and changes of the enterprise. In the construction of the website, the web design work is an important content. Similarly, ill-intentioned cyber attacks and hackers on the Internet have also emerged rapidly, so security flaws and countermeasures analysis in web design are more important.
關(guān)鍵詞:網(wǎng)頁設(shè)計(jì)安全;缺陷;對策
Key words: web design security;defects;countermeasures
中圖分類號:TP393.0 文獻(xiàn)標(biāo)識碼:A 文章編號:1006-4311(2018)28-0230-02
0 引言
至1998年3月,中國第一筆互聯(lián)網(wǎng)網(wǎng)上交易的成功,隨著科技日新月異的發(fā)展,網(wǎng)絡(luò)技術(shù)也在不斷的飛速發(fā)展和更新。在這樣的大環(huán)境下,同樣也促進(jìn)了我國電子商務(wù)技術(shù)的迅猛發(fā)展?,F(xiàn)今,電子商務(wù)技術(shù)已經(jīng)不再只是為互聯(lián)網(wǎng)在線企業(yè)服務(wù)。更多的傳統(tǒng)企業(yè)都開始關(guān)注到電子商務(wù)領(lǐng)域,使得現(xiàn)今的電子商務(wù)平臺更加豐富多彩。商務(wù)網(wǎng)站是通過手機(jī)、平板、筆記本等電子設(shè)備,用網(wǎng)頁、APP等不同的形式來展示企業(yè)的特點(diǎn)和形象。通過商務(wù)網(wǎng)站,可以幫助加深用戶對企業(yè)的全方位了解,促進(jìn)貿(mào)易合作的達(dá)成。在這里,網(wǎng)頁設(shè)計(jì)則是網(wǎng)站建設(shè)的關(guān)鍵工作。同時(shí),網(wǎng)絡(luò)上不懷好意的網(wǎng)絡(luò)攻擊和黑客也迅速的出現(xiàn),掌握和了解在網(wǎng)頁設(shè)計(jì)過程中會出現(xiàn)的安全缺陷,同時(shí)分析和了解解決缺陷的方法顯得更加重要。
1 在網(wǎng)頁設(shè)計(jì)過程中常見的安全隱患
隨著新型互聯(lián)網(wǎng)產(chǎn)品的誕生,基于網(wǎng)頁環(huán)境的互聯(lián)網(wǎng)應(yīng)用也越來越廣泛,企業(yè)信息化的過程中各種各樣的應(yīng)用都會放在網(wǎng)頁平臺上來實(shí)現(xiàn),網(wǎng)頁業(yè)務(wù)迅猛發(fā)展同樣也引起了黑客們的強(qiáng)烈關(guān)注,因此網(wǎng)頁安全威脅也凸顯出來,攻擊者可以利用Windows等操作系統(tǒng)自身的漏洞,或者是利用網(wǎng)頁服務(wù)程序中人機(jī)交互時(shí)的SQL注入漏洞等安全缺陷獲得網(wǎng)頁所在服務(wù)器的控制權(quán)限,掌握了控制權(quán)限之后,攻擊者就可以篡改網(wǎng)頁的原始內(nèi)容和數(shù)據(jù),同時(shí)可以復(fù)制網(wǎng)頁的內(nèi)部數(shù)據(jù)。與此同時(shí),攻擊者更可以在網(wǎng)頁中加載木馬等惡意代碼,使得被攻擊的網(wǎng)站成為惡意代碼的傳播者。
在網(wǎng)站建設(shè)中除了要實(shí)現(xiàn)網(wǎng)站的基本功能之外,設(shè)計(jì)者還需要考慮到網(wǎng)站的安全性。最近幾年,很多網(wǎng)站都曾被黑客攻擊過。在網(wǎng)站安全性引起重視的時(shí)候,黑客的技術(shù)也在不斷的提高,特別是利用ASP程序制作的網(wǎng)站,一些網(wǎng)站訪問起來很正常,可是查看網(wǎng)站源代碼時(shí),就會發(fā)現(xiàn)底部有很多不明含義的隱藏內(nèi)容。那么,網(wǎng)頁設(shè)計(jì)中都有哪些常見的安全缺陷。
2 網(wǎng)頁設(shè)計(jì)中常見的安全缺陷
2.1 登錄驗(yàn)證漏洞
①登錄驗(yàn)證漏洞指的是攻擊者繞過登錄時(shí)的驗(yàn)證系統(tǒng)直接進(jìn)入到其他頁面的漏洞。例如有些網(wǎng)站的頁面沒有做用戶登錄驗(yàn)證系統(tǒng)功能設(shè)計(jì)。那么,攻擊者在收集到網(wǎng)站的頁面完整路徑和文件名后,在瀏覽器的地址欄中直接輸入完整URL路徑,就可以不進(jìn)行驗(yàn)證而進(jìn)入指定頁面。
②登錄驗(yàn)證漏洞的另一種是登錄驗(yàn)證頁面漏洞。多數(shù)網(wǎng)站都有登錄頁面,要求用戶輸入正確的用戶名和密碼后才可以進(jìn)入頁面,而驗(yàn)證系統(tǒng)都是通過判定用戶輸入的用戶名和密碼是否存在于數(shù)據(jù)庫中來進(jìn)行。但是,如果程序設(shè)計(jì)的不夠嚴(yán)謹(jǐn),則會出現(xiàn)這種漏洞。
2.2 SQL注入漏洞
在網(wǎng)頁設(shè)計(jì)中,多數(shù)人機(jī)交互操作都是利用表單來實(shí)現(xiàn)的,如果在設(shè)計(jì)過程中沒有對用戶輸入數(shù)據(jù)的正當(dāng)性進(jìn)行判定的話,攻擊者可以在文本框中提交一段SQL查詢代碼,根據(jù)程序返回的結(jié)果,獲得某些他想得知的數(shù)據(jù),這就是SQL注入。
2.3 文件上傳的漏洞
文件上傳漏洞指的是網(wǎng)絡(luò)攻擊者上傳了一個(gè)可執(zhí)行的惡意代碼到服務(wù)器并被執(zhí)行。在我們平時(shí)常用的很多網(wǎng)站中,例如電子郵件網(wǎng)站、論壇等很多網(wǎng)站中,都允許用戶上傳文件、圖片、視頻等內(nèi)容到網(wǎng)站服務(wù)器中。如果網(wǎng)站的開發(fā)人員沒有做好身份的認(rèn)證和數(shù)據(jù)的過濾排查,很有可能被黑客利用。黑客可以利用如Telnet服務(wù)等功能對網(wǎng)站內(nèi)容和數(shù)據(jù)進(jìn)行修改和破壞。這里上傳的惡意文件可以是木馬程序、病毒,Webshell或者惡意腳本等。這種攻擊方式直接、簡單又有效。
2.4 網(wǎng)站缺乏授權(quán)[1]
有些網(wǎng)站在進(jìn)行網(wǎng)頁編程設(shè)計(jì)時(shí),程序設(shè)計(jì)人員往往會使用比較繁瑣的網(wǎng)絡(luò)安全配置,使得網(wǎng)站往往缺乏授權(quán),這就造成了網(wǎng)絡(luò)服務(wù)在其應(yīng)用運(yùn)行中出現(xiàn)非常巨大的網(wǎng)絡(luò)運(yùn)行安全缺陷。利用這些安全缺陷,網(wǎng)絡(luò)黑客們可以很容易地對網(wǎng)站的網(wǎng)絡(luò)服務(wù)器進(jìn)行遠(yuǎn)程的入侵和破壞,給網(wǎng)站的安全和企業(yè)的經(jīng)濟(jì)利益帶來了巨大的威脅和危害。再加上軟件設(shè)置的密碼簡單或是網(wǎng)絡(luò)入口的防火墻性能設(shè)置過低等安全缺陷,也可以讓網(wǎng)絡(luò)黑客和網(wǎng)絡(luò)病毒能夠非常容易的對網(wǎng)站造成侵入和破壞。
2.5 網(wǎng)頁病毒的傳播
網(wǎng)頁病毒是現(xiàn)今最常見的安全攻擊。病毒具有寄生性、傳染性、可觸發(fā)性等特點(diǎn)。這些計(jì)算機(jī)病毒都是攻擊者事先設(shè)計(jì)好的可執(zhí)行文件。例如在網(wǎng)頁文件中嵌入Script語言編寫的惡意代碼,這種Script代碼可以利用瀏覽器的漏洞來實(shí)現(xiàn)病毒植入。當(dāng)用戶登錄這些網(wǎng)站時(shí),編寫好的Script代碼會被執(zhí)行,網(wǎng)頁病毒一旦被觸發(fā),就可以對網(wǎng)頁服務(wù)器資源進(jìn)行篡改。例如,我們在上網(wǎng)時(shí)經(jīng)常會發(fā)現(xiàn)打開某個(gè)頁面后,360安全衛(wèi)士會提醒有程序正在修改瀏覽器首頁。這就是網(wǎng)頁病毒的一種現(xiàn)象。病毒和木馬程序也有可能會關(guān)閉網(wǎng)頁中的部分功能,使得用戶無法正常使用網(wǎng)站系統(tǒng)等。最簡單的方式就是網(wǎng)頁自動(dòng)跳轉(zhuǎn)程序,而這種網(wǎng)頁病毒編寫起來比較容易,而且攻擊也很直接。
3 常見網(wǎng)頁設(shè)計(jì)安全缺陷解決對策
3.1 解決登錄驗(yàn)證安全缺陷[2]
很多網(wǎng)站在進(jìn)行用戶登錄時(shí),多會使用人機(jī)交互界面完成登錄驗(yàn)證。而網(wǎng)站的設(shè)計(jì)者對驗(yàn)證程序沒有做到全面的考慮,這樣很容易產(chǎn)生登錄驗(yàn)證安全缺陷,造成Script Language編寫程序在對用戶賬號密碼進(jìn)行驗(yàn)證工作時(shí)出現(xiàn)問題。
針對登錄驗(yàn)證安全缺陷這個(gè)問題,可以通過下面的方法解決:首先在注冊用戶名和密碼時(shí)添加注冊限制,對于非法的用戶名和密碼不準(zhǔn)申請;其次,在利用SQL語句進(jìn)行登錄查詢時(shí),我們可以先過濾用戶輸入的信息,在一定程度上防止非法賬號及密碼的應(yīng)用;接下來,在進(jìn)行用戶驗(yàn)證時(shí),不急于對用戶名和密碼同時(shí)進(jìn)行匹配,而是先對用戶名進(jìn)行驗(yàn)證,等用戶名匹配成功之后,再進(jìn)行密碼的驗(yàn)證工作。這樣可以減少查詢時(shí)間,提高查詢效率。
3.2 SQL注入漏洞的預(yù)防
SQL語言是網(wǎng)站設(shè)計(jì)中必不可少的后臺數(shù)據(jù)庫語言。在SQL語言中有一些特殊字符如“*”等,這些特殊字符是為了完成模糊匹配的。可有些網(wǎng)站設(shè)計(jì)人員在網(wǎng)站設(shè)計(jì)初始,沒有考慮到SQL語言的書寫規(guī)范和特殊字符的應(yīng)用,產(chǎn)生SQL注入漏洞,導(dǎo)致攻擊者通過表單提交中的全局變量GET和POST把SQL語句提交并執(zhí)行。
針對于這一問題,具體的解決方法包括:可以打開配置文件中的magic_quotes_gpc和magic_quotes_runtime的設(shè)置;設(shè)置register_globals為off;關(guān)閉全局變量注冊;最后,在給數(shù)據(jù)庫和數(shù)據(jù)表字段進(jìn)行命名時(shí),特別是一些重要字段命名時(shí),不要取一些很容易被猜到的名字。例如“姓名”字段最好不要命名為“name”字段。
3.3 文件上傳漏洞的解決方案
文件上傳漏洞產(chǎn)生的原因主要是攻擊者通過網(wǎng)站上提供的“上傳文件”功能,把一些惡意的可執(zhí)行文件上傳至服務(wù)器,并通過它獲得對服務(wù)器的控制權(quán)??梢酝ㄟ^下面幾個(gè)方面來解決文件上傳漏洞:首先把文件上傳的目錄設(shè)置為不可執(zhí)行,這樣一來,此目錄只能存放文件,不能做其它操作;其次,文件類型的判斷。要對上傳的文件進(jìn)行判斷,可執(zhí)行文件等特殊類型的文件不可以上傳保存;最后,使用隨機(jī)數(shù)改寫文件名和文件路徑;單獨(dú)設(shè)置文件服務(wù)器的域名。
3.4 Web安全加固[3]
針對網(wǎng)頁篡改的攻擊方法多種多樣。如果想要網(wǎng)頁不被篡改,最直接的方法就是在設(shè)計(jì)網(wǎng)頁時(shí)采取一定的措施來避免被篡改的網(wǎng)頁從服務(wù)器中流出去。同時(shí),加固網(wǎng)頁使其不容易被修改。前者我們可以使用硬件的方式來實(shí)現(xiàn)。而后者,我們可以通過網(wǎng)頁設(shè)計(jì)和應(yīng)用程序來實(shí)現(xiàn)。到目前為止兩種防護(hù)功能的相互整合程度還不是很高。
在現(xiàn)今不斷發(fā)展的信息技術(shù)時(shí)代,網(wǎng)絡(luò)無處不在,我們的很多信息都是通過網(wǎng)站獲得,所以網(wǎng)站技術(shù)就成了一項(xiàng)很重要的內(nèi)容。網(wǎng)頁設(shè)計(jì)中經(jīng)常使用的服務(wù)器端設(shè)計(jì)程序主要包括Active Server Page、Hypertext Preprocessor、Java Server Pages等腳本語言,正是這些腳本語言為網(wǎng)站開發(fā)提供了平臺。利用ASP、PHP、JSP等腳本語言搭建的網(wǎng)站后臺程序,不論是程序開發(fā)階段,還是程序后期維護(hù)階段,對于設(shè)計(jì)開發(fā)人員來說都非常的高效、便捷,而且實(shí)現(xiàn)起來也是比較容易的。一個(gè)功能健全而使用安全的網(wǎng)站所涉及到的程序內(nèi)容有很多,又因網(wǎng)頁設(shè)計(jì)的特殊性,使得利用表單等功能實(shí)現(xiàn)的人機(jī)交互更為頻繁,用戶輸入什么信息內(nèi)容是網(wǎng)頁設(shè)計(jì)者無法預(yù)測的,此時(shí)網(wǎng)頁設(shè)計(jì)中安全隱患就會暴露出來,用戶的輸入內(nèi)容就有可能對網(wǎng)站造成不同程度的攻擊。在網(wǎng)站設(shè)計(jì)的過程中,除了上面介紹的幾種安全缺陷以外,還有很多其它的安全缺陷。因此,在建設(shè)網(wǎng)站時(shí)一定要多多注意網(wǎng)站的安全性,請?jiān)谕瓿删W(wǎng)站設(shè)計(jì)功能的基礎(chǔ)上,在一定程度上注意提高網(wǎng)站的安全性。
參考文獻(xiàn):
[1]張麗君.基于網(wǎng)站建設(shè)中網(wǎng)頁設(shè)計(jì)的安全缺陷及對策分析[J].中國信息化,2012(20).
[2]邢太北.分析網(wǎng)站建設(shè)中網(wǎng)頁設(shè)計(jì)的安全缺陷對策[J].軟件設(shè)計(jì)開發(fā),2012(15).
[3]錢能,楊杰.網(wǎng)站建設(shè)中網(wǎng)頁設(shè)計(jì)的安全缺陷及對策分析[J].無線互聯(lián)科技,2016(20).