注重体验与质量的电子书资源下载网站
分类于: 人工智能 计算机基础
简介
Web漏洞防护 豆 0.0分
资源最后更新于 2020-08-23 16:19:07
作者:李建熠
出版社:人民邮电出版社
出版日期:2019-01
ISBN:9787115510167
文件格式: pdf
标签: Web安全 计算机 黑客 网络安全 漏洞 Python
简介· · · · · ·
本书以OWASP Top 10 2017 中涉及的漏洞为基础,系统阐述了常见的Web 漏洞的防护方式。书中首先介绍了漏洞演示平台及一些常用的安全防护工具,然后对OWASP Top 10 2017 中涉及的漏洞防护方式及防护工具进行了说明,接着介绍了如何通过HTTP 响应头提升Web 客户端自身对漏洞的防护能力,最后讨论了在无法更改应用程序源码的情况下,如何对应用进行外层的WAF 防护。
目录
第1章 使用工具介绍 1
1.1 WebGoat 1
1.2 ESAPI 5
1.3 Apache Shiro 8
1.3.1 Apache Shiro 的特征 8
1.3.2 Apache Shiro 的核心概念 9
1.3.3 与Spring 集成 12
1.4 Spring Security 15
1.5 OWASP Top 10 17
第2章 SQL 注入防护 19
2.1 SQL 注入介绍 19
2.2 SQL 注入分类 20
2.2.1 按参数类型分类 20
2.2.2 按注入位置分类 20
2.2.3 按结果反馈分类 20
2.2.4 其他类型 21
2.3 实例讲解 21
2.3.1 字符型注入 22
2.3.2 数字型注入 22
2.3.3 联合查询注入及堆查询注入 23
2.3.4 盲注入 24
2.4 检测SQL 注入 25
2.5 防护方案 26
2.5.1 漏洞实例 27
2.5.2 预编译与参数绑定 28
2.5.3 白名单验证 29
2.5.4 输入编码 30
2.5.5 MyBatis 安全使用 32
2.6 小结 33
第3章 其他注入防护 34
3.1 命令注入防护 34
3.2 XML 注入防护 34
3.3 XPATH 注入防护 38
3.4 LDAP 注入防护 39
3.5 JPA 注入防护 40
3.6 小结 43
第4章 认证防护 44
4.1 认证缺陷 44
4.2 认证防护 44
4.2.1 用户名及密码设置 45
4.2.2 忘记密码 46
4.2.3 凭证存储 47
4.2.4 密码失窃 48
4.2.5 其他安全防护 49
4.3 会话管理安全 50
4.3.1 会话ID 的属性 51
4.3.2 会话管理的实现 52
4.3.3 Cookie 53
4.3.4 会话ID 的注意事项 54
4.3.5 会话过期 55
4.3.6 会话管理及其他客户端防御 57
4.3.7 会话攻击检测 58
4.3.8 会话管理的WAF 保护 59
4.4 防护工具 59
4.4.1 Argon2 密码散列 59
4.4.2 Apache Shiro 认证 63
4.4.3 Apache Shiro 会话管理 65
4.5 小结 68
第5章 数据泄露防护 69
5.1 传输层安全防护 69
5.1.1 SSL/TLS 注意事项 70
5.1.2 其他注意事项 75
5.1.3 传输层安全检测工具 75
5.2 数据加密存储 77
5.2.1 密码学简史 78
5.2.2 加密模式及填充模式 83
5.2.3 杂凑函数及数据完整性保护 88
5.2.4 加解密使用规范 90
5.3 安全数据共享 104
5.3.1 数据仓库的构建 104
5.3.2 数据仓库的保护 105
5.3.3 数据仓库的管理 106
5.4 小结 106
第6章 XXE 防护 107
6.1 XML 介绍 107
6.2 XXE 攻击方式及实例介绍 109
6.2.1 内部XXE 实例 110
6.2.2 外部XXE 实例 111
6.3 检测XXE 112
6.4 XXE 防护 113
6.4.1 DOM 113
6.4.2 SAX 116
6.4.3 其他 117
6.5 小结 117
第7章 访问控制防护 118
7.1 访问控制的分类 118
7.2 常见问题 119
7.2.1 不安全对象的直接引用 119
7.2.2 功能级访问控制缺失 120
7.2.3 跨域资源共享的错误配置 121
7.3 工具防护 123
7.3.1 Apache Shiro 访问控制 123
7.3.2 ESAPI 随机化对象引用 126
7.3.3 Spring Security CORS 配置 127
7.4 小结 128
第8章 安全配置 129
第9章 XSS 防护 131
9.1 XSS 分类 131
9.1.1 反射型XSS 132
9.1.2 DOM 型XSS 134
9.1.3 存储型XSS 136
9.1.4 其他分类 137
9.2 检测XSS 138
9.3 XSS 防护方法 139
9.3.1 反射型XSS 和存储型XSS 的 防护 140
9.3.2 DOM 型XSS 防护 143
9.4 防护工具 144
9.4.1 OWASP Java Encoder 144
9.4.2 OWASP Java HTML Sanitizer 149
9.4.3 AnjularJS SCE 158
9.4.4 ESAPI4JS 160
9.4.5 jQuery Encoder 164
9.5 小结 167
第10章 反序列化漏洞防护 168
10.1 Java 的序列化与反序列化 168
10.1.1 序列化 168
10.1.2 反序列化 169
10.1.3 自定义序列化与反序列化 170
10.1.4 Java 反序列化漏洞 171
10.1.5 其他反序列化漏洞 175
10.2 检测反序列化漏洞 178
10.3 反序列化漏洞的防护 179
10.4 防护工具 180
10.4.1 自定义工具 180
10.4.2 SerialKiller 181
10.4.3 contra-rO0 183
10.5 小结 185
第11章 组件缺陷的检测 186
11.1 潜在缺陷 186
11.2 检测缺陷组件 186
11.2.1 Retire.js 187
11.2.2 OWASP Dependency Check 190
11.2.3 Sonatype AHC 193
11.3 小结 196
第12章 跨站点请求伪造防护 197
12.1 CSRF 分类 197
12.1.1 GET 型CSRF 197
12.1.2 POST 型CSRF 198
12.1.3 CSRF 实例 198
12.1.4 CSRF 结合XSS 200
12.2 检测CSRF 202
12.3 CSRF 防护 202
12.3.1 不完全的防护方式 203
12.3.2 正确的防护方式 204
12.4 防护工具 209
12.4.1 自定义防护工具 210
12.4.2 Spring Security 防护CSRF 215
12.4.3 前后端分离 216
12.5 小结 217
第13章 输入验证 218
13.1 输入验证的方式 218
13.2 ESAPI 输入验证 218
第14章 HTTP 安全响应头 222
14.1 安全响应头介绍 222
14.1.1 HSTS 222
14.1.2 HPKP 223
14.1.3 X-Frame-Options 223
14.1.4 X-XSS-Protection 224
14.1.5 X-Content-Type-Options 224
14.1.6 Content-Security-Policy 224
14.1.7 Referrer-Policy 226
14.1.8 Expect-CT 226
14.1.9 X-Permitted-Cross-Domain-Policies 226
14.1.10 Cache-Control 228
14.2 HTTP 安全头检测 228
14.2.1 命令行检测工具 228
14.2.2 在线检测工具 229
14.2.3 插件检测工具 230
14.3 安全响应头设置建议 231
14.3.1 知名网站实例 231
14.3.2 设置建议 233
14.4 配置安全响应头 233
14.4.1 Spring Security 统一配置 233
14.4.2 http_hardening 配置安全 响应头 237
14.4.3 服务器配置文件配置安全 响应头 238
14.5 小结 238
第15章 WAF 防护 239
15.1 ModSecurity 239
15.1.1 编译与导入 240
15.1.2 配置ModSecurity 241
15.1.3 ModSecurity 测试 244
15.2 规则解析 245
15.2.1 指令 246
15.2.2 处理阶段 247
15.2.3 变量 247
15.2.4 转换函数 249
15.2.5 行为 250
15.2.6 操作符 253
15.3 OWASP ModSecurity CRS 255
15.3.1 CRS 导入 255
15.3.2 CRS 规则文件 257
15.4 防护测试 259
15.4.1 DVWA 环境搭建 259
15.4.2 SQL 注入测试 261
15.4.3 命令注入测试 264
15.4.4 XSS 测试 267
15.4.5 文件包含测试 272
15.4.6 文件上传测试 274
15.5 小结 277
参考文献 278
1.1 WebGoat 1
1.2 ESAPI 5
1.3 Apache Shiro 8
1.3.1 Apache Shiro 的特征 8
1.3.2 Apache Shiro 的核心概念 9
1.3.3 与Spring 集成 12
1.4 Spring Security 15
1.5 OWASP Top 10 17
第2章 SQL 注入防护 19
2.1 SQL 注入介绍 19
2.2 SQL 注入分类 20
2.2.1 按参数类型分类 20
2.2.2 按注入位置分类 20
2.2.3 按结果反馈分类 20
2.2.4 其他类型 21
2.3 实例讲解 21
2.3.1 字符型注入 22
2.3.2 数字型注入 22
2.3.3 联合查询注入及堆查询注入 23
2.3.4 盲注入 24
2.4 检测SQL 注入 25
2.5 防护方案 26
2.5.1 漏洞实例 27
2.5.2 预编译与参数绑定 28
2.5.3 白名单验证 29
2.5.4 输入编码 30
2.5.5 MyBatis 安全使用 32
2.6 小结 33
第3章 其他注入防护 34
3.1 命令注入防护 34
3.2 XML 注入防护 34
3.3 XPATH 注入防护 38
3.4 LDAP 注入防护 39
3.5 JPA 注入防护 40
3.6 小结 43
第4章 认证防护 44
4.1 认证缺陷 44
4.2 认证防护 44
4.2.1 用户名及密码设置 45
4.2.2 忘记密码 46
4.2.3 凭证存储 47
4.2.4 密码失窃 48
4.2.5 其他安全防护 49
4.3 会话管理安全 50
4.3.1 会话ID 的属性 51
4.3.2 会话管理的实现 52
4.3.3 Cookie 53
4.3.4 会话ID 的注意事项 54
4.3.5 会话过期 55
4.3.6 会话管理及其他客户端防御 57
4.3.7 会话攻击检测 58
4.3.8 会话管理的WAF 保护 59
4.4 防护工具 59
4.4.1 Argon2 密码散列 59
4.4.2 Apache Shiro 认证 63
4.4.3 Apache Shiro 会话管理 65
4.5 小结 68
第5章 数据泄露防护 69
5.1 传输层安全防护 69
5.1.1 SSL/TLS 注意事项 70
5.1.2 其他注意事项 75
5.1.3 传输层安全检测工具 75
5.2 数据加密存储 77
5.2.1 密码学简史 78
5.2.2 加密模式及填充模式 83
5.2.3 杂凑函数及数据完整性保护 88
5.2.4 加解密使用规范 90
5.3 安全数据共享 104
5.3.1 数据仓库的构建 104
5.3.2 数据仓库的保护 105
5.3.3 数据仓库的管理 106
5.4 小结 106
第6章 XXE 防护 107
6.1 XML 介绍 107
6.2 XXE 攻击方式及实例介绍 109
6.2.1 内部XXE 实例 110
6.2.2 外部XXE 实例 111
6.3 检测XXE 112
6.4 XXE 防护 113
6.4.1 DOM 113
6.4.2 SAX 116
6.4.3 其他 117
6.5 小结 117
第7章 访问控制防护 118
7.1 访问控制的分类 118
7.2 常见问题 119
7.2.1 不安全对象的直接引用 119
7.2.2 功能级访问控制缺失 120
7.2.3 跨域资源共享的错误配置 121
7.3 工具防护 123
7.3.1 Apache Shiro 访问控制 123
7.3.2 ESAPI 随机化对象引用 126
7.3.3 Spring Security CORS 配置 127
7.4 小结 128
第8章 安全配置 129
第9章 XSS 防护 131
9.1 XSS 分类 131
9.1.1 反射型XSS 132
9.1.2 DOM 型XSS 134
9.1.3 存储型XSS 136
9.1.4 其他分类 137
9.2 检测XSS 138
9.3 XSS 防护方法 139
9.3.1 反射型XSS 和存储型XSS 的 防护 140
9.3.2 DOM 型XSS 防护 143
9.4 防护工具 144
9.4.1 OWASP Java Encoder 144
9.4.2 OWASP Java HTML Sanitizer 149
9.4.3 AnjularJS SCE 158
9.4.4 ESAPI4JS 160
9.4.5 jQuery Encoder 164
9.5 小结 167
第10章 反序列化漏洞防护 168
10.1 Java 的序列化与反序列化 168
10.1.1 序列化 168
10.1.2 反序列化 169
10.1.3 自定义序列化与反序列化 170
10.1.4 Java 反序列化漏洞 171
10.1.5 其他反序列化漏洞 175
10.2 检测反序列化漏洞 178
10.3 反序列化漏洞的防护 179
10.4 防护工具 180
10.4.1 自定义工具 180
10.4.2 SerialKiller 181
10.4.3 contra-rO0 183
10.5 小结 185
第11章 组件缺陷的检测 186
11.1 潜在缺陷 186
11.2 检测缺陷组件 186
11.2.1 Retire.js 187
11.2.2 OWASP Dependency Check 190
11.2.3 Sonatype AHC 193
11.3 小结 196
第12章 跨站点请求伪造防护 197
12.1 CSRF 分类 197
12.1.1 GET 型CSRF 197
12.1.2 POST 型CSRF 198
12.1.3 CSRF 实例 198
12.1.4 CSRF 结合XSS 200
12.2 检测CSRF 202
12.3 CSRF 防护 202
12.3.1 不完全的防护方式 203
12.3.2 正确的防护方式 204
12.4 防护工具 209
12.4.1 自定义防护工具 210
12.4.2 Spring Security 防护CSRF 215
12.4.3 前后端分离 216
12.5 小结 217
第13章 输入验证 218
13.1 输入验证的方式 218
13.2 ESAPI 输入验证 218
第14章 HTTP 安全响应头 222
14.1 安全响应头介绍 222
14.1.1 HSTS 222
14.1.2 HPKP 223
14.1.3 X-Frame-Options 223
14.1.4 X-XSS-Protection 224
14.1.5 X-Content-Type-Options 224
14.1.6 Content-Security-Policy 224
14.1.7 Referrer-Policy 226
14.1.8 Expect-CT 226
14.1.9 X-Permitted-Cross-Domain-Policies 226
14.1.10 Cache-Control 228
14.2 HTTP 安全头检测 228
14.2.1 命令行检测工具 228
14.2.2 在线检测工具 229
14.2.3 插件检测工具 230
14.3 安全响应头设置建议 231
14.3.1 知名网站实例 231
14.3.2 设置建议 233
14.4 配置安全响应头 233
14.4.1 Spring Security 统一配置 233
14.4.2 http_hardening 配置安全 响应头 237
14.4.3 服务器配置文件配置安全 响应头 238
14.5 小结 238
第15章 WAF 防护 239
15.1 ModSecurity 239
15.1.1 编译与导入 240
15.1.2 配置ModSecurity 241
15.1.3 ModSecurity 测试 244
15.2 规则解析 245
15.2.1 指令 246
15.2.2 处理阶段 247
15.2.3 变量 247
15.2.4 转换函数 249
15.2.5 行为 250
15.2.6 操作符 253
15.3 OWASP ModSecurity CRS 255
15.3.1 CRS 导入 255
15.3.2 CRS 规则文件 257
15.4 防护测试 259
15.4.1 DVWA 环境搭建 259
15.4.2 SQL 注入测试 261
15.4.3 命令注入测试 264
15.4.4 XSS 测试 267
15.4.5 文件包含测试 272
15.4.6 文件上传测试 274
15.5 小结 277
参考文献 278