風控對抗中的常規特徵及處置選擇

在風控實戰中,黑產為了獲得收益會採取多種多樣的手段進行攻擊,筆者總結了風控對抗中的特徵選擇,並分析了相應的處罰手段。

风控对抗中的常规特征及处置选择

做了很久的心理鬥爭,終於決定靜下心來把這些年在風控的實戰對抗中關於特徵和處罰選擇的經驗進行一次分享。

之所以一直不願意將這部分寫下來,是因為不光是風控的從業者,很多黑產從業者也在暗處關注著整個風控行業的動態,所以很多企業都把識別方法做為核心機密看待。

但是從另一方面來考慮,除了小部分獨角獸企業,絕大部分企業的風控做得還相對初級,也沒有一些核心的思考方法論,所以基於以上兩點來權衡,還是決定把一些在風控對抗中基本的思考方法分享給大家,幫助剛入門的風控同學能快速地形成有效戰力。

這篇分享的內容主要聚焦在對抗中的特徵選擇與處罰選擇上。

一、風控中的特徵選擇

我們知道,在真正的實戰風控中,黑產為了追求收益,一定會最大程度的將成本最小化。為了保證成本的可控,黑產在攻擊時採取的策略是能簡單決不復雜,能機器絕不人工,總之就一個目標:完成利益的收割。

所以在做風控的時候,我們的基礎思想就是找不同,找聚集性行為。我們可以從哪些方面來尋找所謂的不同或聚集性行為呢?

1. 通過基礎信息的合法性尋找特徵

基礎信息指的是當一個用戶在進行操作時,系統自動採集到的信息。以信息發佈為例,我們在查看一條發帖數據的時候,肯定能獲取到發帖的ip、發帖電話、地址、郵箱、企業、實名等等信息。這些信息就是基礎信息。當我們去觀測數據的時候就會發現,有些用戶的基礎信息不符合一個正常人的使用習慣,我們就能確認這個信息是非法的,進而確認一個用戶是異常的黑產用戶。

我們舉兩個個例子:

比如我們獲取到了用戶的手機號,但是我們在撥打的過程中發現是空號,正常的用戶不會用一個空號手機來發帖,所以我們認為這個手機號本身是非法的,所以使用非法基礎信息的用戶基本也可以定義為非法。

再比如我們獲取到了用戶填寫的地址,但是我們發現世界上不存在這樣一個地方,那麼我們也同樣可以認為這條信息是有問題的。

2. 通過內容表現尋找特徵

一般在UGC的風控場景中,黑產為了實現轉化以及躲避常規的風控策略,黑產通常在內容(圖片、文本、視頻、音頻)中留下聯繫方式用於跟用戶產生有效鏈接實施欺詐,或者將一些不良內容發佈出來以吸引流量。所以針對內容的特徵挖掘是初入風控領域的同學最容易上手的方式。

其實一般來說,關於內容類的特徵總結起來就是——有沒有在某一個數據字段中包含某一內容。常用的特徵有可以參考如下分類:

A. 關鍵詞

關鍵詞是最常用的內容特徵,特點是生效極快,失效極快。一般用於快速止血避免不良影響擴散。但是應用關鍵詞的同時需要考慮豁免條件,比如我們認為“山寨機”是非法詞,但有些用戶會在內容中出現“拒絕山寨機”。這個時候如果不考慮關鍵詞的豁免就會產生誤判。

B. 名單類

當需要在用戶產生行為之前就對用戶進行攔截或者免除處罰時,我們就會使用名單。常見的有用戶黑名單、設備黑名單、灰名單、白名單等。

黑名單常用於直接攔截,避免產生二次作惡的可能性;灰名單一般用於挑戰用戶,比如讓用戶回填驗證碼,做一些身份認證等等。白名單一般用於豁免用戶,比如用戶被某種策略誤判,可以將這個用戶加入白名單來豁免檢測。

名單的產生不應該是一次性的,名單應該進行長期維護並且注意名單的進入和退出。因為一旦停止維護,名單的準確率就會發生大幅衰減導致誤判急劇上升。

