從Cookie到裝置ID,從演算法到雲+端!全面盤點裝置指紋技術的五代發展

頂象技術 發表於 2022-08-03
演算法 Cookie

記錄追蹤是數字平臺為使用者提供服務的關鍵因素。無論是PC網際網路時代,還是移動網際網路,乃至洶洶作勢的元宇宙,平臺需要不同的技術工具以便於辨別真偽、跟蹤操作、瞭解使用者、保障安全。尤其辨別真偽是有效服務的前提和基礎,基於真實的資料才能做好有價值的服務。

 

裝置指紋誕生伴隨數字化的發展

 

PC網際網路時代,人們主要是透過PC上的瀏覽器訪問網站網際網路企業透過Cookie以及IP地址用於識別使用者裝置。Cookie技術出現在20世紀90年代,能夠記錄跟蹤使用者訪問記錄、次數、電腦資訊甚至賬戶等資訊,成為網路廣告服務商識別使用者身份的重要憑證,被廣泛應用於Web領域的裝置的識別與標識。

 

由於Cookie採用一種使用者資料本地儲存的實現方式,惡意使用者可以透過清除本地資料的方式來輕易地逃避檢測,其應用範圍受到很大的限制。同時,由於對使用者隱私保護的日益關注,主流瀏覽器廠商已經限制並逐步摒棄cookie技術的使用。

 

移動網際網路時代,使用者上網的裝置多元化、連線網際網路的渠道多樣化、接入服務的地點任意化,人們的操作行為個性化,更加難以識別與跟蹤使用者同時,網際網路及各類技術讓身份偽造愈加簡單,身份偽造的手段愈加複雜。Cookie技術識別使用者已經越來越不能適應當前的網路環境。

 

在無法快速識別操作使用者的情況下,從裝置著手,識別可疑上網裝置,及時對高風險的裝置及相關操作做出反應,即可控制風險降低損失。裝置指紋能夠來區分操作者的真偽,是有價值的使用者還是惡意欺詐行為。能夠同時採集裝置、網路、操作行為、地址、使用者習慣等資訊的裝置指紋成為當前新的且更加有效的裝置識別與追蹤技術。

 

裝置指紋技術發展的五個階段

 

第一階段,基於IP地址和Cookie基於IP地址採集形成用於一些業務上的埋點跟蹤作為最早出現的裝置標識方案,簡單易用,IP地址直到現在仍然是採集指標之一。

 

隨著區域網、行動網路中的動態 IP 分配技術,使得 IP 地址作為裝置標識的解析度和準確度大為下降;此外,本地儲存的實現,使用者可以透過清除本地資料的方式來輕易的逃避檢測,所以其應用範圍受到很大的限制,再有對使用者隱私保護的日益關注,主流瀏覽器廠商已經限制並逐步摒棄Cookie 技術的使用。

 

第二階段,基於裝置資訊客戶呈現。透過裝置的基礎硬體、網路、執行環境等特徵資訊,包括 iOS 裝置的IDFA(廣告識別符號)、IDFV(供應商識別符號);Android裝置的 IMEI(移動裝置識別碼)、MAC(乙太網實體地址) 等。

 

隨著各種作弊手段和工具的出現,裝置上的各種引數都可以被篡改和偽造,透過一鍵抹機,變成一臺新的裝置,這就影響了對裝置唯一標識的效果。

 

第三階段,基於裝置多維資訊,並引入演算法。透過前端採集使用者上網的裝置硬體、網路、執行環境等特徵資訊,後臺利用採集的多個維度資料,透過演算法為裝置生成唯一的ID

 

隨著移動網際網路的普及,使用者使用裝置越來越多、使用平臺越來越多,這就對跨平臺下使用者裝置指紋的唯一性提出要求。

 

第四階段,跨平臺和唯一性。在第三階段的基礎上,實現 H5、小程式、APP 裝置指紋的統一的裝置指紋 ID。該階段的裝置指紋需要對各種作弊工具有一定的對抗性,以保證指紋的唯一性、穩定性和安全性。

 

該階段下出現了很多新現象。

 

第一,各行各業都在推進業務線上化,利益誘惑比較大,同黑灰產攻防對抗比較激烈,持續時間比較久。

第二,隨著各手機廠商對許可權的收緊和隱私政策的出臺,可採集的資訊逐步受限,像IMEIMACIDFA就存在採集率的問題,當應用的安裝量達到一定數量後,會發現採集率不到80%,而且採集到的資料質量也存在各種問題,比如會出現這樣的MAC地址:“00:00:00:00:00:00”、“00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00”、“ff:ff:ff:ff:ff:ff”,所以在保證指紋穩定性上需要持續投入時間和精力去研究。

第三,市場有專門做裝置指紋的安全廠商,專注在裝置指紋這個基礎元件上,進行長期的投入研究和產品化。

