揭秘Ajax 的安全-不容忽視的問題_AJAX教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:實例解析AJAX開發(fā)簡略在使用瀏覽器瀏覽網(wǎng)頁的時候,當(dāng)頁面刷新很慢的時候,你的瀏覽器在干什么?你的屏幕內(nèi)容是什么?是的,你的瀏覽器在等待刷新,而你的屏幕內(nèi)容是一片空白,而你在屏幕前苦苦的等待瀏覽器的響應(yīng)。開發(fā)人員為了克服這種尷尬的局面,不得不在每一個可能需要長時
XML安全廠商Forum Systems公司上月在安全問題上提出了一個警告,他認(rèn)為,隨著越來越多的Ajax風(fēng)格的應(yīng)用出現(xiàn),很多組織需要考慮潛在的安全缺陷以及性能問題。位于鹽湖城的Forum Systems公司的市場副總裁Walid Negm說:“我們并非在制造警告。我們只是感到需要讓人們考慮安全和可擴(kuò)展性需求。我們始終在關(guān)注使用XML的技術(shù)。這是我們份內(nèi)的事。”
Ajax是Asynchronous JavaScript and XML的縮寫。它通過創(chuàng)建富網(wǎng)絡(luò)應(yīng)用來加強(qiáng)用戶體驗。根據(jù)Forum的看法,通過使用與Web服務(wù)互操作的更具有交互性的頁面,Ajax增加了XML、文本和HTML的網(wǎng)絡(luò)通信量。但這家公司認(rèn)為由于依賴XML作為請求/相應(yīng)的內(nèi)容類型,負(fù)載成為了Web服務(wù)的弱點。該公司還指出,通過把用戶的Web瀏覽器轉(zhuǎn)換成Web服務(wù)門戶,Ajax通信模型增加了瀏覽器處理的可靠性。
Forum公司嘗試對XML內(nèi)容過濾、Web服務(wù)安全以及XML提速功能進(jìn)行改進(jìn)。
Negm指出了一些潛在的問題。他說,首先是惡意的用戶可能會發(fā)送臟數(shù)據(jù),尤其是創(chuàng)建攻擊性的客戶端。另一個問題就是未授權(quán)的用戶訪問。在Ajax應(yīng)用程序中,如果沒有服務(wù)器端保護(hù)的話,一個為授權(quán)的用戶可以迅速提高自己的級別。
最大的威脅是不良形式的數(shù)據(jù)。他說:“由于使用了異步代碼。拒絕服務(wù)很容易發(fā)生。一種潛在的結(jié)果就是服務(wù)器資源耗盡,或者因為拒絕服務(wù)而引起服務(wù)器宕機(jī)。”
Negm說:“Ajax具有一些Web應(yīng)用的安全問題,除非你在服務(wù)器端安裝應(yīng)用防火墻,才能得到保護(hù)。”
他說:“盡管性能是一個大問題,但你還需要考慮數(shù)據(jù)如何影響性能的。Ajax使你能夠更好的驗證數(shù)據(jù),但你不得不要處理附加的驗證需求,而這也是讓服務(wù)器頭疼的事。”
被問到提出警告是不是有點自私時, Negm回答道:“是存在這個問題,但不提出的話風(fēng)險更大。我們對我們的安全紀(jì)錄很滿意。在警告背后的細(xì)節(jié)很有必要值得探討。盡管不是很急,但我們正在讓開發(fā)人員對此進(jìn)行研究。”
位于馬薩諸塞州Waltham的ZapThink公司的高級分析師Jason Bloomberg說:“ Ajax帶來的安全問題是簡單的網(wǎng)頁無法面對的,讓人們明白這一點非常有必要。Forum公司已經(jīng)開始關(guān)注這個威脅,所以發(fā)出警告是很自然的。”
Adaptive Path公司是舊金山一家有用戶體驗的咨詢公司。負(fù)責(zé)用戶體驗戰(zhàn)略的主管Jesse James Garrett說:“某種程度上,Ajax應(yīng)用把業(yè)務(wù)邏輯從服務(wù)器端搬到了客戶端,于是業(yè)務(wù)邏輯就被暴露出來。根據(jù)應(yīng)用的不同,這種做法增加了潛在的安全風(fēng)險。”
Garrett說:“下一個問題是數(shù)據(jù)安全。Ajax應(yīng)用能依靠Web底層的加密層來加密那些進(jìn)行數(shù)據(jù)通信的XML文檔。”
Garrett說:“此外,Ajax還有一個問題。我們做的就是降低服務(wù)器通訊中的用戶交互。現(xiàn)在,服務(wù)器通訊對于用戶已經(jīng)完全不可見,因此,你可以在用戶不差覺得情況下傳送數(shù)據(jù)。這是一個很大的風(fēng)險。”
Dion Almaer是Ajax社區(qū)Ajaxian.com的創(chuàng)始人之一,他認(rèn)為Ajax中沒有什么是不安全的,但還是有一些問題。
他說:“開發(fā)人員必須想清楚他們在做什么。你可以開發(fā)一個非常豐富的Ajax應(yīng)用程序,這需要從瀏覽器向客戶端傳送數(shù)據(jù)。你需要讓對服務(wù)器的訪問變得安全,就和使用桌面技術(shù)時一樣。舉個例子,你不想讓你的Ajax應(yīng)用能發(fā)送任何SQL到后臺的服務(wù)器并運(yùn)行它。黑客能利用它并手動發(fā)送有害的請求。另外,不要對任何東西都進(jìn)行eval()操作,還要對XSS探測保持警惕。”
Almaer說:“底線是讓你的服務(wù)器端盡可能安全。這樣對你才有好處。”
Garrett對此回應(yīng)到:“開發(fā)和部署任何應(yīng)用最重要的是優(yōu)秀的規(guī)劃。開發(fā)Ajax有一定的復(fù)雜性,這也讓開發(fā)團(tuán)隊在做選擇時要多考慮一些。”
分享:在AJAX開發(fā)中集成數(shù)據(jù)庫技術(shù) 一、引言 如今,有相當(dāng)多的Web應(yīng)用程序,如Backpack,Blinksale和Gmail,都把數(shù)據(jù)庫技術(shù)與AJAX集成到一起。通過提供與數(shù)據(jù)庫通訊而不用刷新瀏覽器這種強(qiáng)有力的技術(shù),這種集成對we
相關(guān)AJAX教程:
- Ajax中瀏覽器的緩存問題解決方法
- AJAX和WebService實現(xiàn)省市縣三級聯(lián)動具體代碼
- ajax 登錄功能簡單實現(xiàn)(未連接數(shù)據(jù)庫)
- AJAX和WebService實現(xiàn)郵箱驗證(無刷新驗證郵件地址是否合法)
- AJAX和三層架構(gòu)實現(xiàn)分頁功能具體思路及代碼
- 使用AJAX返回WebService里的集合具體實現(xiàn)
- AJAX獲取服務(wù)器當(dāng)前時間及時間格式輸出處理
- ajax傳遞多個參數(shù)具體實現(xiàn)
- ajax傳遞一個參數(shù)具體實現(xiàn)
- 滑輪滾動到頁面底部ajax加載數(shù)據(jù)配合jsonp實現(xiàn)探討
- jQery ajax——load()方法示例介紹
- jQuery+Ajax實現(xiàn)表格數(shù)據(jù)不同列標(biāo)題排序(為表格注入活力)
- 相關(guān)鏈接:
- 教程說明:
AJAX教程-揭秘Ajax 的安全-不容忽視的問題
。