淺談基于設(shè)備指紋的網(wǎng)絡(luò)安全機器防御系統(tǒng)
1.序言
自2010年起,整個互聯(lián)網(wǎng)進入到了全新的時代,尤其是隨著移動互聯(lián)網(wǎng)快速發(fā)展,在給用戶帶來了隨時隨地享受金融服務(wù)便利的同時,也給一些不法分子有了可乘之機,隨著“黑灰產(chǎn)”產(chǎn)業(yè)鏈的發(fā)展和成熟,網(wǎng)絡(luò)黑灰產(chǎn)已不再局限于半公開化的純攻擊模式,而是悄然轉(zhuǎn)化為斂財工具和商業(yè)競爭的不良手段,利用網(wǎng)絡(luò)機器人(網(wǎng)絡(luò)程序或者自動化工具)進行網(wǎng)絡(luò)數(shù)據(jù)爬取,成為了比較普遍的手段。更有甚者,利用網(wǎng)絡(luò)機器人進行撞庫、刷單、惡意注冊等行為也逐步盛行。
圖1
2.互聯(lián)網(wǎng)應(yīng)用的攻與防
2.1 互聯(lián)網(wǎng)應(yīng)用安全防御
隨著業(yè)務(wù)規(guī)模迅猛發(fā)展,同時也伴隨著金融與科技的深度融合,使得銀行各類互聯(lián)網(wǎng)應(yīng)用也持續(xù)增長。在提升效率、為客戶帶來便利的同時,也不斷考驗銀行的安全防御體系。從傳統(tǒng)的安全領(lǐng)域到業(yè)務(wù)層安全防范也在不斷更迭演進。
- 傳統(tǒng)安全防御:從抗DDoS、網(wǎng)絡(luò)防火墻、IDS (入侵檢測系統(tǒng))、全流量檢測到WAF(應(yīng)用防火墻),傳統(tǒng)安全體系提供了基于網(wǎng)絡(luò)協(xié)議棧的全方位防護。
- 業(yè)務(wù)層安全防御:一些業(yè)務(wù)密集型的場景,例如對支付欺詐的甄別、貸款平臺對申請欺詐的甄別,業(yè)務(wù)方需要建立完善的業(yè)務(wù)層防御體系。
隨著安全防御手段的不斷更迭,新的問題也不斷涌現(xiàn)。而面對新問題的出現(xiàn),傳統(tǒng)的防御體系顯得應(yīng)對不足。
- 網(wǎng)絡(luò)機器人的行為并非傳統(tǒng)安全體系的防御對象。網(wǎng)絡(luò)機器人的訪問行為,在傳統(tǒng)安全體系的視角下和正常人的訪問無異,無法進行有效應(yīng)對。
- 旨在解決業(yè)務(wù)安全的業(yè)務(wù)層安全防御也無法透視網(wǎng)絡(luò)機器人的行為特征。業(yè)務(wù)層安全防御面向業(yè)務(wù)層用戶行為,不能從網(wǎng)絡(luò)層捕捉到網(wǎng)絡(luò)機器人的完整訪問脈絡(luò),無法有效應(yīng)對網(wǎng)絡(luò)機器人的暴力訪問。
2.2 網(wǎng)絡(luò)機器人(Bots)現(xiàn)狀與影響
網(wǎng)絡(luò)機器人,是一種按照一定的規(guī)則,自動地抓取網(wǎng)絡(luò)信息的程序或者腳本。隨著互聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)絡(luò)機器人也越來越普遍。50%的網(wǎng)絡(luò)流量來自網(wǎng)絡(luò)機器人,遍布各類網(wǎng)站,如票務(wù)類、電商類、招聘類、金融類、政府類、社交類等。
網(wǎng)絡(luò)機器人帶來種種負面影響:網(wǎng)絡(luò)機器人,是一種按照一定的規(guī)則,自動地抓取網(wǎng)絡(luò)信息的程序或者腳本。隨著互聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)絡(luò)機器人也越來越普遍。50%的網(wǎng)絡(luò)流量來自網(wǎng)絡(luò)機器人,遍布各類網(wǎng)站,如票務(wù)類、電商類、招聘類、金融類、政府類、社交類等。網(wǎng)絡(luò)機器人帶來種種負面影響:
圖2
- 虛耗網(wǎng)絡(luò)資源,無效益轉(zhuǎn)化;
- 暴力流量,降低系統(tǒng)穩(wěn)定性;
- 影響正??蛻粼L問,增加運營成本;
- 未經(jīng)授權(quán),二次利用網(wǎng)站數(shù)據(jù),影響數(shù)據(jù)發(fā)布權(quán)威性;
- 爬取產(chǎn)品信息、價格信息,不正當(dāng)競爭;
- 混淆用戶生態(tài),影響營銷分析。
2.3 網(wǎng)絡(luò)機網(wǎng)絡(luò)機器人(Bots)應(yīng)對與防范
應(yīng)對網(wǎng)絡(luò)機器人,必須了解網(wǎng)絡(luò)機器人。根據(jù)網(wǎng)絡(luò)機器人的原理,可以分為普通網(wǎng)絡(luò)機器人和智能網(wǎng)絡(luò)機器人。普通網(wǎng)絡(luò)機器人通過模擬網(wǎng)絡(luò)請求直接獲取網(wǎng)頁資源,智能網(wǎng)絡(luò)機器人通過瀏覽器方式獲取網(wǎng)站資源。智能網(wǎng)絡(luò)機器人更加類似正常人的訪問行為,識別防范難度更高。
圖3
受到網(wǎng)絡(luò)機器人侵害的網(wǎng)站也試圖采取應(yīng)對措施,卻往往達不到預(yù)期效果。
- 依托于傳統(tǒng)安全體系,基于防火墻攔截,無法奏效。
這種應(yīng)對方式需要持續(xù)投入人力分析日志,應(yīng)對速度不足;
規(guī)則簡單,容易被繞開;
簡單粗暴的IP攔截誤傷嚴重。
- 業(yè)務(wù)層關(guān)鍵節(jié)點嵌入驗證碼,無法奏效。
業(yè)務(wù)層缺乏網(wǎng)絡(luò)機器人訪問的全量信息,不足以解決問題;
業(yè)務(wù)層解決網(wǎng)絡(luò)機器人問題成本高,與業(yè)務(wù)層耦合性強,難維護;
對用戶無差異的驗證碼,用戶體驗差。
圖4
應(yīng)對網(wǎng)絡(luò)機器人的暴力訪問,一套行之有效的解決方案,必須能夠同時兼顧多方面。
- 基于網(wǎng)絡(luò)全流量,大數(shù)據(jù)量,長周期行為分析做決策;
- 對業(yè)務(wù)系統(tǒng)低影響,與業(yè)務(wù)層松耦合;
- 對網(wǎng)絡(luò)機器人的行為能即時識別、即時控制;動態(tài)防范、持續(xù)有效。
3.構(gòu)建基于設(shè)備指紋的網(wǎng)絡(luò)安全防御系統(tǒng)
從成本、效率和收益的平衡點出發(fā),結(jié)合設(shè)備指紋、人機識別和機器學(xué)習(xí)等技術(shù)構(gòu)建機器防御系統(tǒng),計算各類行為指標;實時決策引擎將行為指標與反Bots模型匹配,得出決策結(jié)果,與訪問者信息和設(shè)備指紋一并存入緩存;業(yè)務(wù)鏈路中的管控組件(如WAF或其他風(fēng)控組件)讀取緩存信息,以決定放行或攔截。
圖5
3.1 機器防御系統(tǒng)工作流
- 訪問者發(fā)起對銀行官網(wǎng)站的訪問。
- 機器防御流量鏡像組件將網(wǎng)絡(luò)請求復(fù)制一份送給流立方(流式大數(shù)據(jù)平臺)計算各類行為指標。
- 實時決策引擎將行為指標與反爬蟲模型匹配,得出決策結(jié)果并存入緩存。
- 可以通過串聯(lián)在主訪問鏈路上的管控組件(如WAF或其他風(fēng)控組件),根據(jù)訪問者的信息和設(shè)備指紋從緩存中讀取決策結(jié)果,來決定是放行還是采用何種攔截措施。
3.2設(shè)備指紋技術(shù)
設(shè)備指紋是網(wǎng)絡(luò)自動化攻擊防御方案中非常重要的技術(shù)。無論是普通網(wǎng)絡(luò)機器人或智能網(wǎng)絡(luò)機器人,都必須依托于相關(guān)設(shè)備運行。
設(shè)備指紋技術(shù),可采集設(shè)備(如PC或移動設(shè)備)的諸多屬性,按照一定的算法生成該設(shè)備唯一的“指紋”。通過識別唯一的設(shè)備,結(jié)合一定的行為分析規(guī)則,來識別網(wǎng)絡(luò)機器人。
圖6
設(shè)備指紋采集方式主要有以下三種:
- 主動采集技術(shù)可保證高精準性,但防篡改能力較弱,穩(wěn)定性較差;
- 被動采集技術(shù)通過較強的防篡改能力,可保證高穩(wěn)定性,但準確性較差。
- 主、被動采集技術(shù)相結(jié)合,通過采集瀏覽器、設(shè)備、網(wǎng)絡(luò)協(xié)議、程序等四重維度的采集要素,通過大數(shù)據(jù)運維不斷優(yōu)化各采集要素的置信度區(qū)間,并基于條件概率、聯(lián)合概率、置信度傳播等數(shù)學(xué)理論,將計算得出的最終置信度與信任臨界值匹配,確保極高精準性的同時,顯著提升穩(wěn)定性。
3.2.1 精準性
使用JS腳本、移動端SDK、小程序組件,通過主動采集要素與OSI網(wǎng)絡(luò)協(xié)議全棧被動采集要素相結(jié)合,能夠準確識別設(shè)備;通過多重要素采集,結(jié)合條件概率、聯(lián)合概率以及置信度算法,能夠唯一辨識設(shè)備。在滿足大多數(shù)場景下,能夠為每臺移動設(shè)備生成唯一的設(shè)備指紋;能夠為每一種PC瀏覽器內(nèi)核生成同一設(shè)備指紋;能夠保證同一指紋能穩(wěn)定對應(yīng)同一臺設(shè)備。
3.2.2 穩(wěn)定性
設(shè)備指紋穩(wěn)定性指同一設(shè)備唯一識別,不會隨著空間、時間變化而改變, 指紋識別采用多維度,多數(shù)據(jù)的比較,通過多要素置信度綜合決策算法,有效的減少了因為部分維度篡改或獲取異常對設(shè)備指紋精度的影響,可靠保證設(shè)備指紋在刷機、升級、甚至通過黑產(chǎn)軟件修改后,設(shè)備指紋保持不變。
3.2.3 安全性
設(shè)備指紋網(wǎng)絡(luò)傳輸使用外碼加密,加密算法動態(tài)變更,過期時間靈活可配,有效保障設(shè)備指紋安全性。
設(shè)備指紋服務(wù)在前后端全方位提供了安全性的保護。
- SDK端:包括IOS/Android/Web/Wap
SDK代碼防護代碼
動態(tài)混淆:動態(tài)語義級混淆、符號混淆相結(jié)合
靜態(tài)庫集成
- 采集要素報文加密,確保設(shè)備要素安全傳輸
Get請求參數(shù)加密
Post請求體加密
接口調(diào)用的驗簽算法動態(tài)更新,報文防篡改
- 設(shè)備指紋服務(wù)端:
內(nèi)/外碼相結(jié)合,外碼用于互聯(lián)網(wǎng)傳輸,內(nèi)碼用于業(yè)務(wù)系統(tǒng)使用及可信服務(wù)傳輸
外碼具有動態(tài)的過期時間,有效防止重發(fā)、盜用
支持安全傳輸層協(xié)議
設(shè)備指紋服務(wù)具有動態(tài)反欺詐功能和內(nèi)置簡單規(guī)則
圖7
作為設(shè)備指紋兩個重要的衡量標準,準確性和穩(wěn)定性是兩個極致的標準。精準性和穩(wěn)定性是衡量設(shè)備指紋生成技術(shù)先進性的核心標準,其中準確性更是設(shè)備指紋技術(shù)產(chǎn)品的使用前提。在真實業(yè)務(wù)場景中,往往采用在準確性優(yōu)先為基礎(chǔ)的情況下,以能夠最大穩(wěn)定識別設(shè)備作為最優(yōu)選擇。
3.3 人機識別技術(shù)
人機識別通過點擊行為分析判處,識別出程序或者自動化工具點擊行為,是應(yīng)對智能網(wǎng)絡(luò)機器人的重要技術(shù)。
3.4 機器學(xué)習(xí)
基于時間窗口移動的動態(tài)數(shù)據(jù)快速處理技術(shù),它可支持計數(shù)、求和、平均、最大、最小、方差、標準差、K階中心矩、遞增/遞減、最大連續(xù)遞增/遞減、唯一性判別、采集、過濾等多種分布式實時計算模型。
圖8
3.5 規(guī)則平臺
網(wǎng)絡(luò)自動化攻擊防御的全部策略均可以通過規(guī)則平臺實現(xiàn)。利用規(guī)則平臺,可制定的規(guī)則類型包括:設(shè)備信息類規(guī)則、代理IP類規(guī)則、行為異常類規(guī)則、黑白名單規(guī)則及UA識別規(guī)則等。
圖9
4.總結(jié)
通過在網(wǎng)站頁面或移動端APP中集成設(shè)備指紋腳本,收集物理設(shè)備和終端環(huán)境的多重信息,快速生成設(shè)備唯一識別碼,并對于常見黑產(chǎn)所使用的改機框架、改機軟件、偽裝軟件,以及虛擬機、模擬器、代理偵測等都能做到有針對性的識別,構(gòu)建客戶身份和所使用設(shè)備對應(yīng)關(guān)系,判斷交易可信度,實現(xiàn)互聯(lián)網(wǎng)風(fēng)險防范自動化,從而準確的定位風(fēng)險、控制風(fēng)險,降低可能的損失。
為解決不同業(yè)務(wù)場景下網(wǎng)絡(luò)機器人未授權(quán)訪問和信息爬取等問題,采用高效流式大數(shù)據(jù)處理引擎,實時處理海量業(yè)務(wù)請求,結(jié)合不同業(yè)務(wù)場景特點,定制不同業(yè)務(wù)異常行為檢測規(guī)則,并輔以設(shè)備指紋技術(shù)、代理偵測技術(shù)、人機識別技術(shù),實現(xiàn)多層次多維度的網(wǎng)絡(luò)機器人識別與防范。為各業(yè)務(wù)部門提供支撐與服務(wù),實時無感知地進行機器訪問行為識別與攔截,對于保護我行業(yè)務(wù)與用戶的敏感信息不泄露、維護銀行商業(yè)利益與信譽、提升用戶服務(wù)質(zhì)量和滿意度等方面,具有重大的意義。