以黑名單為例,在用戶進入黑名單時應著重關注進入黑名單邏輯的準確率,儘可能地將準確率控制在接近100%。而在用戶被誤判發起申訴並且通過後,應該將用戶移出黑名單來避免對用戶反覆誤傷。

C. 算法類

一般需要對內容進行主觀性判斷的時候,因為全部通過人工去審核成本太過龐大,這個時候就需要算法能力的輔助。常見應用在內容反欺詐領域內的算法有:涉黃、暴恐、涉政檢測,廣告識別,二維碼識別,水印識別,OCR圖文識別,垃圾內容檢測,虛假人臉檢測等等。通過這些算法能力可以有效地對用戶產生的垃圾內容進行初步的攔截。

當我們使用算法類的特徵時,我們應該時刻關注誤判情況,去提供badcase供算法更新迭代。

D. 其他

剩下的關於內容的特徵無法全部歸為某一種類型,所以姑且將稱之為其他。一般來說,所有我們通過某一個字段的全部內容或者部分內容來發現異常的方法都在這個範圍內。舉幾個常見的例子:

比如我們發現手機號開頭為189的用戶出現問題的幾率非常大,那麼“手機號以189開頭”就是一個可參考的特徵。

再比如我們發現用戶的某一個字段為空,但是這個字段是前端必填。這種情況通常是後端沒有校驗字段的有效性造成的,這個時候正常用戶是不可能出現字段為空的,只有黑產通過漏洞繞過前端才可能出現這種情況。所以這個時候“某一字段為空”就是一個強特徵,直接可以定義這個行為是異常行為。

小結

通常來說,我們通過內容中直接可以發現的特徵具有見效快、失效也快的特點。這是因為黑產針對內容的改動成本非常小几乎可以忽略不計,一般在內容中加入一些隨機字符、漢字變體、格式變體就可以很輕易地繞過內容類的策略,所以內容類的策略絕大多數的情況下是在為這個業務的安全底線服務,真正進行激烈對抗的主戰場一般都是在行為特徵領域。

3. 通過用戶行為尋找特徵

一般我們把用戶產生的一切動作本身(比如登錄,註冊,發佈等等)稱為行為。異常行為的發掘是風控的核心,也是上手相對較高的部分,通過行為特徵進行對抗時就比較考驗策略分析和運營人員的功底,對數據的敏感度尤為重要。

行為特徵的發現也可以從以下幾個方面進行考慮:

A. 頻率類特徵

對於正常用戶來說,用戶產生動作只為了完成某一目的,通常目的達到動作就會跟著終止,所以正常用戶的動作通常是離散和稀疏的。而對於黑產用戶而言,為了實現收益的最大化,高頻率的動作是降低成本的核心,所以往往黑產用戶的動作是連續而緊密的。基於這種理念,頻率類的策略在風控中就有著非常重要的作用。考慮頻率特徵時,通常考慮幾個因素,分別是:時間窗口、資源、運算與閾值。

舉個例子: 在7天內同一用戶使用IP的數量大於15。這裡面7天內就代表著時間窗口,用戶與IP就代表著黑產使用的資源,數量就是運算,大於15就是閾值。

4個核心因素都是通過對黑產行為的分析而不斷調整的:

  • 時間窗口可以是:秒、分、時、天、月、季度、年。
  • 資源可以是:userid、infoid、ip、ua、cookie、設備、手機號、郵箱等等任何具有唯一性特點的實體。
  • 運算可以是:求和、平均值、最大值、最小值等各種運算方法。
  • 閾值的確定就是針對準召率表現來選擇出最優解。

B. 通過異常的操作行為尋找特徵

除了頻率類的行為特徵,我們在對抗過程中也會發現用戶產生的很多動作本身不符合常理,這種異常的表現會幫助我們找到有效對抗手段。給大家列舉一些常見的異常表現:

地理位置的異常偏移

比如ip的歸屬地和設備的定位差距過大,地理位置變化的速度過快。關於地理位置的特徵選取基於的基本理念就是用戶不會在短時間內位置發生大幅變化,如果變化的幅度過大或者過快都會存在一定風險,說明可能通過作弊手段修改定位,使用代理ip等等。

