反爬蟲 AST 原理與還原混淆實戰 (微課視頻版)
李嶽陽、卓斌
- 出版商: 清華大學
- 出版日期: 2021-08-01
- 定價: $354
- 售價: 8.5 折 $301
- 語言: 簡體中文
- 頁數: 236
- 裝訂: 平裝
- ISBN: 7302585172
- ISBN-13: 9787302585176
-
相關分類:
Web-crawler 網路爬蟲
立即出貨 (庫存 < 3)
買這商品的人也買了...
-
$403AWS Lambda 實戰 : 開發事件驅動的無服務器應用程序 (AWS Lambda in Action: Event-Driven Serverless Applications) -
你也能做出 Google:用 Elasticsearch 搭建叢集搜索引擎$780$616 -
偏不讓你抓:最強 Python 爬蟲 vs 反爬蟲大戰實錄$780$616 -
Java 最強入門邁向頂尖高手之路:王者歸來, 2/e (全彩版)$1,000$790 -
$474網絡輿情分析技術 -
密碼編碼學與網絡安全 — 原理與實踐, 8/e (Cryptography and Network Security: Principles and Practice, 8/e (RENTAL EDITION))$588$559 -
從實踐中學習 Nmap 滲透測試$714$678 -
$126網絡安全與攻防技術實訓教程, 2/e -
Python 實現 Web UI 自動化測試實戰:Selenium 3/4 + unittest/Pytest + GitLab + Jenkins$599$569 -
$474網絡工程師教程 -
$551網絡安全滲透測試理論與實踐 -
$284Python 網絡爬蟲與數據採集 -
$305大數據存儲 — 從 SQL 到 NoSQL -
$228大數據技術與機器學習 Python 實戰 -
$305移動終端漏洞挖掘技術 -
$505Python 爬蟲與反爬蟲開發從入門到精通 -
內行人才知道的系統設計面試指南$580$458 -
WebSecurity 網站滲透測試:Burp Suite 完全學習指南 (iT邦幫忙鐵人賽系列書)$600$468 -
$556CDN 技術架構 -
$564網絡攻防:技術、工具與實踐 (原書第3版) -
爬蟲逆向進階實戰$834$792 -
紅藍對抗 — 解密滲透測試與網絡安全建設$828$787 -
親密的駭人 – 堅固網路安全建設從內網開始$880$695 -
Elasticsearch 數據搜索與分析實戰$599$569 -
$653機器學習和深度學習:原理、算法、實戰 (使用 Python 和 TensorFlow)
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
85折
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$544 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
75折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$375 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
AST是目前爬蟲領域的熱點。本書從AST這一個知識點出發,由淺入深,帶領讀者掌握反爬蟲AST的原理,並幫助讀者培養解決實際問題的能力。 本書共11章,分為四部分。第一部分(第1~4章)介紹開發環境的搭建方法、Web調試的必備技巧以及爬蟲與反爬蟲的基本知識;第二部分(第5~6章)講解混淆JavaScript代碼的手工逆向方法與JavaScript代碼安全防護的原理;第三部分(第7~8章)講解AST的原理與API的使用方法;第四部分(第9~11章)以AST為基礎,講解自動化的JavaScript代碼防護與還原方案,並帶領讀者進行實戰訓練。 本書適合作為電腦培訓的教材,也可供安全開發人員、爬蟲初學者以及想要在爬蟲領域進階的人員學習。
作者簡介
李嶽陽,畢業於北京大學,資深爬蟲工程師,執著於技術提升和知識傳播。
一名語言無關論者,不過偏重使用Python和Erlang。
卓斌,資深安全開發工程師,花名“小肩膀”,熱愛逆向技術,有十餘年安全開發培訓經驗。
多年來研發多門Web和Android端逆向課程,深受學員好評。
目錄大綱
第1章搭建開發環境
1.1Node.js環境搭建
1.1.1Node.js安裝配置
1.1.2Babel安裝
1.1.3Visual Studio Code安裝配置
1.2Python環境配置
1.2.1Python 3.7安裝
1.2.2requests請求庫安裝
1.2.3bs4解析庫安裝
1.3Fiddler抓包工具
1.4AST Explorer網站在線生成抽象語法樹
1.5小結
1.6習題
第2章Web網站的調試與抓包分析
2.1Chrome開發者工具
2.1.1Elements面板
2.1.2Console面板
2.1.3Sources面板
2.1.4Network面板
2.1.5Application面板
2.2JS逆向調試技巧
2.2.1善用搜索
2.2.2查看請求調用堆棧
2.2.3XHR請求斷點
2.2.4Console插樁
2.2.5堆內存函數調用
2.2.6複製Console面板輸出
2.3本地覆蓋
2.3.1Chrome local override
2.3.2Fiddler自動響應
2.4Ajax-hook
2.4.1Ajax-hook源碼分析
2.4.2Ajax-hook攔截
2.5網易易盾滑塊驗證碼調試分析
2.6小結
2.7習題
第3章爬蟲與反爬蟲
3.1網絡爬蟲
3.1.1網絡爬蟲原理
3.1.2網絡爬蟲分類
3.1.3網絡爬蟲與搜索引擎
3.2編寫網絡爬蟲
3.2.1requests請求庫的使用
3.2.2bs4解析庫的使用
3.2.3編寫簡單網絡爬蟲
3.3爬蟲與反爬蟲的博弈
3.4小結
3.5習題
第4章常規反爬蟲技術
4.1Headers頭部校驗
4.2IP地址記錄
4.3Ajax異步加載
4.4字體反爬蟲
4.5驗證碼反爬蟲
4.6JS參數加密
4.7JS反調試
4.8AST混淆反爬蟲
4.9小結
4.10習題
第5章混淆JS手動逆向方法
5.1混淆腳本分析
5.1.1定位加密入口
5.1.2混淆特徵分析
5.1.3加密函數還原
5.2小結
5.3習題
第6章JS代碼安全防護原理
6.1常量的混淆原理
6.1.1對象屬性的兩種訪問方式
6.1.2十六進製字符串
6.1.3unicode字符串
6.1.4字符串的ASCII碼混淆
6.1.5字符串常量加密
6.1.6數值常量加密
6.2增加JS逆向者的工作量
6.2.1數組混淆
6.2.2數組亂序
6.2.3花指令
6.2.4jsfuck
6.3代碼執行流程的防護原理
6.3.1流程平坦化
6.3.2逗號表達式混淆
其他代碼防護方案
.1eval加密
.2內存
.3檢測代碼是否格式化
6.5小結
6.6習題
第7章AST抽象語法樹的原理與實現
7.1理解AST抽象語法樹
7.1.1AST基本概念
7.1.2AST在編譯中的位置
7.1.3AST程序開發
7.2詞法分析
7.2.1詞法分析基本原理
7.2.2Python編寫詞法分析器
7.3語法分析
7.3.1語法分析基本原理
7.3.2Python編寫語法分析器
7.4Babel編譯步驟
7.4.1Babel的解析
7.4.2Babel的轉化
7.4.3Babel的生成
7.5小結
7.6習題
第8章AST的API詳解
8.1AST入門
8.1.1AST的基本結構
8.1.2代碼的基本結構
8.2Babel中的組件
8.2.1parser與generator
8.2.2traverse與visitor
8.2.3types組件
8.3Path對象詳解
8.3.1Path與Node的區別
8.3.2Path中的方法
8.3.3父級Path
8.3.4同級Path
8.4scope詳解
8.4.1獲取標識符作用域
8.4.2scope.getBinding
8.4.3scope.getOwnBinding
8.4.4referencePaths與constantViolations
8.4.5遍歷作用域
8.4.6標識符重命名
8.4.7scope的其他方法
8.5小結
8.6習題
第9章AST自動化JS防護方案
9.1混淆前的代碼處理
9.1.1改變對象屬性訪問方式
9.1.2JS標準內置對象的處理
9.2常量與標識符的混淆
9.2.1實現數值常量加密
9.2.2實現字符串常量加密
9.2.3實現數組混淆
9.2.4實現數組亂序
9.2.5實現十六進製字符串
9.2.6實現標識符混淆
9.2.7標識符的隨機生成
9.3代碼塊的混淆
9.3.1二項式轉函數花指令
9.3.2代碼的逐行加密
9.3.3代碼的逐行ASCII碼混淆
9.4完整的代碼與處理後的效果
9.5代碼執行邏輯的混淆
9.5.1實現流程平坦化
9.5.2實現逗號表達式混淆
9.5小結
9.6習題
第10章AST自動化JavaScript還原方案
10.1常用還原方案
10.1.1還原數值常量加密
10.1.2還原代碼加密與ASCII碼混淆
10.1.3還原unicode與十六進製字符串
10.1.4還原逗號表達式混淆
10.2Chrome拓展開發入門
10.2.1Chrome拓展程序
10.2.2Chrome拓展開發之去除廣告插件
10.3JS Hook
10.3.1JS Hook原理與作用
10.3.2JS Hook對象屬性
10.3.3JS自動註入Hook
10.4DOM對象的Hook
10.4.1Script自動加載
10.4.2Hook DOM
10.4.3JS Proxy
10.5原型鏈
10.6XHR Hook
10.7JS Hook的檢測
10.8小結
10.9習題
第11章AST還原JS實戰
11.1分析網站使用的混淆手段
11.1.1協議分析
11.1.2數組亂序
11.1.3字符串加密
11.1.4花指令
11.1.5流程平坦化
11.2還原代碼中的常量
11.2.1整體代碼結構
11.2.2字符串解密與去除數組混淆
11.3剔除花指令
11.3.1花指令剔除思路
11.3.2字符串花指令的剔除
11.3.3函數花指令的剔除
11.4還原流程平坦化
11.4.1獲取分發器
11.4.2解析switch結構
11.4.3復原語句順序
11.4.4協議逆向
11.5小結
11.6習題



