從2018年開始,我和高岳、孫奇一起從事業(yè)務(wù)安全產(chǎn)品設(shè)計、研發(fā)的工作。在此之前,高岳是移動安全方面的專家,孫奇是資深的Java架構(gòu)師,而我則是從事黑客攻防對抗的工程師。于我們而言,這是一段非常美好的經(jīng)歷,非常感謝命運(yùn)的安排。
因?yàn)閭人興趣和工作需要,我們和很多朋友就互聯(lián)網(wǎng)業(yè)務(wù)安全進(jìn)行了深入交流。他們有的是互聯(lián)網(wǎng)公司的產(chǎn)品研發(fā)人員和運(yùn)營人員,有的是傳統(tǒng)金融機(jī)構(gòu)互聯(lián)網(wǎng)線上業(yè)務(wù)拓展推廣人員,也有的是專業(yè)風(fēng)控和安全從業(yè)者。從與他們的溝通交流中,我們學(xué)到了很多業(yè)務(wù)領(lǐng)域的知識,同時也發(fā)現(xiàn)大家對互聯(lián)網(wǎng)黑產(chǎn)及互聯(lián)網(wǎng)業(yè)務(wù)安全體系構(gòu)建缺乏深入了解。我們常常聽到這樣的話:“投入了很多資源構(gòu)建互聯(lián)網(wǎng)業(yè)務(wù)安全體系,購買了專業(yè)公司的風(fēng)控產(chǎn)品和服務(wù),但是依然沒能阻止網(wǎng)絡(luò)黑產(chǎn)無情的攻擊!
在實(shí)際項(xiàng)目中,我們也遇到了一些困擾:產(chǎn)品POC測試嚴(yán)重脫離業(yè)務(wù)場景實(shí)際需求,錯誤的策略部署導(dǎo)致產(chǎn)品無法正常發(fā)揮防御能力。我們在復(fù)盤時常常反思這些問題,是不是可以通過某些方式幫助客戶更全面地理解業(yè)務(wù)風(fēng)險的脈絡(luò)和黑產(chǎn)攻擊的套路。很多問題的產(chǎn)生并不是因?yàn)楹诋a(chǎn)團(tuán)伙的技術(shù)有多么高明,而是因?yàn)榉烙讲荒軌蚝芎玫貛椭蛻衾斫鈽I(yè)務(wù)風(fēng)險。
2019年3月的某一天,高岳提議寫一本全面介紹互聯(lián)網(wǎng)業(yè)務(wù)反欺詐體系構(gòu)建和實(shí)踐經(jīng)驗(yàn)的書籍,這個建議點(diǎn)燃了我們心中的火焰。我們立即開始整理資料并寫作,經(jīng)過8個多月的努力,我們在2020年的春節(jié)前完成了這本書稿。
本書主要分為洞察黑產(chǎn)、體系構(gòu)建、實(shí)戰(zhàn)教程和新的戰(zhàn)場4個部分。第1部分介紹了黑產(chǎn)欺詐團(tuán)伙的運(yùn)作套路和攻擊手段;第2部分總結(jié)了我們在構(gòu)建反欺詐技術(shù)體系過程中沉淀的實(shí)踐經(jīng)驗(yàn);第3部分分享了我們和黑產(chǎn)對抗的多個實(shí)戰(zhàn)案例,以及機(jī)器學(xué)習(xí)算法的綜合運(yùn)用;第4部分介紹了我們在物聯(lián)網(wǎng)、內(nèi)容安全、隱私合規(guī)等方面的實(shí)踐和對海外廠商的觀察。
希望讀者通過閱讀本書,可以對互聯(lián)網(wǎng)反欺詐的行業(yè)現(xiàn)狀有一個系統(tǒng)而具體的認(rèn)識。業(yè)務(wù)安全的真正力量是內(nèi)生的,專業(yè)的安全風(fēng)控公司可以提供工具、平臺和策略建議,但是只有業(yè)務(wù)方真正理解風(fēng)險和防控思路,才能在與黑產(chǎn)的對抗中設(shè)計好業(yè)務(wù)規(guī)則、運(yùn)營好安全策略,取得較好的效果。如果讀者正在關(guān)注該領(lǐng)域或從事相關(guān)工作,我們相信本書一定能夠?yàn)槟峁⿴椭?/p>
我們相信本書將成為中國互聯(lián)網(wǎng)歷史中一個微小但堅硬的符號。以當(dāng)前互聯(lián)網(wǎng)的進(jìn)化速度,若干年后本書介紹的風(fēng)控體系可能會被新技術(shù)完全重構(gòu),行業(yè)態(tài)勢也會有很大的不同。后來者可以通過本書觀察和體會行業(yè)與技術(shù)的演進(jìn)軌跡,進(jìn)而把握未來的發(fā)展趨勢。
用工作之外的時間把自己的想法變成數(shù)十萬字的圖書,是一件非常考驗(yàn)?zāi)托牡氖虑。除了三位主要作者,還有以下幾位同學(xué)堅持參與撰寫本書的部分內(nèi)容。
\u0097 李克勤、章嵐撰寫了“第2章 黑產(chǎn)武器庫概覽”、“第10章 風(fēng)險數(shù)據(jù)名單體系”和“第11章 欺詐情報體系”章節(jié)的初稿。
\u0097 郭嵩、彭亮撰寫了“第4章 風(fēng)控核心組件設(shè)備指紋”中Web設(shè)備指紋和JS混淆相關(guān)內(nèi)容的初稿。
\u0097 趙峰撰寫了“第5章 基于用戶行為的生物探針”章節(jié)的初稿。
\u0097 江杰撰寫了“第6章 智能驗(yàn)證碼的前世今生”章節(jié)的初稿。
\u0097 賀海軍、王明英撰寫了“第12章 機(jī)器學(xué)習(xí)算法的使用”實(shí)戰(zhàn)案例相關(guān)的內(nèi)容。
\u0097 劉瑩撰寫了“第13章 互聯(lián)網(wǎng)反欺詐實(shí)戰(zhàn)”章節(jié)的初稿。
在稿件完成之際,有特別多想感謝的朋友。在過去的一年中,羅小果等同事運(yùn)作的項(xiàng)目,促使我們對業(yè)務(wù)安全防御體系有了更深入的思考,使得本書的整體框架更具有邏輯性。在完成初稿后,陳鈞衍等多位技術(shù)同事給出了很多非常好的修改建議。感謝電子工業(yè)出版社的策劃編輯符隆美,感謝我們的同事韜哥、偉哥、藝嚴(yán)等,感謝“藍(lán)星技術(shù)群”的互聯(lián)網(wǎng)安全同行,沒有你們的鼓勵和幫助,也許就不會有這本書的面世。
作為互聯(lián)網(wǎng)安全從業(yè)者,回顧這幾年走過的路,黑產(chǎn)的技術(shù)發(fā)展和規(guī)模膨脹給我們帶來了很大的壓力,同時也讓我們有了更大的動力去構(gòu)建更加有效的安全防御產(chǎn)品體系。在此我們向互聯(lián)網(wǎng)安全行業(yè)中諸多提攜我們成長的前輩和守望相助的朋友們致敬,他們是alert7、binw、cnhawk、coolc、cy07、flashsky、huiwang、instruder、kevin1986、lake2、lenx、linkboy、marcohp、mkliu、oldjun、pix、rozero、scz、tb、xi4oyu、xundi、方斌、丁麗萍、顧孔希、高亮、何藝、劉進(jìn)、林鵬、馬坤、聶君、秦波、王彬、王任飛、王英健、閻文斌、楊珉、趙弼政等等(排名不分前后),還有很多很多行業(yè)拓荒者和同行者,在此難以一一列舉。
由于作者寫作水平有限,書中難免存在疏漏與不足之處,懇請讀者批評指正。就本書覆蓋的內(nèi)容而言,在反爬蟲、反洗錢、業(yè)務(wù)生態(tài)秩序安全治理及用戶安全心智建設(shè)等深水區(qū)沒有進(jìn)行深入闡述,我們也是心有遺憾并且希望能夠在下一本書中彌補(bǔ),敬請期待。
馬傳雷
引言 互聯(lián)網(wǎng)業(yè)務(wù)安全概述 1
第一部分 洞察黑產(chǎn)
第1章 黑產(chǎn)發(fā)展態(tài)勢 8
1.1 黑產(chǎn)組織結(jié)構(gòu) 8
1.2 黑產(chǎn)成員分布 11
1.3 黑產(chǎn)專業(yè)化分工 12
1.4 黑產(chǎn)攻擊規(guī)模 13
1.5 電信欺詐黑產(chǎn) 15
1.6 本章小結(jié) 16
第2章 黑產(chǎn)武器庫概覽 17
2.1 虛假號碼 17
2.1.1 貓池 18
2.1.2 短信驗(yàn)證碼 20
2.1.3 接碼平臺 21
2.1.4 空號注冊 22
2.1.5 流量卡和物聯(lián)網(wǎng)卡 22
2.1.6 手機(jī)rom后門 23
2.2 代理IP 23
2.3 設(shè)備偽造工具 25
2.3.1 改機(jī)工具 25
2.3.2 多開工具 26
2.3.3 Root/越獄工具 27
2.3.4 Xposed 28
2.3.5 Cydia Substrate 28
2.3.6 Frida 28
2.3.7 硬改工具 29
2.3.8 脫機(jī)掛 29
2.3.9 備份恢復(fù)/抹機(jī)恢復(fù) 30
2.3.10 模擬器 32
2.3.11 定制瀏覽器 33
2.3.12 自動化腳本 34
2.4 其他工具 35
2.4.1 位置偽造工具 35
2.4.2 群控 36
2.4.3 工具集 42
2.5 本章小結(jié) 43
第二部分 體系構(gòu)建
第3章 反欺詐體系建設(shè)思路 46
3.1 動態(tài)防控理念 46
3.2 防控體系構(gòu)建 47
3.3 本章小結(jié) 50
第4章 風(fēng)控核心組件設(shè)備指紋 51
4.1 設(shè)備指紋的原理 51
4.2 設(shè)備指紋的技術(shù)實(shí)現(xiàn) 52
4.2.1 Android設(shè)備指紋 52
4.2.2 iOS設(shè)備指紋 54
4.2.3 Web設(shè)備指紋 56
4.2.4 設(shè)備ID生成與恢復(fù)邏輯 58
4.2.5 被動式識別技術(shù) 61
4.3 代碼保護(hù) 62
4.3.1 JS代碼混淆技術(shù) 63
4.3.2 Android/iOS SDK加固保護(hù) 77
4.4 本章小結(jié) 92
第5章 基于用戶行為的生物探針 93
5.1 生物探針 94
5.2 無感認(rèn)證 95
5.2.1 無感認(rèn)證的基礎(chǔ) 96
5.2.2 無感認(rèn)證的構(gòu)建 97
5.3 生物探針的應(yīng)用場景 100
5.4 本章小結(jié) 100
第6章 智能驗(yàn)證碼的前世今生 102
6.1 驗(yàn)證碼的誕生 102
6.1.1 驗(yàn)證碼的本質(zhì) 103
6.1.2 驗(yàn)證碼的發(fā)展 105
6.2 驗(yàn)證碼的攻防 108
6.2.1 字符驗(yàn)證碼的識別 108
6.2.2 新型驗(yàn)證碼的識別 112
6.2.3 對抗黑產(chǎn)的方案 115
6.3 設(shè)計一款優(yōu)秀的驗(yàn)證碼 117
6.3.1 設(shè)計標(biāo)準(zhǔn) 117
6.3.2 設(shè)計實(shí)戰(zhàn) 118
6.4 本章小結(jié) 122
第7章 風(fēng)控中樞決策引擎系統(tǒng) 123
7.1 規(guī)則引擎 123
7.1.1 腳本引擎 124
7.1.2 開源規(guī)則引擎 125
7.1.3 商業(yè)規(guī)則引擎 125
7.1.4 幾種規(guī)則引擎實(shí)現(xiàn)方案的對比 126
7.2 規(guī)則管理 127
7.3 規(guī)則推送 128
7.4 規(guī)則執(zhí)行 129
7.5 外部系統(tǒng)集成 129
7.6 灰度測試 130
7.7 本章小結(jié) 131
第8章 海量數(shù)據(jù)的實(shí)時指標(biāo)計算 132
8.1 實(shí)時指標(biāo)計算概述 132
8.2 實(shí)時指標(biāo)計算方案 135
8.2.1 基于數(shù)據(jù)庫SQL的計算方案 135
8.2.2 基于事件驅(qū)動的計算方案 135
8.2.3 基于實(shí)時計算框架的計算方案 136
8.2.4 實(shí)時指標(biāo)計算方案對比 141
8.3 反欺詐實(shí)時指標(biāo)計算實(shí)踐 141
8.3.1 實(shí)時指標(biāo)計算引擎原型 141
8.3.2 數(shù)據(jù)拆分計算 144
8.3.3 分片計算 147
8.3.4 引入Flink 148
8.3.5 Lambda架構(gòu) 148
8.4 反欺詐實(shí)時指標(biāo)計算系統(tǒng) 149
8.5 本章小結(jié) 151
第9章 風(fēng)險態(tài)勢感知系統(tǒng) 152
9.1 基于統(tǒng)計分析的方法 153
9.1.1 核心風(fēng)控指標(biāo)數(shù)據(jù) 154
9.1.2 核心業(yè)務(wù)數(shù)據(jù) 156
9.2 基于無監(jiān)督學(xué)習(xí)的方法 157
9.3 基于欺詐情報的方法 158
9.4 預(yù)警系統(tǒng) 159
9.5 本章小結(jié) 160
第10章 風(fēng)險數(shù)據(jù)名單體系 161
10.1 名單體系的價值 162
10.2 名單體系的設(shè)計 162
10.3 名單體系的生命周期 166
10.4 名單體系質(zhì)量管理 168
10.5 本章小結(jié) 168
第11章 欺詐情報體系 169
11.1 情報采集 169
11.1.1 數(shù)據(jù)情報 170
11.1.2 技術(shù)情報 171
11.1.3 事件情報 174
11.2 情報分析 175
11.3 本章小結(jié) 179
第三部分 實(shí)戰(zhàn)教程
第12章 機(jī)器學(xué)習(xí)算法的使用 182
12.1 機(jī)器學(xué)習(xí)的廣泛應(yīng)用 182
12.2 機(jī)器學(xué)習(xí)的落地過程 183
12.2.1 特征工程 183
12.2.2 模型選擇 187
12.2.3 模型訓(xùn)練 195
12.2.4 工程化和業(yè)務(wù)落地 197
12.3 機(jī)器學(xué)習(xí)實(shí)戰(zhàn)案例 198
12.3.1 案例一:黑產(chǎn)設(shè)備群控網(wǎng)絡(luò)挖掘 198
12.3.2 案例二:黑產(chǎn)用戶行為聚類分析 205
12.3.3 案例三:金融在線申請反欺詐 212
12.4 本章小結(jié) 220
第13章 互聯(lián)網(wǎng)反欺詐實(shí)戰(zhàn) 221
13.1 典型反欺詐業(yè)務(wù)場景風(fēng)險分析 221
13.1.1 垃圾注冊風(fēng)險識別 222
13.1.2 批量登錄風(fēng)險識別 223
13.1.3 “薅羊毛”風(fēng)險識別 225
13.1.4 裂變拉新作弊風(fēng)險識別 227
13.1.5 “任務(wù)”作弊風(fēng)險識別 229
13.1.6 惡意退單風(fēng)險識別 229
13.2 解決方案設(shè)計示例 231
13.2.1 電商薅羊毛 233
13.2.2 裂變拉新 236
13.3 策略部署 239
13.3.1 策略配置 239
13.3.2 策略迭代 241
13.4 運(yùn)營監(jiān)控 241
13.4.1 監(jiān)控預(yù)警報表 241
13.4.2 態(tài)勢感知 242
13.4.3 情報監(jiān)控 243
13.5 本章小結(jié) 244
第四部分 新的戰(zhàn)場
第14章 物聯(lián)網(wǎng)時代的風(fēng)控 246
14.1 物聯(lián)網(wǎng)安全態(tài)勢 246
14.2 物聯(lián)網(wǎng)安全威脅分析 247
14.2.1 云端平臺安全威脅 248
14.2.2 網(wǎng)絡(luò)通信安全威脅 249
14.2.3 設(shè)備終端安全威脅 250
14.2.4 物聯(lián)網(wǎng)安全監(jiān)管要求 253
14.3 物聯(lián)網(wǎng)安全風(fēng)險控制體系建設(shè)思路 254
14.4 物聯(lián)網(wǎng)安全風(fēng)險態(tài)勢感知系統(tǒng) 256
14.5 本章小結(jié) 260
第15章 內(nèi)容安全與合規(guī) 261
15.1 內(nèi)容安全合規(guī)概述 261
15.2 文本內(nèi)容安全 263
15.2.1 敏感詞系統(tǒng) 264
15.2.2 基于NLP的AI模型 267
15.3 圖像內(nèi)容安全 271
15.3.1 圖像分類 271
15.3.2 敏感人物識別 276
15.3.3 圖像文字識別 285
15.4 語音內(nèi)容安全 286
15.4.1 有語義語音 286
15.4.2 無語義語音 287
15.5 視頻內(nèi)容安全 288
15.5.1 視頻內(nèi)容安全處理流程 289
15.5.2 關(guān)鍵幀提取 289
15.6 內(nèi)容安全工程 290
15.7 內(nèi)容安全系統(tǒng)的評價指標(biāo) 291
15.8 本章小結(jié) 292
第16章 風(fēng)控與數(shù)據(jù)合規(guī)使用 293
16.1 網(wǎng)絡(luò)安全立法進(jìn)程 293
16.2 個人數(shù)據(jù)合規(guī)使用 294
16.2.1 用戶隱私政策 295
16.2.2 數(shù)據(jù)安全流轉(zhuǎn) 296
16.3 數(shù)據(jù)合規(guī)技術(shù)創(chuàng)新實(shí)踐 298
16.3.1 數(shù)據(jù)匿名查詢 298
16.3.2 區(qū)塊鏈共享黑名單 299
16.4 本章小結(jié) 300
第17章 海外風(fēng)控公司 302
17.1 Arkose Labs 302
17.2 Sift 304
17.3 Forter 305
17.4 Shape Security 306
17.5 Okta 308
17.6 本章小結(jié) 313