前端數據的採集異常

比如正常用戶在填寫某一個表單時,勢必會在PC端留下鼠標移動的行為,app端產生滑動的行為等。但是如果我們發現一個PC端的表單提交,用戶的鼠標從來就沒有做過任何移動,或者移動的軌跡非常相似,這個時候就會與我們的常規認知產生衝突。這種衝突通常就會發現很多黑產的蛛絲馬跡。

異常的操作行為會有很多很多,在這裡沒法給大家一一列舉,只能舉一些簡單的例子幫助大家拓展下思維。其實只要我們善於分析,就會發現各種不符合我們常規認知的動作和行為,這個時候特徵就會隨著產生。

4. 設備特徵

其實設備相關的特徵是可以併入上面提到的3種特徵類型中的,只不過在目前的對抗環境中,黑產對設備越來越依賴,所以設備的特徵在風控對抗中的變得非常重要,這也是我把設備特徵單列為一項詳細介紹的原因。下面是一些比較核心的設備特徵:

虛擬機

為了保證成本的最小化,黑產最開始在攻擊app端或者m端的時候,通常不會採買真正的手機設備,而是通過PC上的安卓模擬器或iOS模擬器來進行攻擊。所以只要發現用戶使用的是模擬設備,這個用戶大概率是黑產用戶

改機軟件

虛擬機如果被風控策略攔截後,通常黑產會採買真正的手機設備。但是為了通過一個手機偽造出多個設備的效果,就需要通過改機軟件來修改或擦除一些手機真正的硬件信息,通過這些信息的不斷變化,讓人誤以為是多個設備,這樣就可以有效地規避一些限頻,硬件限制等策略。

多開軟件

目前很多APP都會限制綁定和登錄的用戶的數量,這個時候就可以通過多開軟件將同一個APP打開很多個,這樣就可以在同一個設備上實現N個用戶登錄狀態的保持。

群控

在上面的手段都不斷失效後,黑產從業者開始大量採買相對便宜的手機,結合上面的各種手段,用真正的手機設備進行黑產攻擊。

因為這些手機設備有著聚集性的特點,所以業內把這種手段叫做群控。所以群控的識別至關重要,但是具體識別的方法因為需要保密的緣故沒法透漏,大家可以去思考一下群控的設備到底有什麼樣的特點,順著思路其實不難解決。

雲控

如果說群控是黑產自己完成的設備採買,那麼雲控就是由一個供應商統一採買設備,然後再將設備按照分時租用給想使用的黑產團伙.雲控團隊負責提供黑產所需的各種攻擊能力,這樣一來設備的使用率就會大幅提升,黑產的成本會急劇降低。有了雲控的存在,可以讓一些非常小型的黑產團伙也能擁有比較強的攻擊性。

上面列舉的是設備特徵裡比較重要的部分,其實還有很多維度可供我們參考,比如是否是常用設備、是否是常用環境、是否root等都是比較常用的特徵。

設備相關的特徵相對來說需要整體的風控能力有一定的沉澱,無論是群控的識別還是虛擬機的識別,都需要較長的時間來落地實現。所以如果是初創的風控團隊,建議大家直接採買第三方的安全服務來解決設備相關的作弊行為。

5. 聚類特徵

在風控行業內有這樣一句話——“好人是各種各樣的好,壞人都是一樣的壞。

這句話說的是如果正常用戶產生行為,個體與個體之前存在巨大差異,行為表現非常分散。而黑產用戶產生行為,為了成本最小化,用戶之間的行為會表現為高度一致。這就是聚類應用的理論基礎。通常聚類特徵有著幾種分類:

A. 內容聚類

內容聚類顧名思義,就是將所有用戶的產生的內容通過算法針對高度相似或相同的內容進行聚類,通過分析簇規模和簇中內容來發現黑產的蛛絲馬跡。常見的相關算法有文本相似度算法和圖片相似度算法等等。一般黑產會通過在內容中加入隨機字符,干擾像素等方法去阻止聚類的生成,所以算法的迭代是比較必要的。

