Cloudflare發(fā)布,供用戶找出被濫用的API,新的API解決方案、傳統(tǒng)的速率限制以及DDoS保護(hù),都是API縱深防御的一環(huán),但是由於API通常是自動(dòng)化的服務(wù),也難以預(yù)測(cè)每個(gè)API的使用量,因此Cloudflare發(fā)展出更智慧的偵測(cè)方法,并透過(guò)疊加這些方法,全面提升API安全性。
Cloudflare提到,API成為現(xiàn)今建構(gòu)網(wǎng)頁(yè)服務(wù)的骨干,提升了互聯(lián)網(wǎng)的可用性和可存取性,但是隨著技術(shù)的發(fā)展,API被攻擊濫用的表面也同時(shí)增加,傳統(tǒng)的速率限制和DDoS保護(hù)等安全工具,雖然仍是有效的保護(hù)手段,但是在部分情況,會(huì)遇到實(shí)際應(yīng)用的問(wèn)題,像是在限制API端點(diǎn)速率上,難以選擇恰當(dāng)?shù)拈撝?,在大?guī)模的應(yīng)用上容易發(fā)生造成問(wèn)題,因?yàn)锳PI可能受到分散式攻擊,處在速率低於閾值的情況,而也可能大量合法流量增加,使得速率超過(guò)閾值。
而傀儡程序管理(Bot Management)雖然也提供一定程度的防護(hù),但這僅限於API供瀏覽器使用的情況,因?yàn)樽詣?dòng)化機(jī)器人與人類的行為有很大的差異,因此傀儡程序管理可以輕易地區(qū)分不同,但是當(dāng)API是供自動(dòng)化程序使用時(shí),企業(yè)就必須在一群機(jī)器人中,區(qū)分出壞的機(jī)器人流量。
為了解決這些問(wèn)題,Cloudflare發(fā)展了新的API保護(hù)解決方案,這包含了API探索以及API濫用偵測(cè)兩部分。API探索主要功能,是要了解API的攻擊表面,能夠?qū)pi.example[.]com/login/237和api.example[.]com/login/415等看似不同的路徑,辨識(shí)為api.example[.]com/login/*,刪除用戶識(shí)別符號(hào),這個(gè)折疊路徑的動(dòng)作,官方稱之為路徑正規(guī)化,可以作為各種安全產(chǎn)品的基礎(chǔ)。
在探索API之後,Cloudflare以兩種方法來(lái)發(fā)現(xiàn)API濫用,第一種是以流量作為偵測(cè)異常的基礎(chǔ),也就是說(shuō),系統(tǒng)會(huì)猜測(cè)每條路徑的速率閾值,來(lái)達(dá)成自適應(yīng)速率限制,Cloudflare使用非監(jiān)督式學(xué)習(xí)來(lái)選擇路徑的閾值,可以為每個(gè)API算出單獨(dú)的基準(zhǔn),并嘗試預(yù)測(cè)請(qǐng)求的意圖,像是當(dāng)系統(tǒng)發(fā)現(xiàn)有個(gè)不正常次數(shù)的重置密碼請(qǐng)求,便會(huì)懷疑帳戶被攻擊者接管,讓管理者立刻采取行動(dòng)。而且系統(tǒng)還能透過(guò)配置上下文,來(lái)偵測(cè)API可能出現(xiàn)的爆量流量,并且更改相關(guān)的閾值,避免合法流量受到阻擋。
另外,新的API濫用偵測(cè)方法,也會(huì)依照存取順序來(lái)偵測(cè)異常存取行為,像是網(wǎng)站的流量移動(dòng)通常會(huì)經(jīng)過(guò)一定的過(guò)程,終端用戶發(fā)送請(qǐng)求到A路徑,并且被重新導(dǎo)向B路徑,最終被導(dǎo)向C路徑,只要順著這個(gè)邏輯流程,就會(huì)被認(rèn)為是正常流量,而直接存取C路徑,就可能是異常流量。Cloudflare同樣以非監(jiān)督式學(xué)習(xí),來(lái)學(xué)習(xí)這些邏輯流程,找出異常的存取行為。