開發(fā)中經常用到接口,尤其是在面向服務的soa架構中,數據交互全是用的接口。        

       幾年以前我認為,我寫個接口,不向任何人告知我的接口地址,我的接口就是安全的,現在回想真是too young,too simple。但凡部署在廣域網的應用程序,隨隨便便的好多工具可以根據ip或域名掃描應用程序的所有暴露的接口,進而分析參數,注入程序,分分鐘被攻擊。        

       那咋才能保證接口的安全性呢?

(一)面臨的主要安全問題

a.網絡環(huán)境假設:

a1.假設公共網絡(Internet,如:WIFI、非家庭網絡、非辦公網絡等) 是不安全的,一切基于HTTP協議的請求/響應(Request or Response)都是可以被截獲的、篡改、重放(重發(fā))的。


b.接口安全要求:

b1.防偽裝攻擊(案例:在公共網絡環(huán)境中,第三方 有意或惡意 的調用我們的接口)

b2.防篡改攻擊(案例:在公共網絡環(huán)境中,請求頭/查詢字符串/內容 在傳輸過程被修改)

網友評論