第四,各種新概念頻出,大量從業者追求概念,進行嘗試和探索,但實際技術上沒有帶來真正的突破。

從Cookie到裝置ID,從演算法到雲+端!全面盤點裝置指紋技術的五代發展從Cookie到裝置ID,從演算法到雲+端!全面盤點裝置指紋技術的五代發展

階段雲端聯動與資料沉澱該階段透過+端模式,除了資訊採集更詳細外,更顯著增強裝置攻防對抗的時效性和安全性能夠綜合各行業的攻防經驗和風險資料沉澱當新的攻擊方式和特徵出現,指紋技術如何能更快的感知應對和準確識別。

 

如頂象裝置指紋,本身就是防禦雲的一部分。頂象裝置指紋整合業務安全情報、雲策略和資料模型,透過對上網軟硬體生成唯一指紋資訊,支援安卓、iOS、H5、公眾號、小程式,可有效偵測模擬器、刷機改機、ROOT越獄、劫持注入等風險。內嵌業務安全情報中心,24個行業風險情報資訊第一時間觸達,幫助安全運維人員及時瞭解安全態勢;整合安全雲策略服務,全網的風險策略實時升級,為安全運維提供最新的防控思路;搭載AI模型建設模組,實時沉澱業務風險資料,透過有監督和無監督的機器學習威脅行為建模,挖掘潛在風險,實現防控規則升級迭代,提升風險防控與攻擊防禦能力。

從Cookie到裝置ID,從演算法到雲+端!全面盤點裝置指紋技術的五代發展從Cookie到裝置ID,從演算法到雲+端!全面盤點裝置指紋技術的五代發展

該階段主要有四個特徵:

 

第一,識別率高安全性強。精準識別識別模擬器、刷機改機、注入、動態除錯等幾十項風險,避免自身被破解,守住資料真實性。

第二,更新速度快。當有新的攻擊方式和特徵出現後,裝置指紋技術以小時、甚至分鐘級別同步更迭,應該能更快的感知風險和準確識別。

第三,整合專家經驗。裝置指紋後臺沉澱不同行業不同場景的風險資料,並積累豐富攻防經驗,支援冷啟動狀態下應對欺詐攻擊。

第四,雲端聯動。安全雲形態的出現,透過雲+端模式,實現分鐘級的響應,進行快速的對抗。

 

第五代裝置指紋必備的三項能力

 

第五代裝置指紋,穩定性和唯一性是基礎能力,安全性和攻防性是經驗積累,如何快速的進行風險感知和攻防升級,將會是一個好的裝置指紋技術的評判標準。因此,第五代裝置指紋需要具備下面項能力。

從Cookie到裝置ID,從演算法到雲+端!全面盤點裝置指紋技術的五代發展

快速對抗能力業務應用暴露在網際網路上,黑灰產則是隱藏在背後,所以攻防必然存在一定的滯後性,這就要求裝置指紋技術在面對新的攻擊方式和風險特徵時,有及時的風險情報感知和防控升級的能力,後臺可以結合各行業的攻防經驗和風險資料沉澱,透過雲+端的方式,進行快速的攻防升級,在一個攻防週期內解決掉業務風險。

 

風險識別能力。裝置智慧需要具備對裝置基礎環境和執行期的安全檢測能力,能精準識別模擬器、root、越獄、除錯、程式碼注入、多開、VPN代理等風險。例如,iOS平臺hook、越獄行為,安卓root、debug、記憶體dump、注入、多開、模擬器、漏洞攻擊等風險行為,WEB平臺下瀏覽器顏色深度、解析度,瀏覽器與系統、UA的匹配性和一致性、cookie是否禁用等行為。

 

99%以上穩定性和100%唯一性。裝置指紋自身SDK程式碼需要進行保護,防止採集邏輯被破解和出現資料偽造,從資料採集源頭上保證真實性和準確性。不管對裝置引數進行篡改偽造(篡改IMEI、MAC地址、AndroidId、SIM卡資訊、機型、品牌等),或是禁用、清除快取和cookie,裝置指紋都要保持不變,穩定性至少要保持在99%以上。任意兩臺裝置的指紋不能相同,不發生碰撞,為每一臺裝置生成的裝置指紋ID需要全球唯一,並且不可被篡改,唯一性上要保證在100%。

 

隨著各手機廠商對系統原始碼的修改深度加深。例如,部分企業基於裝置資訊遮蔽的目的或模擬其他廠商的目的,對裝置資訊進行深度修改。也會造成特定情況下的裝置指紋採集的資訊被遮蔽、修改或者引數值為無意義的字串,高穩定性和唯一性的保證是個比較大的挑戰,需要持續的去研究,也是要保持住的基本能力。

 

