描述
开 本: 128开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787115561589
1. 独特视角解析网络攻防之道
本书借鉴了墨家思想,从多个方面解读Web安全的攻防原理,不仅涉及Web服务与安全的基础理论,也讲解了很多时下热门的安全技术,例如复杂均衡、WAF、日志审计、蜜罐等。
2. 实用案例探秘企业级安全之道
本书案例丰富,适合读者边学边进行实践参考,能够为安全领域的研发人员、运维人员、高校师生、培训机构提供更全面的技术指导和学习素材。
3. 原理解析深入浅出,经典案例有源码配套
本书由资深的安全从业者和高校老师编写,融合了产业界和学界对网络信息安全的深度思考和实践,书中的典型案例还有配套的源码文件提供,方便读者使用。
近年来,信息技术的广泛应用极大地促进了社会进步,也方便了人们的工作和生活,随之而来的网络安全问题日益突显。如何构建安全可靠的网络环境,如何与时俱进地把新技术纳入网络安全防护的实践当中,成为网络安全工作者的重要课题。
本书聚焦于 Web 服务常用的安全技术,以案例形式展示 Web 服务所面临的威胁,并给出了丰富多样的解决方案。本书由浅入深地介绍了 Web 安全的相关主题,包括 Web 应用程序基础理论、Web服务器与负载均衡、HTTPS和CDN的安全问题、Web服务的安全因素、如何保护Web服务、WAF原理与实践、Web日志审计、蜜罐技术、大数据时代的Web安全、网络安全解决方案等内容。
本书适合网络安全领域的研发人员、运维人员、高校师生、培训机构等群体阅读参考。
第 1章 初探门径 ——Web应用程序基础理论 1
1.1 Web应用程序是怎样炼成的 1
1.2 程序员是如何开发Web应用程序的 6
1.2.1 Web程序的分层结构 7
1.2.2 各司其职的程序员 8
1.3 研究Web应用程序的“利器” 11
1.3.1 黑盒测试类工具 11
1.3.2 白盒测试类工具 13
1.4 小结 14
第 2章 登堂入室 ——Web服务器与负载均衡 15
2.1 罗马不是一天建成的 15
2.2 众人拾柴火焰高——集群技术 17
2.2.1 集群技术的核心——负载均衡算法 18
2.2.2 实现负载均衡的设备 19
2.2.3 集群的高可用性 21
2.2.4 负载均衡设备的部署 22
2.2.5 集群扩展实例 23
2.3 用LVS实现负载均衡 25
2.3.1 DR模式 26
2.3.2 TUN模式 26
2.3.3 NAT模式 27
2.3.4 FULL NAT模式 28
2.4 保证负载均衡设备的高可用性 28
2.5 基于OpenResty的负载均衡方案 32
2.6 使用TOA溯源真实IP 33
2.7 小结 34
第3章 祸起萧墙 ——HTTPS和CDN的安全问题 35
3.1 服务器与浏览器沟通的桥梁——HTTP 35
3.1.1 HTTP的工作原理 36
3.1.2 HTTP的缺陷 37
3.2 以安全为目标的HTTPS 38
3.2.1 HTTPS的工作原理 38
3.2.2 针对HTTPS的攻击 39
3.2.3 HSTS的工作原理 40
3.2.4 针对HSTS的攻击 41
3.3 CDN相关的概念 43
3.3.1 HTTP范围请求 45
3.3.2 DDoS攻击 47
3.3.3 放大攻击 47
3.4 RangeAmp攻击 48
3.4.1 小字节范围(SBR)攻击 49
3.4.2 重叠字节范围(OBR)攻击 50
3.5 小结 52
第4章 四战之地 ——Web服务的安全因素 53
4.1 Web服务所面临的威胁 53
4.2 Web服务安全的外部环境因素 54
4.2.1 操作系统的漏洞 55
4.2.2 服务器应用程序的漏洞 66
4.2.3 Docker的缺陷 69
4.3 Web服务安全的内部代码因素 71
4.3.1 常见的Web程序漏洞 71
4.3.2 Web漏洞测试程序(以PHP DVWA为例) 73
4.3.3 命令注入(Shell Injection)的成因与分析 76
4.3.4 文件包含漏洞的分析与利用 82
4.3.5 上传漏洞的分析与利用 88
4.3.6 跨站请求伪造漏洞的分析与利用 92
4.3.7 XSS的分析与利用 96
4.4 Web服务安全检测工具(静态代码审计和动态检测) 100
4.4.1 信息搜集工具 100
4.4.2 漏洞扫描工具 102
4.4.3 Web安全扫描工具 103
4.4.4 代码审计工具 104
4.5 小结 105
第5章 道高一尺 ——如何保护Web服务 106
5.1 WAF基础知识 107
5.1.1 WAF简介 107
5.1.2 反向代理机制 108
5.1.3 DDoS防护与WAF的区别 110
5.1.4 反爬虫防护与WAF的区别 110
5.1.5 WAF的工作原理 110
5.2 Lua语言基础 115
5.2.1 Lua保留字 115
5.2.2 变量与数据结构 115
5.2.3 控制结构 116
5.2.4 函数声明与调用 117
5.2.5 正则表达式 121
5.3 WAF的规则编写 122
5.3.1 XSS攻击拦截正则 122
5.3.2 SQL注入拦截正则 123
5.4 高级拦截过滤规则 124
5.5 WAF的日志分析技术 126
5.5.1 C模块日志扩展模块 126
5.5.2 Lua的UDP日志发送 129
5.5.3 Kafka日志收集 130
5.5.4 在Conf中配置Syslog日志输出 130
5.5.5 基于log_by_lua阶段实现日志转发 131
5.6 网关型WAF系统 132
5.6.1 安装OpenResty 133
5.6.2 安装Lapis 133
5.6.3 创建Lua Web应用 133
5.6.4 Lor框架 135
5.6.5 Orange网关 136
5.6.6 在云环境中部署Orange 140
5.6.7 Apache APISIX网关 144
5.7 流量镜像与请求调度 147
5.7.1 流量镜像与蜜罐系统的联系 147
5.7.2 配置逻辑 148
5.7.3 动态切换上游(蜜罐) 149
5.8 动态跟踪技术 151
5.8.1 保证网关的安全性 151
5.8.2 动态跟踪技术 152
5.9 小结 153
第6章 魔高一丈 ——WAF可以让我们高枕无忧吗 154
6.1 入侵者如何检测WAF 154
6.1.1 网站有无WAF保护的区别 154
6.1.2 检测目标网站是否使用WAF 155
6.1.3 检测目标网站使用的WAF产品 158
6.2 入侵者如何绕过云WAF 161
6.3 常见的WAF绕过方法 163
6.3.1 利用WAF的检查范围 164
6.3.2 WAF与操作系统的解析差异 165
6.3.3 利用WAF与服务器应用程序的解析差异 170
6.3.4 编解码技术的差异 172
6.3.5 其他常用方法 175
6.4 小结 176
第7章 有迹可循 ——Web日志审计 177
7.1 Web服务的日志聚合 178
7.1.1 KafkaCat安装 178
7.1.2 Nginx和OpenResty日志配置 179
7.1.3 用KafkaCat发送日志 180
7.2 Kafka数据队列服务安装 180
7.2.1 Kafka安装与配置 180
7.2.2 Zookeeper安装与配置 184
7.2.3 创建索引并测试 186
7.3 NxLog 187
7.3.1 NxLog安装 187
7.3.2 NxLog配置 187
7.4 Graylog 189
7.5 日志自动化取证分析 198
7.6 小结 204
第8章 太公钓鱼,愿者上钩 ——蜜罐技术 205
8.1 蜜罐技术简介 205
8.2 蜜罐的部署 208
8.2.1 Python环境安装 208
8.2.2 安装PIP 208
8.2.3 安装VirtualEnv 208
8.2.4 创建Python虚拟环境 208
8.2.5 安装OpenCanary 209
8.2.6 蜜罐系统配置管理 209
8.2.7 蜜罐服务分析 209
8.2.8 启动蜜罐系统 214
8.3 常见的蜜罐服务 215
8.3.1 HTTP 216
8.3.2 FTP 217
8.3.3 SSH 218
8.3.4 Telnet 218
8.3.5 MySQL 219
8.3.6 Git 219
8.3.7 NTP 220
8.3.8 Redis 220
8.3.9 TCP 221
8.3.10 VNC 221
8.3.11 RDP 222
8.3.12 SIP 223
8.3.13 SNMP 223
8.3.14 Nmap 224
8.3.15 SYN探测 225
8.3.16 FIN 225
8.3.17 XmasTree 226
8.3.18 Null 227
8.3.19 MSSQL 228
8.3.20 HTTPProxy 228
8.4 虚拟蜜罐技术与扩展 229
8.5 蜜罐运维管理 234
8.6 蜜罐流量监听技术与实现 236
8.6.1 基于C与Pcap实现的流量分析工具 236
8.6.2 创建蜜罐监听 237
8.6.3 编写Makefile 239
8.6.4 核心API解析 239
8.6.5 数据源插件 243
8.6.6 过滤插件 245
8.6.7 日志输出插件 246
8.7 用交换机端口聚合技术实现蜜罐部署 247
8.7.1 交换机端口聚合与蜜罐VLAN划分 247
8.7.2 单物理网卡与多IP蜜罐实例监听 248
8.7.3 案例1:捕获内网服务发起的扫描行为 248
8.7.4 案例2:勒索病毒软件监控 249
8.7.5 收集攻击payload数据 249
8.7.6 日志中心与威胁报警 250
8.7.7 蜜罐系统的监控与运维 251
8.8 小结 252
第9章 众擎易举 ——大数据时代的Web安全 253
9.1 正常URL与恶意URL 254
9.2 传统的恶意URL检测方法 256
9.3 当URL检测遇上机器学习 257
9.4 深度学习框架 258
9.5 URL的向量表示 259
9.6 基于LSTM的恶意URL识别模型 261
9.7 URL识别模型与WAF的结合 264
9.7.1 自动威胁日志采集 265
9.7.2 Sklearn大数据环境 267
9.7.3 大数据建模实践 269
9.8 小结 271
第 10章 步步为营 ——网络安全解决方案 272
10.1 通过命令注入漏洞进行渗透 273
10.1.1 攻防系统结构 273
10.1.2 DVWA的反弹Shell操作 275
10.1.3 日志与数据中心 276
10.2 基于DSL的拦截检查防御 278
10.2.1 DSL与小语言OpenResty EdgeLang 278
10.2.2 基于OpenResty EdgeLang的拦截检查 280
10.3 基于语义分析库的威胁攻击分析 282
10.3.1 语义分析原理 282
10.3.2 libInjection语义分析库 283
10.3.3 开源语义分析库的局限 283
10.4 基于神经网络的威胁建模手段 284
10.4.1 规则泛化 284
10.4.2 数据神经网络 284
10.5 跟踪Shell反弹执行进程 285
10.5.1 System动态跟踪技术 285
10.5.2 OpenResty YLang语言 287
10.5.3 火焰图与动态跟踪 289
10.5.4 OpenResty YSQL语言 290
10.6 小结 292
网络架构、大数据分析、负载均衡、DNS、消息队列、缓存等是信息安全系统所涉及的主要技术,信息安全系统的建设离不开这些基础技术平台的支持。本书在向读者展示网络安全攻击与防御技术的同时,介绍了实际工作中与信息安全系统相关联的各种服务技术以及工作机制。其他的安全类图书往往更关注攻击与漏洞利用的实践操作,本书在此基础上,还介绍了利用多种服务技术构建信息安全系统。读者可通过书中的技术实践素材,帮助自己完成信息安全系统的构建。
——新浪云平台架构部总经理 邱春武
近年来,信息安全、金融安全已经上升
评论
还没有评论。