通常情況下的api接口防護有如下幾種:
- 使用HTTPS防止抓包,使用https至少會給破解者在抓包的時候提高一些難度
- 接口參數(shù)的加解密,通過md5加密數(shù)據(jù)+時間戳+隨機字符串(salt),然后將MD5加密的數(shù)據(jù)和時間戳、原數(shù)據(jù)均傳到后臺,后臺規(guī)定一個有效時長,如果在該時長內,且解密后的數(shù)據(jù)與原數(shù)據(jù)一致,則認為是正常請求;也可以采用aes/des之類的加密算法,還可以加入客戶端的本地信息作為判斷依據(jù)
- 本地加密混淆,以上提到的加解密數(shù)據(jù)和算法,不要直接放在本地代碼,因為很容易被反編譯和破解,建議放到獨立模塊中去,并且函數(shù)名稱越混淆越難讀越安全。
- User-Agent 和 Referer 限制
- api防護的登錄驗證,包括設備驗證和用戶驗證,可以通過檢查session等方式來判斷用戶是否登錄
- api的訪問次數(shù)限制,限制其每分鐘的api調用次數(shù),可以通過session或者ip來做限制
- 定期監(jiān)測,檢查日志,偵查異常的接口訪問
如不懂技術可直接購買主機吧的高防IP進行防御,高防IP將會依據(jù)訪問頻率、User-Agent、是否重復請求等特性進行CC防護,同時擁有TB級的DDOS防御能力,可最大降低api接口被攻擊帶來的損失。
詳細地址:https://zhujib.com/go/gaofangip