0x00 索引說明
6.30在OWASP的分享,關於業務安全的漏洞檢測模型。進一步的延伸科普。
0x01 身份認證安全
1 暴力破解
在沒有驗證碼限制或者一次驗證碼可以多次使用的地方,使用已知用戶對密碼進行暴力破解或者用一個通用密碼對用戶進行暴力破解。 簡單的驗證碼爆破。URL: http://zone.wooyun.org/content/20839
一些工具及腳本
Burpsuite
htpwdScan 撞庫爆破必備 URL: https://github.com/lijiejie/htpwdScan
hydra 源碼安裝xhydra支持更多的協議去爆破 (可破WEB,其他協議不屬於業務安全的范疇)
2 session & cookie類
會話固定攻擊:利用服務器的session不變機制,借他人之手獲得認證和授權,冒充他人。案例:WooYun: 新浪廣東美食后台驗證邏輯漏洞,直接登錄后台,566764名用戶資料暴露!
Cookie仿冒:修改cookie中的某個參數可以登錄其他用戶。 案例:益雲廣告平台任意帳號登錄WooYun: 益雲廣告平台任意帳號登錄
3 弱加密
未使用https,是功能測試點,不好利用。
前端加密,用密文去后台校驗,並利用smart decode可解
0x02 業務一致性安全
1 手機號篡改
a) 抓包修改手機號碼參數為其他號碼嘗試,例如在辦理查詢頁面,輸入自己的號碼然后抓包,修改手機號碼參數為其他人號碼,查看是否能查詢其他人的業務。
2 郵箱或者用戶篡改
a) 抓包修改用戶或者郵箱參數為其他用戶或者郵箱
b) 案例: WooYun: 綠盟RSAS安全系統全版本通殺權限管理員繞過漏洞,包括最新 RSAS V5.0.13.2
3 訂單id篡改
a) 查看自己的訂單id,然后修改id(加減一)查看是否能查看其它訂單信息。
b) 案例: WooYun: 廣之旅旅行社任意訪問用戶訂單
4 商品編號篡改
a) 例如積分兌換處,100個積分只能換商品編號為001,1000個積分只能換商品編號005,在100積分換商品的時候抓包把換商品的編號修改為005,用低積分換區高積分商品。
b) 案例:聯想某積分商城支付漏洞再繞過 WooYun: 聯想某積分商城支付漏洞再繞過
5 用戶id篡改
a) 抓包查看自己的用戶id,然后修改id(加減1)查看是否能查看其它用戶id信息。
b) 案例: WooYun: 拉勾網百萬簡歷泄漏風險(包括手機、郵件、應聘職位等信息、還可冒充企業身份篩選簡歷、發面試通知等)
0x03 業務數據篡改
1 金額數據篡改
a) 抓包修改金額等字段,例如在支付頁面抓取請求中商品的金額字段,修改成任意數額的金額並提交,查看能否以修改后的金額數據完成業務流程。 b) 案例: WooYun: 12308訂單支付時的總價未驗證漏洞(支付邏輯漏洞)
2 商品數量篡改
a) 抓包修改商品數量等字段,將請求中的商品數量修改成任意數額,如負數並提交,查看能否以修改后的數量完成業務流程。 b) 案例: WooYun: 蔚藍團支付邏輯漏洞(可負數支付)
3 最大數限制突破
a) 很多商品限制用戶購買數量時,服務器僅在頁面通過js腳本限制,未在服務器端校驗用戶提交的數量,通過抓包修改商品最大數限制,將請求中的商品數量改為大於最大數限制的值,查看能否以修改后的數量完成業務流程。
4 本地js參數修改
a) 部分應用程序通過Javascript處理用戶提交的請求,通過修改Javascript腳本,測試修改后的數據是否影響到用戶。
0x04 用戶輸入合規性
1 注入測試 請參考http://wiki.wooyun.org/web:sql
2 XSS測試 請參考http://wiki.wooyun.org/web:xss
3 Fuzz
a) 功能測試用的多一些,有可能一個超長特殊字符串導致系統拒絕服務或者功能缺失。(當然fuzz不單單這點用途。)
b) 不太符合的案例,但思路可借鑒: WooYun: 建站之星模糊測試實戰之任意文件上傳漏洞
c) 可能會用的工具 —— spike
4 其他用用戶輸入交互的應用漏洞
0x05 密碼找回漏洞
1 大力推薦BMa的《密碼找回邏輯漏洞總結》
http://drops.wooyun.org/web/5048
a) 密碼找回邏輯測試一般流程
i. 首先嘗試正常密碼找回流程,選擇不同找回方式,記錄所有數據包
ii. 分析數據包,找到敏感部分
iii. 分析后台找回機制所采用的驗證手段
iv. 修改數據包驗證推測
b) 腦圖 (詳情請參考BMa的《密碼找回邏輯漏洞總結》)
0x06 驗證碼突破
驗證碼不單單在登錄、找密碼應用,提交敏感數據的地方也有類似應用,故單獨分類,並進一步詳情說明。
1 驗證碼暴力破解測試
a) 使用burp對特定的驗證碼進行暴力破解
b) 案例: WooYun: 盟友88電商平台任意用戶注冊與任意用戶密碼重置漏洞打包
2 驗證碼時間、次數測試
a) 抓取攜帶驗證碼的數據包不斷重復提交,例如:在投訴建議處輸入要投訴的內容信息,及驗證碼參數,此時抓包重復提交數據包,查看歷史投訴中是否存在重復提交的參數信息。
b) 案例:
3 驗證碼客戶端回顯測試
a 當客戶端有需要和服務器進行交互,發送驗證碼時,即可使用firefox按F12調出firebug就可看到客戶端與服務器進行交互的詳細信息
4 驗證碼繞過測試
a) 當第一步向第二步跳轉時,抓取數據包,對驗證碼進行篡改清空測試,驗證該步驟驗證碼是否可以繞過。
b) 案例: WooYun: 中國電信某IDC機房信息安全管理系統設計缺陷致使系統淪陷
5 驗證碼js繞過
a) 短信驗證碼驗證程序邏輯存在缺陷,業務流程的第一步、第二部、第三步都是放在同一個頁面里,驗證第一步驗證碼是通過js來判斷的,可以修改驗證碼在沒有獲取驗證碼的情況下可以填寫實名信息,並且提交成功。
0x07 業務授權安全
1 未授權訪問
a) 非授權訪問是指用戶在沒有通過認證授權的情況下能夠直接訪問需要通過認證才能訪問到的頁面或文本信息。可以嘗試在登錄某網站前台或后台之后,將相關的頁面鏈接復制於其他瀏覽器或其他電腦上進行訪問,看是否能訪問成功。
2 越權訪問
越權漏洞的成因主要是因為開發人員在對數據進行增、刪、改、查詢時對客戶端請求的數據過分相信而遺漏了權限的判定
a) 垂直越權(垂直越權是指使用權限低的用戶可以訪問權限較高的用戶)
b) 水平越權(水平越權是指相同權限的不同用戶可以互相訪問)(wooyun-2010-0100991 PHPEMS多處存在水平權限問題)
c) 《我的越權之道》URL:http://drops.wooyun.org/tips/727
0x08 業務流程亂序
1 順序執行缺陷
a) 部分網站邏輯可能是先A過程后B過程然后C過程最后D過程
b) 用戶控制着他們給應用程序發送的每一個請求,因此能夠按照任何順序進行訪問。於是,用戶就從B直接進入了D過程,就繞過了C。如果C是支付過程,那么用戶就繞過了支付過程而買到了一件商品。如果C是驗證過程,就會繞過驗證直接進入網站程序了。
c) 案例:
WooYun: 萬達某分站邏輯錯誤可繞過支付直接獲得取票密碼
http://wooyun.org/bugs/wooyun-2010-0108184
0x09 業務接口調用安全
1 重放攻擊
在短信、郵件調用業務或生成業務數據環節中(類:短信驗證碼,郵件驗證碼,訂單生成,評論提交等),對其業務環節進行調用(重放)測試。如果業務經過調用(重放)后被多次生成有效的業務或數據結果
a) 惡意注冊
b) 短信炸彈
在測試的過程中,我們發現眾多的金融交易平台僅在前端通過JS校驗時間來控制短信發送按鈕,但后台並未對發送做任何限制,導致可通過重放包的方式大量發送惡意短信
案例: WooYun: 一畝田交易網邏輯漏洞(木桶原理)
2 內容編輯
類似案例如下:
點擊"獲取短信驗證碼",並抓取數據包內容,如下圖。通過分析數據包,可以發現參數sendData/insrotxt的內容有客戶端控制,可以修改為攻擊者想要發送的內容
將內容修改"恭喜你獲得由xx銀行所提供的iphone6一部,請登錄http://www.xxx.com領取,驗證碼為236694"並發送該數據包,手機可收到修改后的短信內容,如下圖:
0x10 時效繞過測試
大多有利用的案例發生在驗證碼以及業務數據的時效范圍上,在之前的總結也有人將12306的作為典型,故,單獨分類。
1 時間刷新缺陷
12306網站的買票業務是每隔5s,票會刷新一次。但是這個時間確實在本地設置的間隔。於是,在控制台就可以將這個時間的關聯變量重新設置成1s或者更小,這樣刷新的時間就會大幅度縮短(主要更改autoSearchTime本地參數)。 案例:
2 時間范圍測試
針對某些帶有時間限制的業務,修改其時間限制范圍,例如在某項時間限制范圍內查詢的業務,修改含有時間明文字段的請求並提交,查看能否繞過時間限制完成業務流程。例如通過更改查詢手機網廳的受理記錄的month范圍,可以突破默認只能查詢六個月的記錄。
0x11 參考
@eversec
應用程序邏輯錯誤總結 http://drops.wooyun.org/papers/1418
密碼找回功能可能存在的問題 http://drops.wooyun.org/papers/287
密碼找回功能可能存在的問題(補充) http://drops.wooyun.org/web/3295
密碼找回邏輯漏洞總結 http://drops.wooyun.org/web/5048
支付漏洞的三種常見類型——加固方案 http://zone.wooyun.org/content/878
在線支付邏輯漏洞總結 http://drops.wooyun.org/papers/345
金融行業平台常見安全漏洞與防御 http://www.freebuf.com/news/special/61082.html
我的越權之道 http://drops.wooyun.org/tips/727
安全科普:看視頻理解Web應用安全漏洞TOP10(IBM內部視頻) http://www.freebuf.com/vuls/63426.html