軟件開發(fā)安全
常用安全注意點(diǎn)及解決方案
1、 繞過前端或安全驗(yàn)證直接調(diào)用服務(wù)端業(yè)務(wù)接口:(一般解決方法:服務(wù)端不要把安全校驗(yàn)的代碼和具體業(yè)務(wù)代碼分開為2個(gè)接口,如提現(xiàn)密碼的校驗(yàn)與提現(xiàn)業(yè)務(wù)不要分2個(gè)接口)
2、 CSRF攻擊:利用(而非獲取)安全值如登錄態(tài)(如cookie中的登錄token)攻擊接口(一般解決方法:前端、服務(wù)端配合,用隨機(jī)數(shù)或目前比較常用的手機(jī)驗(yàn)證碼或第三方極驗(yàn))
3、 暴力破解(一般解決方法:前端、服務(wù)端、產(chǎn)品設(shè)計(jì)配合做接口調(diào)用頻次限制)
4、 業(yè)務(wù)漏洞(一般解決方法:熟悉業(yè)務(wù))
5、 并發(fā):提起并發(fā),大家可能更多的是并發(fā)性能瓶頸優(yōu)化,如分表分庫,數(shù)據(jù)庫優(yōu)化,緩存,消息隊(duì)列等等,這里不是講這方面,而是在并發(fā)情況資源競(jìng)爭(zhēng)或臟讀數(shù)據(jù),最終會(huì)導(dǎo)致我們的數(shù)據(jù)可能是錯(cuò)誤的,解決方法如對(duì)象鎖、事務(wù)、數(shù)據(jù)庫鎖、樂觀鎖等
6、 XSS攻擊(一般解決方法:前端編碼或參數(shù)限制、服務(wù)端編碼)
7、 SQL注入(一般解決方法:服務(wù)端sql參數(shù)化)