1. 程式人生 > >OWASP Top 10(2013) 第五篇 之 A7

OWASP Top 10(2013) 第五篇 之 A7

OWSAP

A7 – 功能級訪問控制缺失

功能級的保護是通過系統配置管理的,當系統配置錯誤時,開發人員必須做相應的程式碼檢查,否則應用程式不能正確的保護頁面請求。攻擊者就是利用這種漏洞訪問未經授權的功能模組。

很多系統的許可權控制是通過頁面灰化或隱藏URL實現的,沒有在伺服器端進行身份確認和許可權驗證,導致攻擊者通過修改頁面樣式或獲取隱藏URL,進而獲取特權頁面來對系統進行攻擊,或者在匿名狀態下對他人的頁面進行攻擊,從而獲取使用者資料或提升許可權。

此類問題主要是系統在開發或者設計階段,沒有考慮攻擊場景,以為看不到就是安全的,這種系統說白了是服務端沒有進行許可權控制和身份校驗,才給了攻擊者可乘之機。

那麼應對此類問題的方法主要有如下幾個點:

1、設計嚴格的許可權控制系統,對於每個請求和URL都要進行校驗和許可權確認,防止非法請求被執行;

2、預設情況下,應該拒絕執行所有訪問許可權,也就是說預設不給使用者任何許可權,防止攻擊者利用預設許可權執行攻擊等;

3、對於每個功能的訪問,都要有明確的角色授權,採用過濾器的方式校驗每個請求的合法性,針對非法攻擊要能夠及時識別出來並鎖定該攻擊者IP;

4、實現Web訪問的IP白名單列表,禁止不可信的IP訪問Web系統,能夠極大降低此類問題的發生;

好了,許可權管理是很複雜的,每個系統都有自己的實現方式,但歸根結底就是要確保正確的使用者做自己該做的事情,只要基於這個目標去實現就可以防止越權問題的出現。