摘要: Web應(yīng)用攻擊能夠給人們的財(cái)產(chǎn)、資源和聲譽(yù)造成重大破壞。雖然Web應(yīng)用增加了用戶受攻擊的危險(xiǎn),但有許多方法可以幫助減輕這一危險(xiǎn)。本文 研究了Web應(yīng)用程序的漏洞,探討了Web安全的現(xiàn)狀及問題由來以及幾種主要Web安全技術(shù),提出了實(shí)現(xiàn)Web安全的幾條措施。
關(guān)鍵詞:Web應(yīng)用程序; 安全; 漏洞
中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2008)09-11635-03
Web Application Procedure Crack and Safe Research
WANG Hai-liang, ZHOU yong
(Information and Communication Engineering Institude,Tianjin Polytechnic University,Tianjin 300160,China)
Abstract: Web applications to be able to attack people's property, resources and reputation of causing significant damage. Although the Web application increased the risk of attacks by the users, but there are many ways to help alleviate the danger. This paper studies the application of the Web loophole, a Web security of the status quo and problems of origin, as well as several major Web security technology, the realization of several Web security measures.
Key words: Web application procedure; Safe; Crack
1 引言
隨著Internet的普及,人們對其依賴也越來越強(qiáng),但是由于Internet的開放性,及在設(shè)計(jì)時(shí)對于信息的保密和系統(tǒng)的安全考慮不完備,造成現(xiàn)在網(wǎng)絡(luò)的攻擊與破壞事件層出不窮,給人們的日常生活和經(jīng)濟(jì)活動(dòng)造成了很大麻煩。WWW服務(wù)作為現(xiàn)今Internet上使用的最廣泛的服務(wù),Web站點(diǎn)被黑客入侵的事件屢有發(fā)生,Web安全問題已引起人們的極大重視。
2 Web的安全漏洞
2.1 常見的Web應(yīng)用程序漏洞
2.1.1 已知弱點(diǎn)和錯(cuò)誤配置
已知弱點(diǎn)包括Web應(yīng)用使用的操作系統(tǒng)和第三方應(yīng)用程序中的所有程序錯(cuò)誤或者可以被利用的漏洞。這個(gè)問題也涉及到錯(cuò)誤配置,包含有不安全的默認(rèn)設(shè)置或管理員沒有進(jìn)行安全配置的應(yīng)用程序。一個(gè)很好的例子就是你的Web服務(wù)器被配置成可以讓任何用戶從系統(tǒng)上的任何目錄路徑通過,這樣可能會(huì)導(dǎo)致泄露存儲(chǔ)在Web服務(wù)器上的一些敏感信息,如口令、源代碼或客戶信息等。
2.1.2 隱藏字段
在許多應(yīng)用中,隱藏的HTML格式字段被用來保存系統(tǒng)口令或商品價(jià)格。盡管其名稱如此,但這些字段并不是很隱蔽的,任何在網(wǎng)頁上執(zhí)行“查看源代碼”的人都能看見。許多Web應(yīng)用允許惡意的用戶修改HTML源文件中的這些字段,為他們提供了以極小成本或無需成本購買商品的機(jī)會(huì)。這些攻擊行動(dòng)之所以成功,是因?yàn)榇蠖鄶?shù)應(yīng)用沒有對返回網(wǎng)頁進(jìn)行驗(yàn)證;相反,它們認(rèn)為輸入數(shù)據(jù)和輸出數(shù)據(jù)是一樣的。
2.1.3 后門和調(diào)試漏洞
開發(fā)人員常常建立一些后門并依靠調(diào)試來排除應(yīng)用程序的故障。在開發(fā)過程中這樣做可以,但這些安全漏洞經(jīng)常被留在一些放在Internet上的最終應(yīng)用中。一些常見的后門使用戶不用口令就可以登錄或者訪問允許直接進(jìn)行應(yīng)用配置的特殊URL。
2.1.4 跨站點(diǎn)腳本編寫
一般來說,跨站點(diǎn)編寫腳本是將代碼插入由另一個(gè)源發(fā)送的網(wǎng)頁之中的過程。利用跨站點(diǎn)編寫腳本的一種方式是通過HTML格式,將信息帖到公告牌上就是跨站點(diǎn)腳本編寫的一個(gè)很好范例。惡意的用戶會(huì)在公告牌上帖上包含有惡意的JavaScript代碼的信息。當(dāng)用戶查看這個(gè)公告牌時(shí),服務(wù)器就會(huì)發(fā)送HTML與這個(gè)惡意的用戶代碼一起顯示。客戶端的瀏覽器會(huì)執(zhí)行該代碼,因?yàn)樗J(rèn)為這是來自Web服務(wù)器的有效代碼。
2.1.5 參數(shù)篡改
參數(shù)篡改包括操縱URL字符串,以檢索用戶以其他方式得不到的信息。訪問Web應(yīng)用的后端數(shù)據(jù)庫是通過常常包含在URL中的SQL調(diào)用來進(jìn)行的。惡意的用戶可以操縱SQL代碼,以便將來有可能檢索一份包含所有用戶、口令、信用卡號(hào)的清單或者儲(chǔ)存在數(shù)據(jù)庫中的任何其他數(shù)據(jù)。
2.1.6 更改cookie
更改cookie指的是修改存儲(chǔ)在cookie中的數(shù)據(jù)。網(wǎng)站常常將一些包括用戶ID、口令、帳號(hào)等的cookie存儲(chǔ)到用戶系統(tǒng)上。通過改變這些值,惡意的用戶就可以訪問不屬于他們的帳戶。攻擊者也可以竊取用戶的cookie并訪問用戶的帳戶,而不必輸入ID和口令或進(jìn)行其他驗(yàn)證。
2.1.7 輸入信息控制
輸入信息檢查包括能夠通過控制由CGI腳本處理的HTML格式中的輸入信息來運(yùn)行系統(tǒng)命令。例如,使用CGI腳本向另一個(gè)用戶發(fā)送信息的形式可以被攻擊者控制來將服務(wù)器的口令文件郵寄給惡意的用戶或者刪除系統(tǒng)上的所有文件。
2.1.8 緩沖區(qū)溢出
緩沖區(qū)溢出是惡意的用戶向服務(wù)器發(fā)送大量數(shù)據(jù)以使系統(tǒng)癱瘓的典型攻擊手段。該系統(tǒng)包括存儲(chǔ)這些數(shù)據(jù)的預(yù)置緩沖區(qū)。如果所收到的數(shù)據(jù)量大于緩沖區(qū),則部分?jǐn)?shù)據(jù)就會(huì)溢出到堆棧中。如果這些數(shù)據(jù)是代碼,系統(tǒng)隨后就會(huì)執(zhí)行溢出到堆棧上的任何代碼。Web應(yīng)用緩沖區(qū)溢出攻擊的典型例子也涉及到HTML文件。如果HTML文件上的一個(gè)字段中的數(shù)據(jù)足夠的大,它就能創(chuàng)造一個(gè)緩沖器溢出條件。
2.1.9 直接訪問瀏覽
直接訪問瀏覽指直接訪問應(yīng)該需要驗(yàn)證的網(wǎng)頁。沒有正確配置的Web應(yīng)用程序可以讓惡意的用戶直接訪問包括有敏感信息的URL或者使提供收費(fèi)網(wǎng)頁的公司喪失收入。
3 Web安全的主要技術(shù)
安全是網(wǎng)絡(luò)賴以生存的保障,只有安全得到保障,網(wǎng)絡(luò)才能實(shí)現(xiàn)自身的價(jià)值。Web安全技術(shù)隨著人們網(wǎng)絡(luò)實(shí)踐的發(fā)展而發(fā)展,其涉及的技術(shù)面非常廣,主要的技術(shù)如認(rèn)證、加密、防火墻及入侵檢測是Web安全的重要防線。
3.1 認(rèn)證
對合法用戶進(jìn)行認(rèn)證可以防止非法用戶獲得對公司信息系統(tǒng)的訪問,使用認(rèn)證機(jī)制還可以防止合法用戶訪問他們無權(quán)查看的信息?,F(xiàn)列舉幾種如下:
3.1.1 身份認(rèn)證
當(dāng)系統(tǒng)的用戶要訪問系統(tǒng)資源時(shí)要求確認(rèn)是否是合法的用戶,這就是身份認(rèn)證。常采用用戶名和口令等最簡易方法進(jìn)行用戶身份的認(rèn)證識(shí)別。
3.1.2 報(bào)文認(rèn)證
主要是通信雙方對通信的內(nèi)容進(jìn)行驗(yàn)證,以保證報(bào)文由確認(rèn)的發(fā)送方產(chǎn)生、報(bào)文傳到了要發(fā)給的接受方、傳送中報(bào)文沒被修改過。
3.1.3 訪問授權(quán)
主要是確認(rèn)用戶對某資源的訪問權(quán)限。
3.1.4 數(shù)字簽名
數(shù)字簽名是一種使用加密認(rèn)證電子信息的方法,其安全性和有用性主要取決于用戶私匙的保護(hù)和安全的哈希函數(shù)。數(shù)字簽名技術(shù)是基于加密技術(shù)的,可用對稱加密算法、非對稱加密算法或混合加密算法來實(shí)現(xiàn)。
3.2 數(shù)據(jù)加密
加密就是通過一種方式使信息變得混亂,從而使未被授權(quán)的人看不懂它。主要存在兩種主要的加密類型:私匙加密和公匙加密。
3.2.1 私匙加密
私匙加密又稱對稱密匙加密,因?yàn)橛脕砑用苄畔⒌拿艹拙褪墙饷苄畔⑺褂玫拿艹?。私匙加密為信息提供了進(jìn)一步的緊密性,它不提供認(rèn)證,因?yàn)槭褂迷撁艹椎娜魏稳硕伎梢詣?chuàng)建、加密和平共處送一條有效的消息。這種加密方法的優(yōu)點(diǎn)是速度很快,很容易在硬件和軟件件中實(shí)現(xiàn)。
3.2.2 公匙加密
公匙加密比私匙加密出現(xiàn)得晚,私匙加密使用同一個(gè)密匙加密和解密,而公匙加密使用兩個(gè)密匙,一個(gè)用于加密信息,另一個(gè)用于解密信息。公匙加密系統(tǒng)的缺點(diǎn)是它們通常是計(jì)算密集的,因而比私匙加密系統(tǒng)的速度慢得多,不過若將兩者結(jié)合起來,就可以得到一個(gè)更復(fù)雜的系統(tǒng)。
3.3 防火墻技術(shù)
防火墻是網(wǎng)絡(luò)訪問控制設(shè)備,用于拒絕除了明確允許通過之外的所有通信數(shù)據(jù),它不同于只會(huì)確定網(wǎng)絡(luò)信息傳輸方向的簡單路由器,而是在網(wǎng)絡(luò)傳輸通過相關(guān)的訪問站點(diǎn)時(shí)對其實(shí)施一整套訪問策略的一個(gè)或一組系統(tǒng)。大多數(shù)防火墻都采用幾種功能相結(jié)合的形式來保護(hù)自己的網(wǎng)絡(luò)不受惡意傳輸?shù)墓?,其中最流行的技術(shù)有靜態(tài)分組過濾、動(dòng)態(tài)分組過濾、狀態(tài)過濾和代理服務(wù)器技術(shù),它們的安全級(jí)別依次升高,但具體實(shí)踐中既要考慮體系的性價(jià)比,又要考慮安全兼顧網(wǎng)絡(luò)連接能力。此外,現(xiàn)今良好的防火墻還采用了VPN、檢視和入侵檢測技術(shù)。
防火墻的安全控制主要是基于IP地址的,難以為用戶在防火墻內(nèi)外提供一致的安全策略;而且防火墻只實(shí)現(xiàn)了粗粒度的訪問控制,也不能與企業(yè)內(nèi)部使用的其他安全機(jī)制(如訪問控制)集成使用;另外,防火墻難于管理和配置,由多個(gè)系統(tǒng)(路由器、過濾器、代理服務(wù)器、網(wǎng)關(guān)、保壘主機(jī))組成的防火墻,管理上難免有所疏忽。
3.4 入侵檢測系統(tǒng)
入侵檢測技術(shù)是Web安全研究的一個(gè)熱點(diǎn),是一種積極主動(dòng)的安全防護(hù)技術(shù),提供了對內(nèi)部入侵、外部入侵和誤操作的實(shí)時(shí)保護(hù),在網(wǎng)絡(luò)系統(tǒng)受到危害之前攔截相應(yīng)入侵。隨著時(shí)代的發(fā)展,入侵檢測技術(shù)將朝著三個(gè)方向發(fā)展:分布式入侵檢測、智能化入侵檢測和全面的安全防御方案。
入侵檢測系統(tǒng)(Instusion Detection System, 簡稱IDS)是進(jìn)行入侵檢測的軟件與硬件的組合,其主要功能是檢測,除此之外還有檢測部分阻止不了的入侵;檢測入侵的前兆,從而加以處理,如阻止、封閉等;入侵事件的歸檔,從而提供法律依據(jù);網(wǎng)絡(luò)遭受威脅程度的評(píng)估和入侵事件的恢復(fù)等功能。
3.5 虛擬專用網(wǎng)(VPN)技術(shù)
VPN是目前解決信息安全問題的一個(gè)最新、最成功的技術(shù)課題之一,所謂虛擬專用網(wǎng)(VPN)技術(shù)就是在公共網(wǎng)絡(luò)上建立專用網(wǎng)絡(luò),使數(shù)據(jù)通過安全的“加密管道”在公共網(wǎng)絡(luò)中傳播。用以在公共通信網(wǎng)絡(luò)上構(gòu)建VPN有兩種主流的機(jī)制,這兩種機(jī)制為路由過濾技術(shù)和隧道技術(shù)。目前VPN主要采用了如下四項(xiàng)技術(shù)來保障安全:隧道技術(shù)(Tunneling)、加解密技術(shù)(Encryption Decryption)、密匙管理技術(shù)(Key Management)和使用者與設(shè)備身份認(rèn)證技術(shù)(Authentication)。其中幾種流行的隧道技術(shù)分別為PPTP、L2TP和Ipsec。VPN 隧道機(jī)制應(yīng)能技術(shù)不同層次的安全服務(wù),這些安全服務(wù)包括不同強(qiáng)度的源鑒別、數(shù)據(jù)加密和數(shù)據(jù)完整性等。VPN也有幾種分類方法,如按接入方式分成專線VPN和撥號(hào)VPN;按隧道協(xié)議可分為第二層和第三層的;按發(fā)起方式可分成客戶發(fā)起的和服務(wù)器發(fā)起的。
3.6 其他Web安全技術(shù)
(1)智能卡技術(shù),智能卡技術(shù)和加密技術(shù)相近,其實(shí)智能卡就是密匙的一種媒體,由授權(quán)用戶持有并由該用戶賦與它一個(gè)口令或密碼字,該密碼字與內(nèi)部網(wǎng)絡(luò)服務(wù)器上注冊的密碼一致。智能卡技術(shù)一般與身份驗(yàn)證聯(lián)合使用。
(2)安全脆弱性掃描技術(shù),它為能針對網(wǎng)絡(luò)分析系統(tǒng)當(dāng)前的設(shè)置和防御手段,指出系統(tǒng)存在或潛在的安全漏洞,以改進(jìn)系統(tǒng)對網(wǎng)絡(luò)入侵的防御能力的一種安全技術(shù)。
(3)網(wǎng)絡(luò)數(shù)據(jù)存儲(chǔ)、備份及容災(zāi)規(guī)劃,它是當(dāng)系統(tǒng)或設(shè)備不幸遇到災(zāi)難后就可以迅速地恢復(fù)數(shù)據(jù),使整個(gè)系統(tǒng)在最短的時(shí)間內(nèi)重新投入正常運(yùn)行的一種安全技術(shù)方案。
其他Web安全技術(shù)還有我們較熟悉的各種網(wǎng)絡(luò)防殺病毒技術(shù)等等。
4 Web安全問題對策的思考
Web安全建設(shè)是一個(gè)系統(tǒng)工程、是一個(gè)社會(huì)工程,Web安全問題的對策可從下面4個(gè)方面著手。
Web安全的保障從技術(shù)角度看。首先,要樹立正確的思想準(zhǔn)備。Web安全的特性決定了這是一個(gè)不斷變化、快速更新的領(lǐng)域,況且我國在信息安全領(lǐng)域技術(shù)方面和國外發(fā)達(dá)國家還有較大的差距,這都意味著技術(shù)上的“持久戰(zhàn)”,也意味著人們對于Web安全領(lǐng)域的投資是長期的行為。其次,建立高素質(zhì)的人才隊(duì)伍。目前在我國,網(wǎng)絡(luò)信息安全存在的突出問題是人才稀缺、人才流失,尤其是拔尖人才,同時(shí)Web安全人才培養(yǎng)方面的投入還有較大缺欠。最后,在具體完成Web安全保障的需求時(shí),要根據(jù)實(shí)際情況,結(jié)合各種要求(如性價(jià)比等),需要多種技術(shù)的合理綜合運(yùn)用。
Web安全的保障從管理角度看。考察一個(gè)內(nèi)部網(wǎng)是否安全,不僅要看其技術(shù)手段,而更重要的是看對該網(wǎng)絡(luò)所采取的綜合措施,不光看重物理的防范因素,更要看重人員的素質(zhì)等“軟”因素,這主要是重在管理,“安全源于管理,向管理要安全”。再好的技術(shù)、設(shè)備,而沒有高質(zhì)量的管理,也只是一堆廢鐵。
Web安全的保障從組織體系角度看。要盡快建立完善的Web安全組織體系,明確各級(jí)的責(zé)任。建立科學(xué)的認(rèn)證認(rèn)可組織管理體系、技術(shù)體系的組織體系,和認(rèn)證認(rèn)可各級(jí)結(jié)構(gòu),保證信息安全技術(shù)、信息安全工程、信息安全產(chǎn)品,信息安全管理工作的組織體系。
5 結(jié)束語
我們在歡呼Web應(yīng)用程序的迅速發(fā)展所帶給我們得更加愉快地用戶體驗(yàn)的同時(shí)必須看到,Web應(yīng)用程序的安全性也正在變得越來越復(fù)雜。而Web應(yīng)用程序的跨平臺(tái)和公來訪問特點(diǎn),使得互聯(lián)網(wǎng)上所有可以訪問該Web應(yīng)用程序的用戶都可能成為潛在的攻擊者,所以Web應(yīng)用程序的安全性控制可謂任重而到遠(yuǎn)。在盡快加強(qiáng)網(wǎng)絡(luò)立法和執(zhí)法力度的同時(shí),不斷提高全民的文明道德水準(zhǔn),倡導(dǎo)健康的“網(wǎng)絡(luò)道德”,增強(qiáng)每個(gè)網(wǎng)絡(luò)用戶的安全意識(shí),只有這樣才能從根本上解決Web安全問題。
參考文獻(xiàn):
[1] 劉宗田. Web站點(diǎn)安全與防火墻[M]. 技術(shù)機(jī)械工業(yè)出版社,1996.
[2] 馬恒太.Web服務(wù)安全[M]. 電子工業(yè)出版社 2007.12.
[3] 袁德明, 喬月圓. 計(jì)算機(jī)網(wǎng)絡(luò)安全[M]. 電子工業(yè)出版社,2007.6.