第1篇 基础篇 2
第1章 Web安全简介 2
1.1 服务器是如何被入侵的 2
1.2 如何更好地学习Web安全 4
第2章 深入HTTP请求流程 6
2.1 HTTP协议解析 6
2.1.1 发起HTTP请求 6
2.1.2 HTTP协议详解 7
2.1.3 模拟HTTP请求 13
2.1.4 HTTP协议与HTTPS协议的区别 14
2.2 截取HTTP请求 15
2.2.1 Burp Suite Proxy初体验 15
2.2.2 Fiddler 19
2.2.3 WinSock Expert 24
2.3 HTTP应用:黑帽SEO之搜索引擎劫持 24
2.4 小结 25
第3章 信息探测 26
3.1 Google Hack 26
3.1.1 搜集子域名 26
3.1.2 搜集Web信息 27
3.2 Nmap初体验 29
3.2.1 安装Nmap 29
3.2.2 探测主机信息 30
3.2.3 Nmap脚本引擎 32
3.3 DirBuster 33
3.4 指纹识别 35
3.5 小结 38
第4章 漏洞扫描 39
4.1 Burp Suite 39
4.1.1 Target 39
4.1.2 Spider 40
4.1.3 Scanner 42
4.1.4 Intruder 43
4.1.5 辅助模块 46
4.2 AWVS 49
4.2.1 WVS向导扫描 50
4.2.2 Web扫描服务 52
4.2.3 WVS小工具 53
4.3 AppScan 54
4.3.1 使用AppScan扫描 55
4.3.2 处理结果 58
4.3.3 AppScan辅助工具 58
4.4 小结 61
第2篇 原理篇 64
第5章 SQL注入漏洞 64
5.1 SQL注入原理 64
5.2 注入漏洞分类 66
5.2.1 数字型注入 66
5.2.2 字符型注入 67
5.2.3 SQL注入分类 68
5.3 常见数据库注入 69
5.3.1 SQLServer 69
5.3.2 MySQL 75
5.3.3 Oracle 84
5.4 注入工具 89
5.4.1 SQLMap 89
5.4.2 Pangolin 95
5.4.3 Havij 98
5.5 防止SQL注入 99
5.5.1 严格的数据类型 100
5.5.2 特殊字符转义 101
5.5.3 使用预编译语句 102
5.5.4 框架技术 103
5.5.5 存储过程 104
5.6 小结 105
第6章 上传漏洞 106
6.1 解析漏洞 106
6.1.1 IIS解析漏洞 106
6.1.2 Apache解析漏洞 109
6.1.3 PHP CGI解析漏洞 110
6.2 绕过上传漏洞 110
6.2.1 客户端检测 112
6.2.2 服务器端检测 115
6.3 文本编辑器上传漏洞 123
6.4 修复上传漏洞 127
6.5 小结 128
第7章 XSS跨站脚本漏洞 129
7.1 XSS原理解析 129
7.2 XSS类型 130
7.2.1 反射型XSS 130
7.2.2 存储型XSS 131
7.2.3 DOM XSS 132
7.3 检测XSS 133
7.3.1 手工检测XSS 134
7.3.2 全自动检测XSS 134
7.4 XSS高级利用 134
7.4.1 XSS会话劫持 135
7.4.2 XSS Framework 141
7.4.3 XSS GetShell 144
7.4.4 XSS蠕虫 149
7.5 修复XSS跨站漏洞 151
7.5.1 输入与输出 151
7.5.2 HttpOnly 158
7.6 小结 160
第8章 命令执行漏洞 161
8.1 OS命令执行漏洞示例 161
8.2 命令执行模型 162
8.2.1 PHP命令执行 163
8.2.2 Java命令执行 165
8.3 框架执行漏洞 166
8.3.1 Struts2代码执行漏洞 166
8.3.2 ThinkPHP命令执行漏洞 169
8.4 防范命令执行漏洞 169
第9章 文件包含漏洞 171
9.1 包含漏洞原理解析 171
9.1.1 PHP包含 171
9.1.2 JSP包含 180
9.2 安全编写包含 184
9.3 小结 184
第10章 其他漏洞 185
10.1 CSRF 185
10.1.1 CSRF攻击原理 185
10.1.2 CSRF攻击场景(GET) 186
10.1.3 CSRF攻击场景(POST) 188
10.1.4 浏览器Cookie机制 190
10.1.5 检测CSRF漏洞 193
10.1.6 预防跨站请求伪造 197
10.2 逻辑错误漏洞 199
10.2.1 挖掘逻辑漏洞 199
10.2.2 绕过授权验证 200
10.2.3 密码找回逻辑漏洞 204
10.2.4 支付逻辑漏洞 205
10.2.5 指定账户恶意攻击 209
10.3 代码注入 210
10.3.1 XML注入 211
10.3.2 XPath注入 212
10.3.3 JSON注入 215
10.3.4 HTTP Parameter Pollution 216
10.4 URL跳转与钓鱼 218
10.4.1 URL跳转 218
10.4.2 钓鱼 220
10.5 WebServer远程部署 224
10.5.1 Tomcat 224
10.5.2 JBoss 226
10.5.3 WebLogic 229
10.6 小结 233
第3篇 实战篇 236
第11章 实战入侵与防范 236
11.1 开源程序安全剖析 236
11.1.1 0day攻击 236
11.1.2 网站后台安全 238
11.1.3 MD5还安全吗 243
11.2 拖库 248
11.2.1 支持外连接 248
11.2.2 不支持外连接 253
11.3 小结 262
第4篇 综合篇 264
第12章 暴力破解测试 264
12.1 C/S架构破解 265
12.2 B/S架构破解 272
12.3 暴力破解案例 275
12.4 防止暴力破解 277
12.5 小结 278
第13章 旁注攻击 279
13.1 服务器端Web架构 279
13.2 IP逆向查询 280
13.3 SQL跨库查询 282
13.4 目录越权 283
13.5 构造注入点 284
13.6 CDN 286
13.7 小结 288
第14章 提权 290
14.1 溢出提权 290
14.2 第三方组件提权 294
14.2.1 信息搜集 294
14.2.2 数据库提权 296
14.2.3 FTP提权 302
14.2.4 PcAnywhere提权 312
14.3 虚拟主机提权 314
14.4 提权辅助 315
14.4.1 3389端口 315
14.4.2 端口转发 318
14.4.3 启动项提权 320
14.4.4 DLL劫持 321
14.4.5 添加后门 322
14.5 服务器防提权措施 324
14.6 小结 325
第15章 ARP欺骗攻击 326
15.1 ARP协议简介 326
15.1.1 ARP缓存表 326
15.1.2 局域网主机通信 327
15.1.3 ARP欺骗原理 328
15.2 ARP攻击 329
15.2.1 Cain 329
15.2.2 Ettercap 332
15.2.3 NetFuke 336
15.3 防御ARP攻击 339
15.4 小结 340
第16章 社会工程学 341
16.1 信息搜集 341
16.2 沟通 343
16.3 伪造 344
16.4 小结 345
严正声明 346