Python 安全攻防:滲透測試實戰指南
內容描述
隨著近幾年互聯網的發展,Python在各行各業發揮著舉足輕重的作用。
除應用在科學計算、大數據處理等人們熟知的領域外,在信息安全領域中使用也異常廣泛。
這是因為對於黑客或者滲透測試工程師來說python語言不僅上手容易,而且還有大量豐富的開源庫。
通過python可以幫助他們又好又快的完成一項任務,以少量的代碼便可實現所需功能。
本書結合具體場景和真實案例,詳細敘述了python在滲透測試過程中所涉及到的信息收集、
漏洞檢測、數據爆破、模糊測試、流量分析等方面的實現過程。
本書內容詳細,過程清晰,非常易於讀者深入理解。
可為成為一名合格的網絡安全員打下堅實的基礎
目錄大綱
推薦序
前言
第1章滲透測試概述1
1.1信息安全發展史1
1.2信息安全行業的現狀4
1.3滲透測試的基本流程5
1.4滲透測試的具體方法8
1.5小結15
第2章Python語言基礎16
2.1 Python環境的搭建16
2.1.1 Windows系統下的安裝17
2.1.2 Linux系統下的安裝19
2.2編寫第一個Python程序20
2.3 Python模塊的安裝與使用21
2.4 Python序列23
2.4.1列表23
2.4.2元組26
2.4.3字典26
2.5 Python控制結構28
2.5.1選擇結構28
2.5.2循環結構28
2.6文件處理29
2.7異常處理結構32
2.8 Socket網絡編程34
2.9可執行文件的轉換36
2.9.1在Windows系統下轉換36
2.9.2在Linux系統下轉換38
2.10小結39
第3章滲透測試框架40
3.1 Pocsuite框架40
3.1.1功能介紹41
3.1.2安裝41
3.1.3使用方法42
3.2 POC腳本編寫44
3.2.1 Flask服務器模板環境搭建44
3.2.2 POC腳本的編寫步驟45
3.3 EXP腳本編寫48
3.4小結51
第4章信息蒐集52
4.1被動信息蒐集52
4.1.1 DNS解析52
4.1.2子域名挖掘54
4.1.3郵件爬取56
4.2主動信息蒐集60
4.2.1基於ICMP的主機發現61
4.2.2基於TCP、UDP的主機發現66
4.2.3基於ARP的主機發現73
4.2.4端口探測77
4.2.5服務識別80
4.2.6系統識別85
4.2.7敏感目錄探測88
4.3網絡空間搜索引擎89
4.3.1常見搜索引擎平台90
4.3.2搜索引擎語法92
4.3.3搜索引擎API的使用95
4.4小結98
第5章漏洞檢測與防禦99
5.1未授權訪問漏洞99
5.1.1 Redis未授權訪問漏洞99
5.1.2漏洞利用100
5.1.3檢測方法103
5.1.4防禦策略107
5.2外部實體注入漏洞107
5.2.1簡介107
5.2.2檢測方法111
5.2.3防禦策略114
5.3 SQL盲注漏洞114
5.3.1簡介114
5.3.2基於布爾型SQL盲注檢測114
5.3.3基於時間型SQL盲注檢測123
5.3.4防禦策略127
5.4 SQLMap的Tamper腳本128
5.4.1簡介128
5.4.2 Tamper腳本的編寫(一) 131
5.4.3 Tamper腳本的編寫(二) 139
5.5服務器端請求偽造漏洞145
5.5.1簡介145
5.5.2檢測方法146
5.5.3防禦策略147
5.6網絡代理148
5.7小結152
第6章數據加密153
6.1常見的加密算法153
6.1.1對稱加密算法154
6.1.2非對稱加密算法155
6.1.3分組密碼工作模式156
6.2 PyCryptodome庫安裝160
6.3 Base64編/解碼160
6.3.1 Base64編碼原理161
6.3.2用Python實現Base64編/解碼163
6.4 DES加密算法164
6.4.1 DES加密原理164
6.4.2用Python實現DES加解密166
6.5 AES加密算法167
6.5.1 AES加密原理167
6.5.2用Python實現AES加解密169
6.6 MD5加密算法171
6.6.1 MD5加密原理171
6.6.2用Python實現MD5加密173
6.7小結174
第7章身份認證175
7.1社會工程學密碼字典176
7.1.1字典的生成176
7.1.2防禦策略180
7.2後台弱口令問題181
7.2.1編寫腳本181
7.2.2防禦策略187
7.3 SSH口令問題187
7.3.1編寫腳本187
7.3.2防禦策略192
7.4 FTP口令問題193
7.4.1編寫腳本193
7.4.2防禦策略199
7.5小結199
第8章模糊測試200
8.1簡介200
8.2繞過安全狗201
8.3繞過安全狗優化206
8.4模糊測試結合WebShell 208
8.5模糊測試工具209
8.5.1 XSS模糊測試工具XSStrike 210
8.5.2 Sulley模糊測試框架211
8.6防禦策略214
8.7小結214
第9章流量分析215
9.1流量嗅探215
9.1.1工作原理216
9.1.2工具編寫217
9.2 ARP毒化222
9.2.1工作原理223
9.2.2工具編寫227
9.2.3防禦策略230
9.3 DoS 231
9.3 .1數據鏈路層DoS 231
9.3.2網絡層DoS 234
9.3.3傳輸層DoS 236
9.3.4應用層DoS 238
9.3.5防禦策略241
9.4小結241
第10章Python免殺技術242
10.1生成shellcode 242
10.2 shellcode的加載與執行244
10.3常見的免殺方式250
10.4防禦策略253
10.5小結254
第11章遠程控制工具255
11.1簡介255
11.2 Python相關的基礎模塊256
11.3被控端的編寫260
11.4主控端的編寫264
11.5遠程控制工具的使用268
11.6 Cobalt Strike的使用及拓展270
11.7小結282
附錄Python實戰項目283
作者介紹
吳濤
中國電信股份有限公司研究院網絡安全研究員,MS08067安全實驗室、貝塔安全實驗室核心成員。
主要從事安全攻防、威脅情報、雲計算等方面的安全研究。
方嘉明
網名“大方子”,MS08067安全實驗室核心成員,CSDN活躍博主,獲得CompTIA Security+認證。
主要從事Web滲透、內網滲透等方向的安全研究。
吳榮德
網名black,杭州默安科技網絡安全工程師,MS08067實驗室核心成員。
主要從事滲透測試、安全開發、逆向分析等方向的研究。
多次參加國家護網行動,熟知安全攻防技術,擅長自動化編程開發。
徐焱
北京交通大學安全研究員,MS08067安全實驗室創始人,2002年接觸網絡安全,有豐富的網絡安全滲透實踐經驗。
已出版圖書《網絡攻防實戰研究:漏洞利用與提權》《Web安全攻防:滲透測試實戰指南》
《內網安全攻防:滲透測試實戰指南》,曾在《黑客防線》、《黑客X檔案》、
《黑客手冊》、Freebuf、360安全客、阿里雲盾先知、嘶吼等雜誌和媒體發表過多篇技術文章。