Web安全攻防:渗透测试实战指南
第 1 章 渗透测试之信息收集 1
1.1 收集域名信息 1
1.1.1 Whois 查询 1
1.1.2 备案信息查询 2
1.2 收集敏感信息 2
1.3 收集子域名信息 4
1.4 收集常用端口信息 7
1.5 指纹识别 10
1.6 查找真实 IP 11
1.7 收集敏感目录文件 . 14
查看完整
1.1 收集域名信息 1
1.1.1 Whois 查询 1
1.1.2 备案信息查询 2
1.2 收集敏感信息 2
1.3 收集子域名信息 4
1.4 收集常用端口信息 7
1.5 指纹识别 10
1.6 查找真实 IP 11
1.7 收集敏感目录文件 . 14
查看完整
徐焱,北京交通大学长三角研究院安全研究员。2002年接触网络安全,主要研究方向是内网渗透和APT攻击,有丰富的网络安全渗透经验。已出版图书《网络攻防实战研究:漏洞利用与提权》,曾在《黑客防线》、《黑客X档案》、《黑客手册》、FreeBuf、360安全客、阿里云盾先知、嘶吼等杂志和媒体上发表过多篇技术文章。李文轩,常用ID:遗忘。曾任天融信渗透测试工程师,现任奇虎360攻防实验室安全研究员,擅长渗透测试、无线电安全,活跃于多个漏洞报告平台,报告过多个CVE漏洞,参与360安全客季刊的编辑审核。王东亚,常用ID:0xExploit。曾任职绿盟科技、天融信高级安全顾问,现任职安徽三实安全总监,ATK团队发起人。擅长渗透测试和代码审计,活跃于多个漏洞报告平台,报告过数千个安全漏洞,包括多个CNVD、CVE漏洞。曾在FreeBuf、绿盟技术季刊等杂志和媒体发表过多篇专业技术文章,获得多个CTF比赛名次。
本书由浅入深、全面、系统地介绍了当前流行的高危漏洞的攻击手段和防御方法,并力求语言通俗易懂,举例简单明了,便于读者阅读、领会。结合具体案例进行讲解,可以让读者身临其境,快速地了解和掌握主流的漏洞利用技术与渗透测试技巧。 阅读本书不要求读者具备渗透测试的相关背景,如有相关经验在理解时会更有帮助。本书亦可作为大专院校信息安全学科的教材。
第 1 章 渗透测试之信息收集 1
1.1 收集域名信息 1
1.1.1 Whois 查询 1
1.1.2 备案信息查询 2
1.2 收集敏感信息 2
1.3 收集子域名信息 4
1.4 收集常用端口信息 7
1.5 指纹识别 10
1.6 查找真实 IP 11
1.7 收集敏感目录文件 . 14
1.8 社会工程学 15
第 2 章 搭建漏洞环境及实战 17
2.1 在 Linux 系统中安装 LANMP 17
2.2 在 Windows 系统中安装 WAMP 19
2.3 搭建 DVWA 漏洞环境 21
2.4 搭建 SQL 注入平台 23
2.5 搭建 XSS 测试平台 24
第 3 章 常用的渗透测试工具 . 28
3.1 SQLMap 详解 28
3.1.1 安装 SQLMap 28
3.1.2 SQLMap 入门 29
3.1.3 SQLMap 进阶:参数讲解 . 36
3.1.4 SQLMap 自带绕过脚本 tamper 的讲解 40
3.2 Burp Suite 详解 50
3.2.1 Burp Suite 的安装 50
3.2.2 Burp Suite 入门 51
3.2.3 Burp Suite 进阶 55
3.3 Nmap 详解 70
3.3.1 安装 Nmap 71
3.3.2 Nmap 入门 71
3.3.3 Nmap 进阶 83
第 4 章 Web 安全原理剖析 90
4.1 SQL 注入的基础 90
4.1.1 介绍 SQL 注入 90
4.1.2 SQL 注入的原理 90
4.1.3 与 MySQL 注入相关的知识点 91
4.1.4 Union 注入攻击 95
4.1.5 Union 注入代码分析 99
4.1.6 Boolean 注入攻击 99
4.1.7 Boolean 注入代码分析 103
4.1.8 报错注入攻击 104
4.1.9 报错注入代码分析 106
4.2 SQL 注入进阶 107
4.2.1 时间注入攻击 107
4.2.2 时间注入代码分析 109
4.2.3 堆叠查询注入攻击. 110
4.2.4 堆叠查询注入代码分析 112
4.2.5 二次注入攻击 113
4.2.6 二次注入代码分析 114
4.2.7 宽字节注入攻击 116
4.2.8 宽字节注入代码分析 119
4.2.9 cookie 注入攻击 120
4.2.10 cookie 注入代码分析 121
4.2.11 base64 注入攻击 122
4.2.12 base64 注入代码分析 123
4.2.13 XFF 注入攻击 124
4.2.14 XFF 注入代码分析 125
4.3 SQL 注入绕过技术 126
4.3.1 大小写绕过注入 126
4.3.2 双写绕过注入 128
4.3.3 编码绕过注入 129
4.3.4 内联注释绕过注入 131
4.3.5 SQL 注入修复建议 131
4.4 XSS 基础 135
4.4.1 XSS 漏洞介绍 135
4.4.2 XSS 漏洞原理 135
4.4.3 反射性 XSS 攻击 . 137
4.4.4 反射型 XSS 代码分析 138
4.4.5 储存型 XSS 攻击 . 139
4.4.6 储存型 XSS 代码分析 140
4.4.7 DOM 型 XSS 攻击 142
4.4.8 DOM 型 XSS 代码分析 143
4.5 XSS 进阶 144
4.5.1 XSS 常用语句及编码绕过 144
4.5.2 使用 XSS 平台测试 XSS 漏洞 145
4.5.3 XSS 漏洞修复建议 . 148
4.6 CSRF 漏洞 148
4.6.1 介绍 CSRF 漏洞 148
4.6.2 CSRF 漏洞的原理 148
4.6.3 利用 CSRF 漏洞 149
4.6.4 分析 CSRF 漏洞代码 . 151
4.6.5 CSRF 漏洞修复建议 155
4.7 SSRF 漏洞 155
4.7.1 介绍 SSRF 漏洞 155
4.7.2 SSRF 漏洞原理 . 155
4.7.3 SSRF 漏洞利用 156
4.7.4 SSRF 漏洞代码分析 157
4.7.5 SSRF 漏洞修复建议 157
4.8 文件上传 158
4.8.1 介绍文件上传漏洞 158
4.8.2 有关文件上传的知识 158
4.8.3 JS 检测绕过攻击 158
4.8.4 JS 检测绕过攻击分析 160
4.8.5 文件后缀绕过攻击 161
4.8.6 文件后缀绕过代码分析 162
4.8.7 文件类型绕过攻击 . 163
4.8.8 文件类型绕过代码分析 164
4.8.9 文件截断绕过攻击 166
4.8.10 文件截断绕过代码分析 167
4.8.11 竞争条件攻击 169
4.8.12 竞争条件代码分析 169
4.8.13 文件上传修复建议 170
4.9 暴力破解 170
4.9.1 介绍暴力破解漏洞 170
4.9.2 暴力破解漏洞攻击 171
4.9.3 暴力破解漏洞代码分析 172
4.9.4 暴力破解漏洞修复建议 172
4.10 命令执行 173
4.10.1 介绍命令执行漏洞 173
4.10.2 命令执行漏洞攻击 173
4.10.3 命令执行漏洞代码分析 175
4.10.4 命令执行漏洞修复建议 175
4.11 逻辑漏洞挖掘 175
4.11.1 介绍逻辑漏洞 175
4.11.2 越权访问攻击 176
4.11.3 逻辑漏洞:越权访问代码分析 177
4.11.4 越权访问修复建议 179
4.12 XXE 漏洞 179
4.12.1 介绍 XXE 漏洞 179
4.12.2 XXE 漏洞攻击 180
4.12.3 XXE 漏洞代码分析 180
4.12.4 XXE 漏洞修复建议 181
4.13 WAF 的那些事 181
4.13.1 介绍 WAF 181
4.13.2 WAF 判断 182
4.13.3 一些 WAF 的绕过方法 184
第 5 章 Metasploit 技术 188
5.1 Metasploit 简介 188
5.2 Metasploit 基础 190
5.2.1 专业术语 190
5.2.2 渗透攻击步骤 191
5.3 主机扫描 191
5.3.1 使用辅助模块进行端口扫描 191
5.3.2 使用辅助模块进行服务扫描 193
5.3.3 使用 Nmap 扫描 193
5.4 漏洞利用 195
5.5 后渗透攻击:信息收集 199
5.5.1 进程迁移 200
5.5.2 系统命令 201
5.5.3 文件系统命令 208
5.6 后渗透攻击:权限提升 210
5.6.1 利用 WMIC 实战 MS16-032 本地溢出漏洞 211
5.6.2 令牌窃取 216
5.6.3 Hash 攻击 219
5.7 后渗透攻击:移植漏洞利用代码模块 229
5.7.1 MS17-010 漏洞简介、原理及对策 . 229
5.7.2 移植并利用 MS17-010 漏洞利用代码 230
5.8 后渗透攻击:后门 233
5.8.1 操作系统后门 233
5.8.2 Web 后门 237
5.9 内网攻击域渗透测试实例 242
5.9.1 介绍渗透环境 242
5.9.2 提升权限 242
5.9.3 信息收集 245
5.9.4 获取一台服务器的权限 247
5.9.5 PowerShell 寻找域管在线服务器 251
5.9.6 获取域管权限 252
5.9.7 登录域控制 . 254
5.9.8 SMB 爆破内网 257
5.9.9 清理日志 259
第 6 章 PowerShell 攻击指南 261
6.1 PowerShell 技术 261
6.1.1 PowerShell 简介 261
6.1.2 PowerShell 的基本概念 263
6.1.3 PowerShell 的常用命令 264
6.2 PowerSploit 266
6.2.1 PowerSploit 的安装 . 266
6.2.2 PowerSploit 脚本攻击实战 . 268
6.2.3 PowerUp 攻击模块讲解 275
6.2.4 PowerUp 攻击模块实战演练 284
6.3 Empire . 291
6.3.1 Empire 简介 . 291
6.3.2 Empire 的安装 292
6.3.3 设置监听 293
6.3.4 生成木马 296
6.3.5 连接主机及基本使用 306
6.3.6 信息收集 310
6.3.7 权限提升 319
6.3.8 横向渗透 324
6.3.9 后门 . 330
6.3.10 Empire 反弹回 Metasploit . 333
6.4 Nishang 334
6.4.1 Nishang 简介 334
6.4.2 Nishang 模块攻击实战 338
6.4.3 PowerShell 隐藏通信遂道 343
6.4.4 WebShell 后门 347
6.4.5 权限提升 348
第 7 章 实例分析 . 364
7.1 代码审计实例分析 364
7.1.1 SQL 注入漏洞 364
7.1.2 文件删除漏洞 366
7.1.3 文件上传漏洞 367
7.1.4 添加管理员漏洞 373
7.1.5 竞争条件漏洞 378
7.2 渗透测试实例分析 380
7.2.1 后台爆破 380
7.2.2 SSRF Redis 获得 WebShell 383
7.2.3 旁站攻击 388
7.2.4 重置密码 391
7.2.5 SQL 注入 393
^ 收 起
1.1 收集域名信息 1
1.1.1 Whois 查询 1
1.1.2 备案信息查询 2
1.2 收集敏感信息 2
1.3 收集子域名信息 4
1.4 收集常用端口信息 7
1.5 指纹识别 10
1.6 查找真实 IP 11
1.7 收集敏感目录文件 . 14
1.8 社会工程学 15
第 2 章 搭建漏洞环境及实战 17
2.1 在 Linux 系统中安装 LANMP 17
2.2 在 Windows 系统中安装 WAMP 19
2.3 搭建 DVWA 漏洞环境 21
2.4 搭建 SQL 注入平台 23
2.5 搭建 XSS 测试平台 24
第 3 章 常用的渗透测试工具 . 28
3.1 SQLMap 详解 28
3.1.1 安装 SQLMap 28
3.1.2 SQLMap 入门 29
3.1.3 SQLMap 进阶:参数讲解 . 36
3.1.4 SQLMap 自带绕过脚本 tamper 的讲解 40
3.2 Burp Suite 详解 50
3.2.1 Burp Suite 的安装 50
3.2.2 Burp Suite 入门 51
3.2.3 Burp Suite 进阶 55
3.3 Nmap 详解 70
3.3.1 安装 Nmap 71
3.3.2 Nmap 入门 71
3.3.3 Nmap 进阶 83
第 4 章 Web 安全原理剖析 90
4.1 SQL 注入的基础 90
4.1.1 介绍 SQL 注入 90
4.1.2 SQL 注入的原理 90
4.1.3 与 MySQL 注入相关的知识点 91
4.1.4 Union 注入攻击 95
4.1.5 Union 注入代码分析 99
4.1.6 Boolean 注入攻击 99
4.1.7 Boolean 注入代码分析 103
4.1.8 报错注入攻击 104
4.1.9 报错注入代码分析 106
4.2 SQL 注入进阶 107
4.2.1 时间注入攻击 107
4.2.2 时间注入代码分析 109
4.2.3 堆叠查询注入攻击. 110
4.2.4 堆叠查询注入代码分析 112
4.2.5 二次注入攻击 113
4.2.6 二次注入代码分析 114
4.2.7 宽字节注入攻击 116
4.2.8 宽字节注入代码分析 119
4.2.9 cookie 注入攻击 120
4.2.10 cookie 注入代码分析 121
4.2.11 base64 注入攻击 122
4.2.12 base64 注入代码分析 123
4.2.13 XFF 注入攻击 124
4.2.14 XFF 注入代码分析 125
4.3 SQL 注入绕过技术 126
4.3.1 大小写绕过注入 126
4.3.2 双写绕过注入 128
4.3.3 编码绕过注入 129
4.3.4 内联注释绕过注入 131
4.3.5 SQL 注入修复建议 131
4.4 XSS 基础 135
4.4.1 XSS 漏洞介绍 135
4.4.2 XSS 漏洞原理 135
4.4.3 反射性 XSS 攻击 . 137
4.4.4 反射型 XSS 代码分析 138
4.4.5 储存型 XSS 攻击 . 139
4.4.6 储存型 XSS 代码分析 140
4.4.7 DOM 型 XSS 攻击 142
4.4.8 DOM 型 XSS 代码分析 143
4.5 XSS 进阶 144
4.5.1 XSS 常用语句及编码绕过 144
4.5.2 使用 XSS 平台测试 XSS 漏洞 145
4.5.3 XSS 漏洞修复建议 . 148
4.6 CSRF 漏洞 148
4.6.1 介绍 CSRF 漏洞 148
4.6.2 CSRF 漏洞的原理 148
4.6.3 利用 CSRF 漏洞 149
4.6.4 分析 CSRF 漏洞代码 . 151
4.6.5 CSRF 漏洞修复建议 155
4.7 SSRF 漏洞 155
4.7.1 介绍 SSRF 漏洞 155
4.7.2 SSRF 漏洞原理 . 155
4.7.3 SSRF 漏洞利用 156
4.7.4 SSRF 漏洞代码分析 157
4.7.5 SSRF 漏洞修复建议 157
4.8 文件上传 158
4.8.1 介绍文件上传漏洞 158
4.8.2 有关文件上传的知识 158
4.8.3 JS 检测绕过攻击 158
4.8.4 JS 检测绕过攻击分析 160
4.8.5 文件后缀绕过攻击 161
4.8.6 文件后缀绕过代码分析 162
4.8.7 文件类型绕过攻击 . 163
4.8.8 文件类型绕过代码分析 164
4.8.9 文件截断绕过攻击 166
4.8.10 文件截断绕过代码分析 167
4.8.11 竞争条件攻击 169
4.8.12 竞争条件代码分析 169
4.8.13 文件上传修复建议 170
4.9 暴力破解 170
4.9.1 介绍暴力破解漏洞 170
4.9.2 暴力破解漏洞攻击 171
4.9.3 暴力破解漏洞代码分析 172
4.9.4 暴力破解漏洞修复建议 172
4.10 命令执行 173
4.10.1 介绍命令执行漏洞 173
4.10.2 命令执行漏洞攻击 173
4.10.3 命令执行漏洞代码分析 175
4.10.4 命令执行漏洞修复建议 175
4.11 逻辑漏洞挖掘 175
4.11.1 介绍逻辑漏洞 175
4.11.2 越权访问攻击 176
4.11.3 逻辑漏洞:越权访问代码分析 177
4.11.4 越权访问修复建议 179
4.12 XXE 漏洞 179
4.12.1 介绍 XXE 漏洞 179
4.12.2 XXE 漏洞攻击 180
4.12.3 XXE 漏洞代码分析 180
4.12.4 XXE 漏洞修复建议 181
4.13 WAF 的那些事 181
4.13.1 介绍 WAF 181
4.13.2 WAF 判断 182
4.13.3 一些 WAF 的绕过方法 184
第 5 章 Metasploit 技术 188
5.1 Metasploit 简介 188
5.2 Metasploit 基础 190
5.2.1 专业术语 190
5.2.2 渗透攻击步骤 191
5.3 主机扫描 191
5.3.1 使用辅助模块进行端口扫描 191
5.3.2 使用辅助模块进行服务扫描 193
5.3.3 使用 Nmap 扫描 193
5.4 漏洞利用 195
5.5 后渗透攻击:信息收集 199
5.5.1 进程迁移 200
5.5.2 系统命令 201
5.5.3 文件系统命令 208
5.6 后渗透攻击:权限提升 210
5.6.1 利用 WMIC 实战 MS16-032 本地溢出漏洞 211
5.6.2 令牌窃取 216
5.6.3 Hash 攻击 219
5.7 后渗透攻击:移植漏洞利用代码模块 229
5.7.1 MS17-010 漏洞简介、原理及对策 . 229
5.7.2 移植并利用 MS17-010 漏洞利用代码 230
5.8 后渗透攻击:后门 233
5.8.1 操作系统后门 233
5.8.2 Web 后门 237
5.9 内网攻击域渗透测试实例 242
5.9.1 介绍渗透环境 242
5.9.2 提升权限 242
5.9.3 信息收集 245
5.9.4 获取一台服务器的权限 247
5.9.5 PowerShell 寻找域管在线服务器 251
5.9.6 获取域管权限 252
5.9.7 登录域控制 . 254
5.9.8 SMB 爆破内网 257
5.9.9 清理日志 259
第 6 章 PowerShell 攻击指南 261
6.1 PowerShell 技术 261
6.1.1 PowerShell 简介 261
6.1.2 PowerShell 的基本概念 263
6.1.3 PowerShell 的常用命令 264
6.2 PowerSploit 266
6.2.1 PowerSploit 的安装 . 266
6.2.2 PowerSploit 脚本攻击实战 . 268
6.2.3 PowerUp 攻击模块讲解 275
6.2.4 PowerUp 攻击模块实战演练 284
6.3 Empire . 291
6.3.1 Empire 简介 . 291
6.3.2 Empire 的安装 292
6.3.3 设置监听 293
6.3.4 生成木马 296
6.3.5 连接主机及基本使用 306
6.3.6 信息收集 310
6.3.7 权限提升 319
6.3.8 横向渗透 324
6.3.9 后门 . 330
6.3.10 Empire 反弹回 Metasploit . 333
6.4 Nishang 334
6.4.1 Nishang 简介 334
6.4.2 Nishang 模块攻击实战 338
6.4.3 PowerShell 隐藏通信遂道 343
6.4.4 WebShell 后门 347
6.4.5 权限提升 348
第 7 章 实例分析 . 364
7.1 代码审计实例分析 364
7.1.1 SQL 注入漏洞 364
7.1.2 文件删除漏洞 366
7.1.3 文件上传漏洞 367
7.1.4 添加管理员漏洞 373
7.1.5 竞争条件漏洞 378
7.2 渗透测试实例分析 380
7.2.1 后台爆破 380
7.2.2 SSRF Redis 获得 WebShell 383
7.2.3 旁站攻击 388
7.2.4 重置密码 391
7.2.5 SQL 注入 393
^ 收 起
徐焱,北京交通大学长三角研究院安全研究员。2002年接触网络安全,主要研究方向是内网渗透和APT攻击,有丰富的网络安全渗透经验。已出版图书《网络攻防实战研究:漏洞利用与提权》,曾在《黑客防线》、《黑客X档案》、《黑客手册》、FreeBuf、360安全客、阿里云盾先知、嘶吼等杂志和媒体上发表过多篇技术文章。李文轩,常用ID:遗忘。曾任天融信渗透测试工程师,现任奇虎360攻防实验室安全研究员,擅长渗透测试、无线电安全,活跃于多个漏洞报告平台,报告过多个CVE漏洞,参与360安全客季刊的编辑审核。王东亚,常用ID:0xExploit。曾任职绿盟科技、天融信高级安全顾问,现任职安徽三实安全总监,ATK团队发起人。擅长渗透测试和代码审计,活跃于多个漏洞报告平台,报告过数千个安全漏洞,包括多个CNVD、CVE漏洞。曾在FreeBuf、绿盟技术季刊等杂志和媒体发表过多篇专业技术文章,获得多个CTF比赛名次。
本书由浅入深、全面、系统地介绍了当前流行的高危漏洞的攻击手段和防御方法,并力求语言通俗易懂,举例简单明了,便于读者阅读、领会。结合具体案例进行讲解,可以让读者身临其境,快速地了解和掌握主流的漏洞利用技术与渗透测试技巧。 阅读本书不要求读者具备渗透测试的相关背景,如有相关经验在理解时会更有帮助。本书亦可作为大专院校信息安全学科的教材。
比价列表