B. 行為聚類

行為聚類其實與內容聚類相對應,通過內容不太好發現的就可以通過行為聚類來召回。通常我們是將用戶的行為繪製成一個完整的行為序列,序列裡記錄著動作本身又記錄著產生動作的過程,比如鼠標的移動軌跡,按鈕的點擊頻率,密碼的填寫速率等等。將所有用戶的行為序列繪製出來後,通過算法找到高度相似的行為序列進而確定黑產用戶的範圍。

C. 關係聚類

通過關係聚類不關注動作也不關注行為,而是關注用戶相關的屬性或關係,比如用戶用了哪些ip,哪些手機號,這個手機號又對應了哪些其他用戶。

各種實體通過屬性或關係關聯到另一種實體,這些三元組將實體與實體之間的關係繪製成一個關係網絡,通過分析網絡之間關係的疏密程度來找到一批關係高度聚集的用戶,這些關係高度聚集的用戶如果形成比較大的量級,通常代表著這些用戶存在非常大的風險。

聚類特徵不僅在做實時對抗的過程中擁有這巨大價值,同樣在風險預警與快速批量處理上也有著重要作用。大規模的聚類行為產生時,我們可以通過觀測聚類簇數量與簇中數量來判斷是否在某一個位置正在遭受攻擊,同樣我們在發現後也可以快速的將產生的簇有效的消耗掉從而實現快速反應與處理。

6. 第三方能力

在風控這個領域,所有能力都靠自己建設是不現實的,上面提到的很多特徵在實際建設過程中都需要投入大量成本,所以業內的合作也尤為重要。

一般安全服務的第三方供應商會通過標籤或者畫像的方式向外部提供數據產品。常見的有ip標籤(代理ip,黑DNS等)、手機號標籤(貓池、小號等)、個人徵信、企業徵信等。

跟第三方合作一方面可以彌補己方業務數據的缺失,將其他業務中已經被明確標記為黑的資源有效攔截在業務之外。另一方面也可以不斷接觸業內最新的安全動態,實時掌握新的安全能力去完善自己業務的風控體系。

以上就是在風控對抗的過程中常見的特徵選擇方法,這些方法只能說在各位思考的時候給大家提供一些想法。風控是一場利益的戰爭,永遠沒有結束的一天,對抗的形式也會隨著雙方技術能力的提升而不斷變化。但是隻要掌握了有效的方法論,無論對抗多麼激烈,都可以遊刃有餘地去完成風控工作。

說完了特徵如何選擇,下面我們來說一下在明確了風險之後我們應該怎樣選擇處罰的方式。

二、處罰的選擇

阿里對待安全有一個九字方針叫“輕管控,重檢測,快相應”。其中的輕管控說的是,要儘可能地避免安全對用戶體驗的傷害,讓正常用戶受到的影響最小化,其實這個就是所有處罰選擇過程中的一個基調。

1. 處罰體系的設計

關於處罰體系的設計,我們需要先給處罰做一個定義,處罰就是針對用戶的應有權利進行限制的過程。

所以要想知道應該怎麼處罰,就應該明確用戶擁有著什麼樣的權利,通過定義權利的集合就可以相對的定義處罰。

以58同城的業務為例,一個用戶擁有著以下的權利:註冊的權利、登錄的權利、搜索的權利、瀏覽的權利、發帖的權利、被瀏覽的權利,推廣的權利、成為會員的權利、IM聊天的權利等等。

假設上面所列出來的就是58用戶擁有著的權利全集,那麼在設計處罰體系的時候就可以做如下設計:禁止註冊、禁止登錄、限制瀏覽與搜索、限制發帖、刪帖、降權、限制推廣、會員禁籤,IM禁言等等。

結合用戶所犯錯誤的輕重程度,通過上面的單一的處罰或者組合處罰,就可以實現有效的風險控制。

2. 處罰的應用方法

根據處罰的性質,我們大致可以將所有的處罰大致可以分為三類:第一種叫做標記、第二種叫做挑戰、第三種叫懲罰。

A. 標記

