国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關(guān)注微信公眾號

Web應(yīng)用程序安全性問題本質(zhì)解密
2008-12-25   

相信大家都或多或少的聽過關(guān)于各種Web應(yīng)用安全漏洞,諸如:跨sITe腳本攻擊(XSS),SQL注入,上傳漏洞……形形色色。

在這里我并不否認各種命名與歸類方式,也不評價其命名的合理性與否,我想告訴大家的是,形形色色的安全漏洞中,其實所蘊含安全問題本質(zhì)往往只有幾個。 我個人把Web應(yīng)用程序安全性本質(zhì)問題歸結(jié)以下三個部分:

1、輸入/輸出驗證(Input/output validation)

2、角色驗證或認證(Role authentication )

3、所有權(quán)驗證(Ownership authentication)

說到這,讀者一定想知道我這三種分類與形形色色的安全性問題有什么關(guān)系?下面我逐個給您概略解答:

輸入/輸出驗證

這里的輸入與輸出其實都是發(fā)生在用戶界面(User Interface)這一個層面上的,比如:你某一站點上提交一份注冊信息,往往會收到諸多提示:“用戶名非法”,“姓名不能使用英文“……其實這就是輸入驗證的一個實例。什么情況是輸出呢?比如說你成功提交一份注冊信息后,系統(tǒng)會返回一個確認頁(Registerred Confirmation),往往在這個頁面上會顯示你注冊時提交的部分或全部信息,那么在這里顯示的信息就是我所說的輸出實例之一,輸入需要做什么驗證?

假如你在提交時,在Address那一欄輸入:

{script}alert("iwebsecurITy");{/script}

當你到達注冊的確認頁時,會有什么發(fā)生?如果確認頁沒有做輸出驗證處理,那很顯然會在到達確認頁的時候出現(xiàn)一個Javascript打出的提示框。其實這就是跨sITe腳本攻擊的一個小小的實例。當然了,單純的輸入/輸出驗證涉及的面可能夠?qū)懸恍”緯?,努力在后續(xù)文章中給大家詳解。

角色驗證或認證

我們就拿CSDN來說吧,用戶有這些角色:其一可以說是游客,就是瀏覽者沒有登錄時的角色;其二是免費的注冊用戶;或許將來CSDN深入發(fā)展了,業(yè)務(wù)有所更新,還會出現(xiàn)收費的注冊用戶。以上只是用戶角色,那在CSDN公司內(nèi)部還會有管理員角色,還有可能管理員又可以根據(jù)板塊分為各種不同的角色。大家看到了吧,你天天訪問的CSDN一共可能有多少角色?接下來的問題就是權(quán)限問題了,為什么會有角色?就是為了控制權(quán)限的。每種角色都有自己特定的與公共的權(quán)限,這些權(quán)限的邏輯關(guān)系是相當復雜的,如果一個Web應(yīng)用在角色上沒有一個詳細的合理的設(shè)計,將會給開發(fā)人員帶來無限痛苦和麻煩。那現(xiàn)在我要問幾個問題:你能保證每種角色只能做其份內(nèi)的事兒?你是如何去保證的呢?方法可靠嗎?有沒有漏洞?……這,就是我要說的角色驗證或認證。BTW:為什么我會說驗證或認證呢?你可以這么理解,角色性存在于兩個階段,其一進入階段,比如你登錄的那一瞬間,你進入了一個特定的角色;另一個階段就是維持階段,你如何確保你登錄后總是以登錄時的身份在操作呢?那前者可以說是:認證,后者就是驗證了。

給一個角色認證/驗證方面的虛擬案例,比如:一個在線電影服務(wù)提供商,會免費給您開一個試用角色,如果這試用角色驗證不當,可能會導致用戶權(quán)限提升而成為一個合法的收費用戶,而這個收費用戶你往往卻收不到他的任何費用。

所有權(quán)驗證

這個問題的存在也是基于角色的,只不過它所關(guān)心的是同級別的角色之間的權(quán)限問題。就拿CSDN來說吧,我是CSDN的一個免費用戶,你也是。

現(xiàn)在的問題是:我可以替你操作嗎,我可以替你發(fā)表文章嗎?我能修改你的個性設(shè)置嗎?如果不能,CSDN是如何實現(xiàn)的?雖然你和我都是普通用戶,但是你有你的隱私我也有我的隱私,如何保證嚴格的所有權(quán)驗證就顯得尤為關(guān)鍵了。比較簡單吧,這就是我所說的所有權(quán)驗證。

我可以很自信的告訴你,只要是Web應(yīng)用安全性問題,它逃不出在這三大部分,可能你還無法把形形色色的Web應(yīng)用安全性問題與這三個部分對應(yīng)并合理的解釋清楚,但是確實只有這么簡單的幾個部分。 


熱詞搜索:

上一篇:循序漸進 教你揪出偽裝并清除木馬
下一篇:知己知彼 了解黑客入侵前的準備工作

分享到: 收藏
主站蜘蛛池模板: 常宁市| 根河市| 海淀区| 巧家县| 开江县| 南宫市| 金寨县| 安龙县| 师宗县| 全椒县| 高平市| 陈巴尔虎旗| 清水县| 樟树市| 自治县| 普宁市| 龙州县| 汝城县| 大安市| 鸡泽县| 始兴县| 莱西市| 左贡县| 榕江县| 瑞昌市| 富锦市| 临夏市| 开封市| 边坝县| 九江市| 昌宁县| 宝兴县| 寿光市| 治多县| 奈曼旗| 藁城市| 丹江口市| 惠安县| 天津市| 农安县| 疏附县|