3dwoo大學簡體電腦書店
從實踐中學習Web防火墻構建
( 簡體 字)
作者:張博 編著類別:1. -> 安全 -> 網路安全 -> 駭客攻擊與入侵
出版社:機械工業出版社從實踐中學習Web防火墻構建 3dWoo書號: 52942
詢問書籍請說出此書號!
有庫存
NT售價: 445
出版日:6/1/2020
頁數:272
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 字 )
ISBN:9787111657040 加入購物車加到我的最愛 (請先登入會員)
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社)
贊譽
前言
第1章 iptables使用簡介 1
1.1 iptables防火墻 1
1.2 基本概念 1
1.2.1 iptables包含表 3
1.2.2 iptables包含鏈 3
1.2.3 連接狀態 4
1.2.4 iptables規則 4
1.2.5 具體目標 5
1.2.6 iptables擴展模塊 5
1.3 安裝iptables 5
1.3.1 內核設置 5
1.3.2 iptables安裝方式 6
1.4 配置和使用 8
1.4.1 nftables防火墻 8
1.4.2 iptables的缺點 8
1.4.3 nftables與iptables的主要區別 9
1.4.4 從iptables遷移到nftables 10
1.4.5 iptables語法 11
1.4.6 顯示當前規則 16
1.4.7 重置規則 16
1.4.8 編輯規則 16
1.4.9 保存和恢復規則 17
1.4.10 實例應用 17
第2章 網絡層的安全與防御 20
2.1 IP標頭和TCP段結構 20
2.1.1 IPv4標頭結構 20
2.1.2 IPv6標頭結構 24
2.1.3 TCP段結構 25
2.1.4 TCP協議操作 27
2.1.5 TCP連接建立 28
2.1.6 TCP連接終止 28
2.1.7 TCP資源使用 29
2.1.8 TCP數據傳輸 29
2.2 記錄IP標頭信息 34
2.2.1 使用tshark記錄標頭信息 34
2.2.2 使用iptables記錄標頭信息 35
2.3 網絡層攻擊定義 36
2.4 網絡層攻擊 37
2.5 網絡層防御 41
第3章 傳輸層的安全與防御 42
3.1 記錄傳輸層標頭信息 42
3.1.1 使用iptables記錄TCP標頭 42
3.1.2 使用tshark記錄TCP標頭 43
3.1.3 使用iptables記錄UDP標頭 43
3.1.4 使用tshark記錄UDP標頭 44
3.1.5 UDP屬性 44
3.2 傳輸層攻擊定義 45
3.3 傳輸層攻擊類型 45
3.3.1 TCP攻擊 45
3.3.2 UDP攻擊 48
3.3.3 信息收集 50
3.4 傳輸層防御手段 52
第4章 應用層的安全與防御 55
4.1 iptables字符串匹配模塊 55
4.2 應用層攻擊定義 56
4.3 應用層攻擊類型 56
4.3.1 緩沖區溢出攻擊 57
4.3.2 釣魚式攻擊 57
4.3.3 后門攻擊 57
4.3.4 Web攻擊 58
4.3.5 應用層DDoS 61
4.3.6 嗅探攻擊 61
4.4 應用層防御手段 62
4.4.1 緩沖區溢出 63
4.4.2 釣魚式 63
4.4.3 后門 63
4.4.4 Web攻擊 64
4.4.5 應用層DDoS 64
4.4.6 網絡嗅探 65
第5章 Web防火墻類型 66
5.1 Web防火墻簡介 66
5.2 Web防火墻歷史 67
5.3 WAF與常規防火墻的區別 68
5.4 部署方式 68
5.5 Web防火墻的類型 71
5.6 各類防火墻的優缺點 72
第6章 Naxsi Web防火墻 73
6.1 Naxsi簡介 73
6.2 Naxsi安裝 73
6.2.1 編譯Naxsi 73
6.2.2 基本配置 74
6.3 Naxsi配置指令 76
6.3.1 白名單 76
6.3.2 規則 77
6.3.3 CheckRule 79
6.3.4 請求拒絕 80
6.3.5 指令索引 80
6.3.6 匹配規則 82
6.4 Naxsi基礎使用 84
6.5 Naxsi格式解析 91
6.5.1 Raw_body 91
6.5.2 libinjection 92
6.5.3 JSON格式 93
6.5.4 運行時修飾符 94
6.6 示例 95
6.6.1 白名單示例 95
6.6.2 規則示例 97
6.7 Naxsi深入探索 98
6.7.1 Naxsi日志 98
6.7.2 內部規則 100
6.7.3 與Fail2Ban整合 102
第7章 ngx_dynamic_limit_req_module動態限流 104
7.1 實現原理 104
7.1.1 限流算法 104
7.1.2 應用場景 106
7.1.3 安裝 107
7.2 功能 108
7.2.1 CC防卸 108
7.2.2 暴力破解 108
7.2.3 惡意刷接口 108
7.2.4 分布式代理惡意請求 109
7.2.5 動態定時攔截 109
7.2.6 黑名單和白名單 110
7.3 配置指令 110
7.3.1 dynamic_limit_req_zone 設置區域參數 111
7.3.2 dynamic_limit_req設置隊列 114
7.3.3 dynamic_limit_req_log_level設置日志級別 114
7.3.4 dynamic_limit_req_status設置響應狀態 115
7.3.5 black-and-white-list設置黑名單和白名單 115
7.4 擴展功能 115
7.4.1 API實時計數、PV、UV統計 115
7.4.2 API閾值通知 116
第8章 RedisPushIptables模塊 120
8.1 RedisPushIptables簡介 120
8.2 RedisPushIptables與Fail2Ban比較 120
8.2.1 Fail2Ban的特征 120
8.2.2 RedisPushIptables的特征 121
8.3 安裝RedisPushIptables 122
8.4 動態刪除配置 124
8.5 RedisPushIptables指令 125
8.6 客戶端API示例 125
8.6.1 C語言編程 125
8.6.2 Python語言編程 126
8.6.3 Bash語言編程 128
8.6.4 Lua語言編程 128
第9章 構建自己的WAF 130
9.1 安裝所需軟件 130
9.2 參數配置 131
9.3 白名單生成 133
9.4 白名單自動化生成 138
9.5 整合Fail2ban 144
9.6 定制開發Naxsi 146
9.7 Naxsi已知漏洞 151
9.8 多層防御整合后對比 156
9.9 可能存在的瓶頸 157
9.10 惡意IP庫 157
第10章 Nginx開發指南 158
10.1 基本概念 158
10.1.1 源碼目錄 158
10.1.2 引用頭文件 159
10.1.3 整型封裝 160
10.1.4 函數返回值 160
10.1.5 錯誤處理 161
10.2 字符串 161
10.2.1 字符串操作 162
10.2.2 格式化字符串 163
10.2.3 數字轉換函數 164
10.2.4 正則表達式 165
10.3 日志時間格式 166
10.4 數據結構 167
10.4.1 數組 167
10.4.2 單向鏈表 168
10.4.3 雙向鏈表 170
10.4.4 紅黑樹 171
10.4.5 散列表 171
10.5 內存管理 173
10.5.1 堆 173
10.5.2 池 174
10.5.3 共享內存 175
10.6 日志記錄 177
10.7 結構體 178
10.7.1 ngx_cycle_t循環結構體 178
10.7.2 ngx_buf_t緩沖區結構體 179
10.7.3 ngx_connection_t連接結構體 180
10.7.4 ngx_event_t結構體 182
10.8 事件 183
10.8.1 I/O事件 183
10.8.2 定時器事件 184
10.8.3 發布事件 184
10.8.4 事件循環 186
10.9 進程 186
10.10 線程 188
10.11 模塊 189
10.11.1 添加模塊 189
10.11.2 核心模塊 190
10.11.3 配置指令 193
10.12 HTTP框架 195
10.12.1 連接 195
10.12.2 請求 196
10.12.3 配置 200
10.12.4 請求階段 202
10.13 HTTP框架執行流程 203
10.13.1 請求重定向 203
10.13.2 子請求 204
10.13.3 請求最終確定 206
10.13.4 請求的主體 208
10.13.5 響應 210
10.13.6 響應頭 210
10.13.7 響應的主體 211
10.14 變量 212
10.14.1 簡單變量 212
10.14.2 復雜變量 215
10.15 負載均衡 216
第11章 Nginx高級主題 220
11.1 模塊轉換 220
11.1.1 先決條件 220
11.1.2 編譯動態模塊 220
11.1.3 加載動態模塊 221
11.1.4 轉換config文件 221
11.2 模塊編譯 222
11.3 config文件 222
11.3.1 新的config文件 222
11.3.2 舊的config文件 223
11.4 Nginx調試 224
11.4.1 調試日志 224
11.4.2 核心轉儲 225
11.4.3 套接字泄露 225
11.5 示例 226
第12章 Redis模塊編寫 231
12.1 模塊簡介 231
12.1.1 加載模塊 231
12.1.2 最簡單的模塊 232
12.1.3 模塊初始化 232
12.2 模塊API 233
12.3 RedisPushIptables代碼拆解 235
第13章 后門分析與監測 244
13.1 溯源步驟和攻擊示例 244
13.1.1 溯源思路 244
13.1.2 后門類型 245
13.1.3 逆向分析 245
13.1.4 網絡監測 245
13.1.5 用戶空間Rootkit示例 246
13.1.6 內核空間Rootkit示例 249
13.2 修補漏洞 253
13.2.1 虛擬補丁 253
13.2.2 補丁 253
13.3 監測主機異常 253
13.3.1 靜態編譯檢測工具 254
13.3.2 流量異常 254
13.3.3 磁盤I/O異常、CPU異常和MEM異常 255
13.3.4 主動連接監視 256
本書特色:
系統介紹如何構建Web防火墻,內容新穎、獨特
詳細介紹從網絡層到應用層的攻擊原理和防護方法
涉及TCP協議、iptables、Nginx、Redis及逆向分析等內容
結合作者多年的實戰經驗,深度探索Web與網絡安全的相關知識
書中介紹的防御工具已開源,可作為Web防火墻框架使用
提供QQ群(773056548)互動交流方式,答疑解惑
Nginx是一種Web服務。它也可以被用作反向代理、負載平衡、郵件代理和HTTP緩存。該軟件由Igor Sysoev創建,并于2004年首次公開發布。2011年成立了與Nginx軟件同名的公司,提供相關技術支持和Nginx付費版軟件。根據Netcraft在2016年11月的Web服務調查可知,Nginx是所有活躍站點和百萬最繁忙站點中使用次數最多的Web服務。

  隨著Nginx用戶量的不斷增長及使用場景的不斷豐富,用戶對于它的需求也越來越多,而相應的層出不窮的網絡攻擊也是“水漲船高”。于是出現了很多優秀的第三方模塊來滿足用戶的需求,其中Modsecurity(黑名單)和Naxsi(白名單)就是比較有代表性的模塊。它們都是開源的Web防火墻。雖然已經有了這些解決方案,但市面上詳細講解如何結合Nginx、Naxsi、ngx_dynamic_limit_req_ module和RedisPushIptables進行應用層與網絡層協同防御的圖書卻少之又少。

  ngx_dynamic_limit_req_module和RedisPushIptables模塊都已在GitHub上開源。書中對其核心概念及應用做了詳細講解,并針對不同應用場景給出了多種基于Nginx的防護模式,為讀者快速掌握Web防火墻構建提供了系統的實踐指南。相信通過對本書內容的學習,讀者能夠掌握Nginx模塊、Redis模塊及Linux內核模塊的開發技巧,從而擁有安防領域的應對能力。