標記一般是指給用戶或資源打上一個標籤,但是不做任何實際上的處理。通常是應用在風控路徑比較短的業務中,如果這個場景在整個業務鏈路中處於靠前的位置,那麼代表著可以獲取到的數據會比較有限,而且路徑越短,直接處理就會降低黑產的試錯成本,從而加大風控難度。

比如常見的註冊業務,如果我們一旦發現註冊的用戶存在問題,就直接禁止用戶完成註冊。我們就相當於直接告訴黑產目前的方法不能通過,那麼黑產在頻繁嘗試的過程中只要突破一次,就可以完全突破我們的風控防線。

所以在這種場景裡,我們通常不實際對用戶產生影響,而是根據用戶的行為打上標記,這個標記會作為一種特徵存在貫穿整個業務鏈路。我們實時地觀測有標記用戶後續的表現,一旦在後續的業務中存在更多的異常行為,就可以直接處罰。這個時候黑產很難搞懂我們是在什麼環節識別出的異常,這樣就能提高黑產的成本。

B. 挑戰

挑戰類的處罰一般應用在策略準確率不足,但是直接放過又存在比較大的風險的時候。顧名思義,就是通過一些手段去挑戰用戶讓用戶證明自己不是機器人,自己就是這個賬號的歸屬人等等。挑戰類處罰因為沒有實際影響用戶的權利,一旦通過挑戰用戶就可以完成正常使用功能。所以挑戰是一種體驗優良的處罰方式,但每一種挑戰自身的能力會直接決定對黑產用戶的攔截效果。

常見的挑戰形式有下面幾種:

1)基於驗證碼的挑戰

圖形驗證碼多用於區分人和機器人,用來防止大批量的機器刷帖等情況。短信或語音驗證碼主要用於證明當前號碼是本人操作。

主要的驗證碼形式有:字符驗證碼、滑動驗證碼、點選驗證碼、無感知驗證碼、短信驗證碼、語音驗證碼等。

下面針對各種驗證碼的適用邏輯和有效性做一個介紹:

字符驗證碼:最初級的驗證碼,讓用戶回填圖片中字符或者計算出算式結果。這種驗證碼破解難度極低,在黑產業內已經能達到98%以上的通過率,這個通過率已經超過了人類本身。所以在任何場景都不推薦這種驗證碼。

滑動驗證碼:該驗證方式最初來源於“極驗驗證”。

风控对抗中的常规特征及处置选择

這種驗證碼是通過拖動X軸上的滑塊進行驗證,後端同時會對前端瀏覽器環境和滑動軌跡進行分析判斷,用以攔截異常機器行為,體驗上要大幅優於常規的字符驗證碼。但是這種形式的驗證碼依然可以被很多打碼平臺破解,或者通過滑動軌跡的模擬進行破解。

點選驗證碼:最有名的點選型驗證碼就是12306的驗證碼了,這種驗證碼其實是利用了人類的認知能力與機器認知能力的偏差,比如在看到一個動物的時候,人類可以輕易地區分出這個動物是小貓還是小狗,而這個能力對於機器來說極其困難。這種驗證碼機器直接破解相對困難,但是通過打碼平臺依然可以低成本地繞過。

风控对抗中的常规特征及处置选择

無感知驗證碼:無感知驗證碼其實就是將一整套風控策略放到一個按鈕上,極驗驗證的表現形式是這樣的:

风控对抗中的常规特征及处置选择

當點擊按鈕進行驗證時,通過前端採集各種數據傳到後端的風控引擎中,只要檢測的速度足夠快,用戶就可以非常迅速地完成驗證。這種驗證看起來體驗極其優秀,但是實際上只是把後端的檢測能力具象化了,所以說有這個按鈕或者沒有這個按鈕並沒有實質區別。這種驗證碼的破解難度直接跟後端的風控能力相關,無法直接給出容易破解或者難以破解的結論。

短信驗證碼:這種驗證碼可以說是我們最常見的驗證碼形式了,它的好處是安全,體驗也不差,通過驗證碼的回填可以大概率確定操作是本人進行。但是通常在註冊等環節第一次需要做短信驗證的時候,可以通過貓池手機號來完成驗證。這種手機卡不同於普通手機卡,是無法接通電話但是可以接收短信的,所以就會黑產大規模地採用這種手機卡完成註冊。

