摘要:上一章搭建風(fēng)控系統(tǒng)道路上踩過(guò)的坑信息采集我們介紹了第一點(diǎn),如何去獲取足夠多的數(shù)據(jù),而接下來(lái)的事情就是要?jiǎng)?chuàng)建一個(gè)機(jī)制去靈活的處理這些信息,為自動(dòng)分析捕捉風(fēng)險(xiǎn)事件提供基礎(chǔ)原料,進(jìn)而借助規(guī)則引擎從中分析出風(fēng)險(xiǎn)事件。
上一章《搭建風(fēng)控系統(tǒng)道路上踩過(guò)的坑01--信息采集》我們介紹了第一點(diǎn),如何去獲取足夠多的數(shù)據(jù),而接下來(lái)的事情就是要?jiǎng)?chuàng)建一個(gè)機(jī)制去靈活的處理這些信息,為自動(dòng)分析捕捉風(fēng)險(xiǎn)事件提供基礎(chǔ)原料,進(jìn)而借助規(guī)則引擎從中分析出風(fēng)險(xiǎn)事件。
在開(kāi)始前,我們還是回顧下業(yè)務(wù)風(fēng)控主要做四件事:
1、拿到足夠多的數(shù)據(jù)
2、做足夠靈活的分析平臺(tái)去分析數(shù)據(jù)
3、產(chǎn)出風(fēng)險(xiǎn)事件進(jìn)行阻攔風(fēng)險(xiǎn)
4、量化風(fēng)險(xiǎn)攔截的價(jià)值和不斷分析案例進(jìn)行策略?xún)?yōu)化
接下來(lái),同樣的有三件事情需要考慮:
一、讓分析人員可以快速的查詢(xún)?cè)既罩?/b>日志并不是簡(jiǎn)單的存下來(lái),從風(fēng)控分析的需求來(lái)看,通過(guò)IP、用戶(hù)名、設(shè)備等維度在一個(gè)較長(zhǎng)的跨度中搜索信息是非常高頻的行為,同時(shí)還存在在特定類(lèi)型日志,比如在訂單日志或者支付日志中按特定條件搜索的需求。
而這些主要是為了能夠讓分析人員可以快速的還原風(fēng)險(xiǎn)CASE,例如從客服那邊得到了一個(gè)被盜的案例,那么現(xiàn)在需要從日志中查詢(xún)被盜時(shí)間段內(nèi)這個(gè)用戶(hù)做了什么,這個(gè)過(guò)程如果有一個(gè)界面可以去做查詢(xún),顯然比讓分析人員用grep在一大堆文件中查詢(xún)要快的多,并且學(xué)習(xí)門(mén)檻也要低得多。
如果在日志做過(guò)標(biāo)準(zhǔn)化的前提下,也可以進(jìn)行后續(xù)的業(yè)務(wù)語(yǔ)言轉(zhuǎn)譯,將晦澀難懂的日志字段轉(zhuǎn)化為普通員工都能看得懂的業(yè)務(wù)語(yǔ)言,也能極大的提升分析師在還原CASE時(shí)閱讀日志的速度。
二、實(shí)時(shí)或定時(shí)的計(jì)算加工消息成變量&檔案例如在分析某個(gè)帳號(hào)被盜CASE的時(shí)候,往往需要把被盜期間登錄的IP地址和用戶(hù)歷史常用的IP地址進(jìn)行比對(duì),即使我們現(xiàn)在可以快速的對(duì)原始日志進(jìn)行查詢(xún),篩選一個(gè)用戶(hù)的所有歷史登錄IP并察看被盜IP在歷史中出現(xiàn)的比例也是一個(gè)非常耗時(shí)的工作。
再比如我們的風(fēng)控引擎在自動(dòng)判斷用戶(hù)當(dāng)前登錄IP是否為常用IP時(shí),如果每次都去原始日志里面查詢(xún)聚合做計(jì)算也是一個(gè)非常“貴”的行為。
那么,如果能預(yù)定義這些變量并提前計(jì)算好,就能為規(guī)則引擎和人工節(jié)省大量的時(shí)間了,而根據(jù)這些變量性質(zhì)的不同,采取的計(jì)算方式也是不同的。不過(guò)還好我們有一個(gè)標(biāo)準(zhǔn)可以去辨別:頻繁、對(duì)時(shí)效敏感的利用實(shí)時(shí)計(jì)算(比如訪問(wèn)頻率、時(shí)間間隔);而相對(duì)不頻繁、對(duì)時(shí)效不敏感的利用定時(shí)計(jì)算(比如用戶(hù)的常用IP、設(shè)備,即使少算短期內(nèi)的登錄記錄,也不會(huì)受到太大影響)。
三、選擇規(guī)則引擎將人工策略自動(dòng)運(yùn)行一個(gè)設(shè)計(jì)優(yōu)雅的規(guī)則引擎是把分析師的經(jīng)驗(yàn)決策和數(shù)據(jù)最終轉(zhuǎn)化為風(fēng)險(xiǎn)輸出的核心模塊,首先說(shuō)為什么需要規(guī)則引擎而不是選擇硬編碼邏輯——
筆者無(wú)數(shù)次遇到過(guò)這種場(chǎng)景,一個(gè)上午剛剛上線(xiàn)的策略,沒(méi)過(guò)1個(gè)小時(shí),攻擊者或者欺詐者就已經(jīng)試出繞過(guò)策略的方法了,如果你的風(fēng)險(xiǎn)控制邏輯是硬編碼,那么恭喜你,再走一遍開(kāi)發(fā)測(cè)試發(fā)布流程。
快速響應(yīng)是安全的生命線(xiàn),無(wú)法想象還有比被攻擊者胖揍48小時(shí)然后才反應(yīng)過(guò)來(lái)去擋臉更讓人沮喪的事情了。
所以策略引擎必須能把策略邏輯從業(yè)務(wù)邏輯中解藕出來(lái),讓防御者可以靈活配置規(guī)則在靜默模式下驗(yàn)證和實(shí)時(shí)上線(xiàn)生效,并可以去隨時(shí)調(diào)整。
類(lèi)似的開(kāi)源框架有很多,各有優(yōu)劣,但如果需要降低學(xué)習(xí)曲線(xiàn),必須進(jìn)行一層包裝(這里又是一個(gè)比較大的話(huà)題,就先略過(guò)了)。
坑位標(biāo)注: 1、Sharding會(huì)影響到你的策略為了支持并發(fā)和性能,通常在利用集群計(jì)算變量的時(shí)候我們會(huì)用到sharding。
sharding方式會(huì)按IP把數(shù)據(jù)分配到不同的運(yùn)算單元中去處理,在讀取結(jié)果的時(shí)候按IP去集群中的某臺(tái)機(jī)器中去拿數(shù)據(jù),以大幅提升并發(fā)處理讀取計(jì)算結(jié)果的能力。
那么,現(xiàn)在如果我想去按某個(gè)USER去拿數(shù)據(jù)的時(shí)候,就會(huì)發(fā)現(xiàn)一個(gè)用戶(hù)在不同IP下的信息被保存在不同的服務(wù)器上了,所以單一的Sharding分配肯定是不合理的,這點(diǎn)必須要注意。
2、策略中用到的變量,能不用現(xiàn)場(chǎng)算的就不用有些簡(jiǎn)易的策略引擎設(shè)計(jì)中用到的變量都是到數(shù)據(jù)庫(kù)里現(xiàn)場(chǎng)算的,雖然可以極大的提升靈活性(新的變量不需要考慮歷史數(shù)據(jù)回補(bǔ)),但會(huì)極大的影響穩(wěn)定性和響應(yīng)時(shí)長(zhǎng),尤其在業(yè)務(wù)請(qǐng)求爆發(fā)的時(shí)候幾乎都會(huì)出現(xiàn)宕機(jī)無(wú)響應(yīng)的問(wèn)題。
要知道業(yè)務(wù)研發(fā)對(duì)安全的結(jié)果并不是那么敏感,但如果出現(xiàn)了問(wèn)題導(dǎo)致應(yīng)用不穩(wěn)定給人添麻煩,被拋棄可能就是早晚的事情,所以變量一定要盡量做到提前計(jì)算,并且設(shè)立緩存機(jī)制。
3、對(duì)風(fēng)險(xiǎn)分析要用到的計(jì)算資源有充分的認(rèn)識(shí)毫不夸張的說(shuō),合格的風(fēng)險(xiǎn)分析要做的實(shí)時(shí)、準(zhǔn)實(shí)時(shí)計(jì)算量要大過(guò)應(yīng)用內(nèi)所有計(jì)算的總和甚至超過(guò)幾倍。
其實(shí)這也很好理解,比如一個(gè)典型登錄場(chǎng)景,業(yè)務(wù)要做的邏輯最主要的就是檢查密碼和帳號(hào)的身份是否吻合,而風(fēng)控要把這登錄用戶(hù)的歷史檔案全部拉出來(lái)看個(gè)遍,然后根據(jù)風(fēng)控策略來(lái)決定是否放行。所以在規(guī)劃風(fēng)險(xiǎn)分析要用到的資源時(shí)請(qǐng)不要吝嗇,按業(yè)務(wù)5X甚至10X的標(biāo)準(zhǔn)來(lái)評(píng)估風(fēng)險(xiǎn)分析的資源需求。
如果說(shuō)信息采集主要看的是安全產(chǎn)品經(jīng)理的溝通協(xié)調(diào)能力,設(shè)計(jì)風(fēng)險(xiǎn)分析功能更多的就是考驗(yàn)安全產(chǎn)品經(jīng)理的邏輯思維能力。
到了這樣一個(gè)階段,外部冗雜的溝通協(xié)調(diào)已經(jīng)結(jié)束,但如何最大化利用前期打下的基礎(chǔ),需要對(duì)風(fēng)險(xiǎn)問(wèn)題的分析、決策過(guò)程有一個(gè)非常清晰的認(rèn)識(shí),這里也有一個(gè)比較好的標(biāo)準(zhǔn)來(lái)去檢驗(yàn):
分析平臺(tái)設(shè)計(jì)的差,那么就只有設(shè)計(jì)者自己會(huì)用;
設(shè)計(jì)的好,你會(huì)發(fā)現(xiàn)處理投訴的客服、分析師都會(huì)很樂(lè)意來(lái)用你的分析平臺(tái)為他們解決問(wèn)題。
反爬蟲(chóng)
文章來(lái)源:http://bigsec.com/
劉明 ?豈安科技聯(lián)合創(chuàng)始人,首席產(chǎn)品技術(shù)官
超過(guò)6年的風(fēng)控和產(chǎn)品相關(guān)經(jīng)驗(yàn),曾就職網(wǎng)易,負(fù)責(zé)《魔獸世界》中國(guó)區(qū)賬戶(hù)體系安全。現(xiàn)帶領(lǐng)豈安互聯(lián)網(wǎng)業(yè)務(wù)風(fēng)控團(tuán)隊(duì)為客戶(hù)提供包括了明星產(chǎn)品Warden和RED.Q的風(fēng)控服務(wù)。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/44302.html
摘要:上一章搭建風(fēng)控系統(tǒng)道路上踩過(guò)的坑信息采集我們介紹了第一點(diǎn),如何去獲取足夠多的數(shù)據(jù),而接下來(lái)的事情就是要?jiǎng)?chuàng)建一個(gè)機(jī)制去靈活的處理這些信息,為自動(dòng)分析捕捉風(fēng)險(xiǎn)事件提供基礎(chǔ)原料,進(jìn)而借助規(guī)則引擎從中分析出風(fēng)險(xiǎn)事件。 上一章《搭建風(fēng)控系統(tǒng)道路上踩過(guò)的坑01--信息采集》我們介紹了第一點(diǎn),如何去獲取足夠多的數(shù)據(jù),而接下來(lái)的事情就是要?jiǎng)?chuàng)建一個(gè)機(jī)制去靈活的處理這些信息,為自動(dòng)分析捕捉風(fēng)險(xiǎn)事件提供基礎(chǔ)...
摘要:上一章搭建風(fēng)控系統(tǒng)道路上踩過(guò)的坑信息采集我們介紹了第一點(diǎn),如何去獲取足夠多的數(shù)據(jù),而接下來(lái)的事情就是要?jiǎng)?chuàng)建一個(gè)機(jī)制去靈活的處理這些信息,為自動(dòng)分析捕捉風(fēng)險(xiǎn)事件提供基礎(chǔ)原料,進(jìn)而借助規(guī)則引擎從中分析出風(fēng)險(xiǎn)事件。 上一章《搭建風(fēng)控系統(tǒng)道路上踩過(guò)的坑01--信息采集》我們介紹了第一點(diǎn),如何去獲取足夠多的數(shù)據(jù),而接下來(lái)的事情就是要?jiǎng)?chuàng)建一個(gè)機(jī)制去靈活的處理這些信息,為自動(dòng)分析捕捉風(fēng)險(xiǎn)事件提供基礎(chǔ)...
本系列的上一篇文章搭建風(fēng)控系統(tǒng)道路上踩過(guò)的坑02-風(fēng)險(xiǎn)分析,我們介紹了在采集信息后如何去分析這些數(shù)據(jù)產(chǎn)出風(fēng)險(xiǎn)事件,而產(chǎn)出的報(bào)警已經(jīng)脫離了業(yè)務(wù)系統(tǒng)并不能被采用的。 說(shuō)白了:分析出來(lái)的東西不能光自己看著High,還得去阻攔這些風(fēng)險(xiǎn)才能真正產(chǎn)生業(yè)務(wù)價(jià)值。 在開(kāi)始前,我們還是回顧下業(yè)務(wù)風(fēng)控主要做的四件事: 1、拿到足夠多的數(shù)據(jù) 2、做足夠靈活的分析平臺(tái)去分析數(shù)據(jù) 3、產(chǎn)出風(fēng)險(xiǎn)事件進(jìn)行阻攔風(fēng)險(xiǎn) 4、量化風(fēng)險(xiǎn)...
閱讀 3794·2023-04-25 16:32
閱讀 2194·2021-09-28 09:36
閱讀 2035·2021-09-06 15:02
閱讀 673·2021-09-02 15:21
閱讀 918·2019-08-30 15:56
閱讀 3513·2019-08-30 15:45
閱讀 1708·2019-08-30 13:09
閱讀 379·2019-08-29 16:05