裝置指紋不同的業務應用場景

 

作為了業務體系的基礎元件之一裝置指紋廣泛應用在標記、追蹤、臨時憑證、分析、反欺詐等不用服務場景下,是風控體系的重要組成部分。

1、動態匿名跟蹤。未註冊使用者訪問網站的路徑、不透露使用者隱私資料下作為使用者的身份標識,裝置指紋技術提供了精準的跟蹤能力,可以更好的為業務提供追蹤服務。

 

2、臨時使用者ID。在一些業務場景允許使用者以遊客的身份進行訪問和使用,此時業務後臺可獲取使用者的資訊很有限,透過裝置指紋技術裝置ID作為臨時使用者ID。比如線上遊戲遊客可以使用臨時使用者ID,快速體驗遊戲,遊戲的進度、裝備、等級等資訊可以儲存在遊客的臨時使用者ID下,待遊客轉換為正式使用者自動合併先前的遊戲進度等資訊到正式使用者資訊內

 

3、資料標記與關聯分析。在大資料分析和機器學習場景,裝置指紋可以作為最基礎的欄位,提供另一個維度來觀察業務指標資料,進行關聯分析。比如透過裝置指紋ID分析活躍裝置數、新增裝置數、使用者使用的機型分佈、同一個裝置上交易筆數和金額、同一個裝置上訪問的使用者數等。在關係網的構建上,除了使用使用者手機號、卡號等作為節點,也可以把裝置ID作為節點,觀察使用者間的關係

 

4、反欺詐。裝置指紋技術是反欺詐基礎應用在識別機器攻擊、虛假註冊、惡意登入、多賬號、渠道作弊、模擬器等方面效果顯著

 

1) 識別機器攻擊機器攻擊/指令碼攻擊一般是透過編寫自動化指令碼或工具,批次化和自動化的向目標網站發起請求,透過使用裝置指紋技術,能夠很好的識別是否機器、指令碼發起的請求。

2) 識別虛假註冊/惡意登入利用裝置指紋技術,可以識別模擬器上的賬號註冊、同裝置一定時間段內的大量註冊,以及註冊的裝置是否有高風險。同樣,在登入場景有效識別統一裝置上頻繁登入嘗試撞庫風險,記錄識別登入裝置是否有短時間內的漂移、是否頻繁切換等。

3)識別多賬號繫結在營銷活動中,一般活動規則會限制同裝置同賬號只能參加一次。童工裝置指紋技術可以做快速識別是設備上是否繫結多個賬號,同一個賬號是否在多個裝置上登入

4)識別渠道作弊在應用推廣、展示廣告等場景下,黑灰產會透過各種技術工具偽造資料、流量作弊,騙取推廣費用。透過裝置指紋技術可以及時識別虛假機器、真機虛假安裝等,從而有效的追蹤渠道流量和表現。

5)識別模擬器/除錯等風險裝置指紋技術能夠有效檢測到裝置終端環境和執行期風險,如,模擬器、越獄、除錯、注入、攻擊框架等。

從Cookie到裝置ID,從演算法到雲+端!全面盤點裝置指紋技術的五代發展

裝置指紋技術的應用流程

 

裝置指紋可整合於App、小程式、網站等不同平臺,整合的方式是SDK。以Android系統為例,裝置指紋通常採用aar包(Android Archiv,安卓庫專案的二進位制歸檔檔案)方式進行提供的SDK,也會次啊應aar包和SO檔案(動態連結庫)進行結合整合的裝置指紋SDK

 

裝置指紋技術是工作流程主要分為四步:採集傳輸、解密處理、生成唯一ID、返回核驗。


從Cookie到裝置ID,從演算法到雲+端!全面盤點裝置指紋技術的五代發展

1,開啟AppH5、小程式,裝置指紋即開始進行多維度資料的採集,並對採集到的資料進行加密和壓縮,保證資料的安全性和網路傳輸效率。

2,裝置指紋後臺接收到採集資料後進行解密,然後對資料格式化、過濾、轉換等初步處理最佳化。

3、然後,裝置指紋後臺對資料進行權重設定和匹配。部分資料欄位參與指紋計算的權重會高一些,部分欄位參與計算的權重會低一些或者不參與計算。並對一些欄位會做一些分析和相似性計算,進行去重等處理,最後綜合生成或關聯一個裝置ID,作為該次請求裝置的指紋,並將生成的裝置ID進行持續化儲存,供後續使用。

4、操作者在AppH5、小程式操作時,裝置指紋對操作資訊匹配、核驗,並提供驗證結果。

 

以上整個生成的過程毫秒級完成。其中,最核心的點在於用什麼樣的演算法來生成指紋ID,保證足夠好的穩定性和唯一性,這就需要大量的研究探索和在實際業務中的長期實踐。