語音驗證碼:為了解決部分貓池手機接受驗證碼的問題,語音驗證碼應運而生,這種驗證碼通過電話下發,用戶記住數字後完成回填。語音驗證碼的體驗相對較差,一般非必要不推薦這種驗證形式。

2)基於身份合規性的挑戰

在很多時候,我們發現作弊的用戶沒有做過任何實名或者可以證明身份的動作。一般這個時候,我們會讓某些風險較大但是又無法判斷為黑的用戶進行實名認證和企業認證,這種需求也可能來源於業務的硬性規則。

一般做個人實名的方式有:實名二要素認證,手持身份證認證,銀行卡認證,手機號三要素認證,人臉認證等。

企業認證的方式通常是營業執照認證和對公賬號打款認證。

我們建議業務方在開展新業務的時候,一定要關注認證的相關要求,認證一方面作為一個門檻可以大幅提升黑產成本,另一方面認證也可以作為唯一性的特徵供我們進行風控識別。

3)基於私密信息的挑戰

這種挑戰多用於賬號安全或密碼找回。當我們判斷當前使用賬號的人可能不是用戶本人時,就可以通過這種方式進行挑戰。

常見的問題有“我的父親名字叫什麼?”“我最常用的銀行卡號是哪張?”這種挑戰方式通過只有用戶自己知道的信息來挑戰當前的操作人,如果當前操作人無法通過,那麼就代表當前操作人非用戶本人。

风控对抗中的常规特征及处置选择

這種挑戰方式體驗相當優秀,並且通過信息的不對稱性有效地防止了風險發生,所以當用戶在業務中已經存在一些關鍵信息時,可以考慮用這種方式進行挑戰。

以上就是常見的挑戰形式,不同的挑戰形式適用的場景和條件都有所不同,所以對能力的瞭解也是做好風控的前提。

C. 懲罰

當我們可以對用戶的行為明確定義為惡意行為的時候,這個時候採取的動作通常就都屬於懲罰了。

我們在看待用戶的惡意行為時應該從兩個維度去考慮,第一種是用戶確實是正常用戶,只是為了獲取一些短期利益觸犯了平臺規則。另一種是用戶為批量惡意的黑產用戶,就是為了攫取流量詐騙變現。

在對待第一種用戶時,我們的處罰態度應該是引導大於處罰,這個時候我們可以將處罰柔性化,比如淘寶商家違規分值體系就是一個比較成功的例子。

當用戶初犯的時候可能是下架出問題的商品並且扣分,多次觸犯規則後,當分值達到一定程度時可能會對搜索降權,再犯可能是暫時關店,最後可能才是永久清退。我們通過相對柔性的處罰,既處罰了不良行為本身,但同時也給用戶一個改進的空間和機會,通過積極的運營引導是可以把這部分用戶轉化為優質用戶的。

而對待明確的黑產用戶時,我們的處罰態度就應該是明確和清晰的。一旦確保了判定的準確性,我們不光要把賬號的權利做限制,賬號所相關的一切有效資源比如手機號、郵箱、身份證號都要被有效地消耗掉,確保同樣的資源不會在業務中二次作惡。我們處罰生效得越快,資源消耗得越徹底,風險出現的可能性就越小。

所以整體來說,處罰既要讓正常用戶儘量不受任何影響,又要高效地消耗黑產資源,並且對處於灰色地帶的用戶給予積極引導,讓這種用戶自覺發生改變從而促進生態發展。

三、結語

以上就是關於風控對抗中的特徵選擇和處罰選擇的一些心得。因為風控行業的特性,本文無法將所有可能性同步給大家,但是關於風控實戰中的主要思考方法大部分都體現了出來,希望能對一些新入風控行業的同學有所幫助,同時也希望其他安全業內的資深同學能夠對不足之處給予指導和補充。

題圖來自 Unsplash,基於 CC0 協議


分享到:


相關文章: