網絡對抗演練
嚴飛、張立強、何伊聖、陳治宏、楊慶華、李勇
相關主題
商品描述
"網絡安全的本質在對抗,對抗的本質在攻防兩端能力較量。如何提升高等學校網絡空間安全人才教學質量建設,讓學生在學習過程中,理論聯系實際,提升網絡安全對抗實踐能力,是當前高校網絡空間安全人才培養需要關註的重要問題。本書聚焦網絡空間安全人才培養的對抗實踐能力建設,從高等學校網絡空間安全人才教學體系出發,圍繞網絡安全對抗能力、系統安全對抗能力、密碼學對抗能力以及應用安全對抗能力,採取由淺入深的方式,循序漸進設計課程。本書共10章,包括Web應用安全、網絡流量分析、逆向工程分析、移動應用安全、軟件漏洞挖掘、固件漏洞挖掘、密碼學應用基礎、區塊鏈安全、隱寫與隱寫分析、攻擊溯源技術的對抗演練,並融入了當下全球流行的CTF安全競賽內容,以解題奪旗等形式進行實驗操作,讓學生的學習過程更有趣味性和競技性,幫助學生在校期間獲取相關的信息安全競賽獎項,更有利於學生瞭解業界,提升求職就業的機會。 本書適合作為普通高等學校網絡空間安全、信息安全等相關專業高年級學生的專業課與實訓課程的教材,也可作為網絡安全愛好者的自學參考書。"
作者簡介
嚴飛,武漢大學國家網絡安全學院教授、博士生導師,主要研究方向為系統安全與可信賴運算、可信任智慧對抗與人機接口安全等。榮獲湖北省科技進步獎一等獎2項、二等獎1項,教育部網絡空間安全產學協同育人優秀案例一等獎、二等獎各1項。
目錄大綱
目錄
第1篇網絡安全篇
第1章Web應用安全3
1.1環境搭建3
1.2SQL註入技術6
1.2.1SQL註入方式6
1.2.2SQL註入防護繞過技術12
1.2.3SQL註入防禦手段15
1.3前端腳本安全16
1.3.1Web暴力破解16
1.3.2跨站腳本攻擊21
1.3.3跨站請求偽造25
1.3.4防禦手段27
1.4服務器端請求偽造攻擊29
1.4.1SSRF協議利用29
1.4.2SSRF攻擊方式30
1.4.3SSRF內網服務攻擊31
1.4.4SSRF防禦手段32
1.5文件操作攻擊技術32
1.5.1不安全文件上傳32
1.5.2不安全文件下載34
1.5.3任意文件包含漏洞35
1.6命令執行攻擊技術37
1.6.1命令執行攻擊方式37
1.6.2命令執行繞過技巧38
1.6.3命令執行防禦手段39
1.7本章小結39
1.8課後練習40網絡對抗演練目錄第2章網絡流量分析42
2.1網絡協議分析基礎42
2.1.1網絡模型基礎42
2.1.2IP地址和埠基礎43
2.1.3HTTP協議基礎46
2.2流量分析工具使用48
2.2.1信息統計48
2.2.2數據過濾49
2.2.3數據保存50
2.2.4數據搜索51
2.2.5數據還原51
2.2.6文件提取52
2.2.7內容提取53
2.3網絡攻擊流量取證53
2.3.1網絡攻擊流量的獲取方式54
2.3.2網絡攻擊流量分析技巧54
2.4USB設備流量分析58
2.4.1鍵盤流量分析58
2.4.2鼠標流量分析61
2.5工控系統流量分析63
2.5.1Modbus協議分析63
2.5.2S7Comm協議分析64
2.5.3MMS協議分析67
2.6本章小結71
2.7課後練習71
第2篇系統安全篇
第3章逆向工程分析75
3.1逆向工程基礎75
3.1.1逆向分析工具Ghidra75
3.1.2靜態分析工具IDA Pro 80
3.1.3動態分析工具GDB83
3.2逆向脫殼分析90
3.2.1軟件加殼原理90
3.2.2ESP定律脫殼法90
3.3逆向工程算法分析96
3.3.1逆向工程算法分析基礎96
3.3.2逆向工程中的對稱加密算法技術96
3.3.3逆向工程中的其他算法技術100
3.4二進制代碼混淆102
3.5逆向工程高級技術實踐 116
3.5.1約束求解簡介及利用116
3.5.2符號執行122
3.5.3Hook技術簡介及利用128
3.6本章小結130
3.7課後練習130
第4章移動應用安全131
4.1移動應用安全知識基礎131
4.1.1APK文件結構131
4.1.2APK簽名137
4.2移動安全工具簡介138
4.2.1使用IDA Pro靜態分析Android原生程序139
4.2.2程序入口分析法142
4.2.3信息反饋法146
4.2.4定位關鍵函數147
4.2.5使用JEB靜態分析Android程序147
4.3動態分析150
4.3.1代碼註入150
4.3.2調用棧追蹤153
4.3.3使用JEB調試Android程序155
4.3.4使用IDA Pro調試Android原生程序157
4.4移動端中的Hook技術158
4.4.1Xposed Hook158
4.4.2Frida Hook163
4.4.3Fridatrace實踐案例170
4.5移動端軟件加固與脫殼172
4.5.1軟件加固與脫殼實踐——使用Frida175
4.5.2軟件加固與脫殼實踐——使用Xposed177
4.6本章小結180
4.7課後練習180
第5章軟件漏洞挖掘181
5.1軟件漏洞挖掘基本概念181
5.1.1程序內存分佈及區段介紹181
5.1.2常用寄存器及其作用183
5.1.3常用工具命令介紹186
5.2棧溢出186
5.2.1棧的概念及特點186
5.2.2調用者規則187
5.2.3被調用者規則190
5.2.4棧溢出保護機制194
5.2.5棧溢出利用方式197
5.3格式化字符串204
5.3.1格式化字符串原理204
5.3.2格式化串漏洞讀數據205
5.3.3格式化串漏洞寫數據213
5.4堆溢出220
5.4.1堆內存管理概念220
5.4.2bins223
5.4.3堆分配策略226
5.4.4堆的利用方式229
5.5本章小結236
5.6課後練習236
第6章固件漏洞挖掘241
6.1常用工具和命令241
6.1.1常用工具241
6.1.2常用命令241
6.2固件常見提取方法242
6.2.1官網獲取242
6.2.2更新流量抓取243
6.2.3轉儲固件 244
6.3文件系統及靜態分析245
6.3.1文件系統提取245
6.3.2配置文件分析259
6.3.3靜態分析文件260
6.4固件模擬及動態分析263
6.4.1模擬工具介紹263
6.4.2模擬環境搭建263
6.4.3動態分析固件264
6.5本章小結267
6.6課後練習267
第3篇密碼學應用篇
第7章密碼學應用基礎271
7.1對稱加密算法272
7.1.1一次性密碼272
7.1.2序列密碼274
7.1.3分組密碼277
7.1.4哈希算法280
7.2公鑰密碼算法282
7.2.1公鑰加密算法282
7.2.2密鑰交換算法288
7.2.3簽名算法291
7.2.4橢圓曲線算法293
7.3本章小結296
第8章區塊鏈安全297
8.1智能合約環境搭建297
8.1.1Node.js環境安裝298
8.1.2使用Hardhat部署智能合約299
8.1.3使用MetaMask管理賬戶301
8.2與智能合約交互304
8.2.1使用Solidity與合約交互305
8.2.2使用Python與合約交互311
8.2.3使用JavaScript與合約交互314
8.3智能合約常見攻擊318
8.3.1整數溢出攻擊318
8.3.2敏感信息泄露319
8.3.3委托調用漏洞321
8.3.4重入攻擊322
8.3.5智能合約逆向324
8.4本章小結325
8.5課後練習325
第4篇應用安全篇
第9章隱寫與隱寫分析329
9.1隱寫術介紹329
9.1.1隱寫術概述329
9.1.2隱寫術的應用場景329
9.1.3隱寫術的分類330
9.2圖片隱寫331
9.2.1PNG隱寫331
9.2.2JPG隱寫337
9.2.3GIF隱寫338
9.3音頻隱寫340
9.3.1MP3隱寫340
9.3.2波形隱寫341
9.3.3頻譜隱寫343
9.3.4LSB隱寫344
9.4Office文件隱寫344
9.4.1Word隱藏文字345
9.4.2Word/Excel隱藏文件345
9.4.3PDF隱寫346
9.5壓縮文件隱寫348
9.5.1進制轉換348
9.5.2圖種349
9.5.3偽加密350
9.5.4暴力破解351
9.5.5明文攻擊353
9.5.6CRC碰撞355
9.6本章小結355
9.7課後練習356
第10章攻擊溯源技術357
10.1Windows日誌分析358
10.1.1Windows日誌審計類別358
10.1.2Windows常見日誌事件358
10.1.3Windows日誌審計方式363
10.2Linux日誌分析365
10.2.1Linux常用日誌365
10.2.2Linux日誌分析工具365
10.2.3Linux日誌審計方式365
10.3中間件日誌分析368
10.3.1IIS日誌分析368
10.3.2Apache日誌分析369
10.3.3Nginx日誌分析371
10.4數據庫日誌分析371
10.4.1MySQL錯誤日誌371
10.4.2MySQL查詢日誌372
10.4.3MySQL二進制日誌373
10.4.4MySQL暴力破解攻擊日誌分析373
10.5內存取證374
10.5.1數據提取374
10.5.2內存分析376
10.6本章小結378
10.7課後練習378
參考文獻379