這幾天看一些邏輯漏洞的資料,整理了一下關於邏輯漏洞的思路可能不是很全之後慢慢補充。前端
與傳統漏洞相比,邏輯漏洞具備不易發現、不易防禦的特色,不像SQL注入、XSS漏洞能夠上WAF等一些防禦手段就能夠控制;重點應該放在好比:我的信息區域、密碼修改區域、密碼忘記區域、支付區域、手機號區域等。這幾個區域通常都是嚴重高危漏洞的始發點,任何一個地方出問題,都有可能形成企業、用戶損失。並且每一個公司的應用系統邏輯也都良莠不齊,邏輯漏洞也確定不盡相同。算法
1、越權後端
平行越權:權限類型不變,權限ID改變服務器
垂直越權:權限ID不變,權限類型改變cookie
預防思路:session
1.cookie中設定多個驗證,好比自如APP的cookie中,須要sign和ssid兩個參數配對,才能返回數據。加密
2.用戶的cookie數據加密應嚴格使用標準加密算法,並注意密鑰管理。token
3.用戶的cookie的生成過程當中最好帶入用戶的密碼,一旦密碼改變,cookie的值也會改變。接口
4.cookie中設定session參數,以防cookie能夠長時間生效。io
二:驗證碼回傳
這個漏洞主要是發生在前端驗證處,只要攔截數據包就能夠獲取敏感信息,而且常常發生的位置在於:帳號密碼找回、帳號註冊、支付訂單等
預防思路:
response數據內不包含驗證碼,驗證方式主要採起後端驗證,可是缺點是服務器的運算壓力也會隨之增長;要進行前端驗證的話使用加密進行。
三.未進行登錄憑證驗證
有些業務的接口,由於缺乏了對用戶的登錄憑證的效驗或者是驗證存在缺陷,致使黑客能夠未經受權訪問這些敏感信息甚至是越權操做。
預防思路:
對敏感數據存在的接口和頁面作cookie,ssid,token或者其它驗證。
四:訂單金額任意修改
關於支付的邏輯漏洞的通常思路。一種是少充多得,好比充值100元時經過篡改金額改爲10元,最終充值完畢後帳戶變成了100元,而實際付款卻只有10元;一種是繞過活動頁金額限制,好比不少公司作活動強制用戶充值金額不能低於10000,而經過攔截修改金額,能夠充值任意金額。
預防思路:
增長多重檢驗,訂單較大時增長人工審覈。
5、密碼重置
重置密碼對一個系統來講是很是重要的存在,因此存在的問題也是很是致命。用戶在重置密碼頁面,經過修改用戶ID對所改用戶密碼進行重置;對密碼重置頁面驗證碼繞過,而後爆破進行等。
預防思路:
系統後臺在重置密碼頁面驗證是否爲本用戶等。