本書特色

* 獨特:本書是一部系統地介紹如何構建Web防火墻的技術專著,內容新穎而獨特。

* 系統:全面講解從網絡層到應用層的安全與防御知識。

* 廣泛:涉及TCP、iptables、Nginx、Redis及逆向分析等眾多知識。

* 深入:結合作者多年的實戰經驗,帶領讀者深度探索Web防火墻及與網絡安全相關的知識。

* 實用:講解圖文并茂,并提供源代碼,書中所講的防御工具都已開源,可作為Web防火墻框架使用。

本書內容

  第1章介紹了iptables的基本知識,包括iptables的安裝、配置及使用示例。

  第2章介紹了網絡層的安全與防御,包括IP標頭和TCP段結構,以及網絡層的攻擊與防御。

  第3章介紹了傳輸層的安全與防御,包括記錄傳輸層標頭信息、傳輸層攻擊定義、傳輸層攻擊類型和傳輸層防御手段等。

  第4章介紹了應用層的安全與防御,包括iptables字符串匹配模塊、應用層攻擊的定義、應用層攻擊類型和應用層防御手段等。

  第5章介紹了Web防火墻的類型,包括Web防火墻的歷史、Web防火墻與常規防火墻的區別、Web防火墻的部署方式、Web防火墻的類型,以及各種防火墻的優缺點等。

  第6章介紹了Naxsi Web防火墻,包括Naxsi簡介、Naxsi安裝、Naxsi配置指令、Naxsi基礎使用、Naxsi格式解析和Naxsi深入探索等。

  第7章介紹了ngx_dynamic_limit_req_module動態限流模塊,包括其實現原理、功能、配置指令、擴展功能及應用場景等。

  第8章介紹了RedisPushIptables模塊,包括其實現原理、安裝、指令、API調用方法及應用場景等。

  第9章結合前8章所介紹的知識,詳細介紹了如何構建自己定制的Web防火墻,包括軟件安裝、參數配置、白名單生成、白名單自動化生成、整合Fail2ban、定制開發Naxsi、Naxsi已知漏洞修復、多層防御整合后的對比等。

  第10章介紹了Nginx開發的相關知識,包括基本概念、數據類型、內存管理及相關函數等。

  第11章介紹了Nginx模塊中config文件的編寫及調試等高級主題,包括模塊轉換、模塊編譯、新舊config文件格式的區別及Nginx調試等。

  第12章介紹了Redis模塊的編寫,包括模塊簡介、模塊開發及RedisPushIptables代碼拆解等。

  第13章介紹了逆向分析的思路及Rootkit攻擊示例,包括溯源步驟、修補漏洞及監測主機異常等。

配套代碼獲取方式

 本書涉及的所有代碼均可在https://github.com/limithit上下載。另外,讀者也可以登錄華章公司的網站www.hzbook.com,在該網站上搜索到本書,然后單擊“資料下載”按鈕,即可在本書頁面上找到下載鏈接。

本書讀者對象

* 網絡安全從業人員;

* Web安全從業人員;

* 信息安全研究人員;

* Web防火墻技術愛好者;

* SRE工程師;

* 運維工程師;

* 架構師及軟件開發人員;

* Linux愛好者;

* 高校及專業培訓機構的學生。

作者與售后

  本書作者張博,擁有超過7年的運維經驗,是Nginx模塊和Redis模塊的資深開發者。讀者在閱讀本書時若發現錯漏和不足之處,請及時反饋,以便及時改正。
pagetop