| 作者 |
| 郑云文刘焱 |
| 丛书名 |
| 网络空间安全技术丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9781911011734 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------数据安全架构设计与实战--------------------------- 本书系统性地介绍数据安全架构的设计与实践,融入了作者多年在安全领域积累的实践经验。全书分四大部分,共20章。第一部分介绍安全架构的基础知识,内容包括安全、数据安全、安全架构、5A方法论、CIA等基本概念,为后续论述奠定基础。第二部分介绍产品安全架构,内容包括:身份认证、授权、访问控制、审计、资产保护等,讲解如何从源头设计来保障数据安全和隐私安全,防患于未然。第三部分介绍安全技术体系架构,内容包括:安全技术架构、网络和通信层安全架构、设备和主机层安全架构、应用和数据层安全架构、安全架构案例分析等。第四部分介绍数据安全与隐私保护治理,内容包括:数据安全治理、数据安全政策文件体系、隐私保护基础与增强技术、GRC方案、数据安全与隐私保护的统一等。 ---------------------------Web安全之强化学习与GAN--------------------------- 本书是作者AI安全领域三部曲的第三部,重点介绍强化学习和生成对抗网络的基础知识和实际应用,特别是在安全领域中攻防建设的实际应用。 主要内容包括: AI安全的攻防知识 基于机器学习的恶意程序识别技术 常见的恶意程序免杀方法 如何使用强化学习生成免杀程序 如何使用强化学习提升WAF的防护能力 . 如何使用强化学习提升反垃圾邮件的检测能力 针对图像分类模型的攻击方法 针对强化学习的攻击方法 ---------------------------Web安全之深度学习实战--------------------------- 本书系统介绍Kafka的实现原理和应用方法,并介绍Kafka的运维工具、客户端编程方法和第三方集成方式,深入浅出、图文并茂、分析透彻。本书共10章,主要内容包括:第1章介绍Kafka诞生的背景和主要涉及目标。第2章介绍Kafka的基本组成、拓扑结构以及内部的通信协议。第3章介绍Broker Server及内部的模块组成。第4章介绍Broker Server内部的九大基本模块。第5章介绍Broker的控制管理模块。第6章介绍Topic的管理工具。第7章从设计原则、示例代码、模块组成和发送模式四个方面介绍有关消息生产者的相关知识。第8章介绍两种消费者:简单消费者和高级消费者。第9章介绍Kafka的典型应用,包括与Storm、ELK、Hadoop、Spark典型大数据系统的集成。第10章介绍了一个综合实例,描述Kafka作为数据总线在安防整体解决方案中的作用。 ---------------------------Web安全之机器学习入门--------------------------- 本书首先介绍主流的机器学习工具,以及Python应用于机器学习的优势,并介绍Scikit-Learn环境搭建、TensorFlow环境搭建。接着介绍机器学习的基本概念和Web安全基础知识。然后深入讲解几个机器学习算法在Web安全领域的实际应用,如K近邻、决策树、朴素贝叶斯、逻辑回归、支持向量机、K-Means算法、FP-growth、隐式马尔可夫、有向图、神经网络等,还介绍了深度学习算法之CNN、RNN。本书针对每一个算法都给出了具体案例,如使用K近邻算法识别XSS攻击、使用决策树算法识别SQL注入攻击、使用逻辑回归算法识别恶意广告点击、使用K-Means算法检测DGA域名等。本书作者在安全领域有多年开发经验,全书理论结合实际,案例丰富,讲解清晰,适合于有信息安全基础知识的网络开发与运维技术人员参考。 |
| 目录 |
---------------------------数据安全架构设计与实战--------------------------- 对本书的赞誉 序 一 序 二 前 言 第一部分 安全架构基础 第1章 架构 2 1.1 什么是架构 2 1.2 架构关注的问题 4 第2章 安全架构 5 2.1 什么是安全 5 2.2 为什么使用“数据安全”这个术语 7 2.3 什么是安全架构 10 2.4 安全架构5A方法论 11 2.5 安全架构5A与CIA的关系 13 第二部分 产品安全架构 第3章 产品安全架构简介 16 3.1 产品安全架构 16 3.2 典型的产品架构与框架 17 3.2.1 三层架构 17 3.2.2 B/S架构 18 3.2.3 C/S架构 19 3.2.4 SOA及微服务架构 19 3.2.5 典型的框架 20 3.3 数据访问层的实现 21 3.3.1 自定义DAL 21 3.3.2 使用ORM 22 3.3.3 使用DB Proxy 23 3.3.4 配合统一的数据服务简化DAL 23 第4章 身份认证:把好第一道门 24 4.1 什么是身份认证 24 4.2 如何对用户进行身份认证 26 4.2.1 会话机制 27 4.2.2 持续的消息认证机制 29 4.2.3 不同应用的登录状态与超时管理 30 4.2.4 SSO的典型误区 31 4.3 口令面临的风险及保护 32 4.3.1 口令的保护 33 4.3.2 口令强度 33 4.4 前端慢速加盐散列案例 34 4.5 指纹、声纹、虹膜、面部识别的数据保护 35 4.6 MD5、SHA1还能用于口令保护吗 36 4.6.1 单向散列算法简介 36 4.6.2 Hash算法的选用 38 4.6.3 存量加盐HASH的安全性 38 4.7 后台身份认证 39 4.7.1 基于用户Ticket的后台身份认证 40 4.7.2 基于AppKey的后台身份认证 41 4.7.3 基于非对称加密技术的后台身份认证 41 4.7.4 基于HMAC的后台身份认证 42 4.7.5 基于AES-GCM共享密钥的后台身份认证 44 4.8 双因子认证 44 4.8.1 手机短信验证码 44 4.8.2 TOTP 44 4.8.3 U2F 45 4.9 扫码认证 45 4.10 小结与思考 46 第5章 授权:执掌大权的司令部 48 5.1 授权不严漏洞简介 48 5.2 授权的原则与方式 49 5.2.1 基于属性的授权 49 5.2.2 基于角色的授权 50 5.2.3 基于任务的授权 51 5.2.4 基于ACL的授权 51 5.2.5 动态授权 52 5.3 典型的授权风险 52 5.3.1 平行越权 52 5.3.2 垂直越权 53 5.3.3 诱导授权 53 5.3.4 职责未分离 53 5.4 授权漏洞的发现与改进 54 5.4.1 交叉测试法 54 5.4.2 漏洞改进 54 第6章 访问控制:收敛与放行的执行官 56 6.1 典型的访问控制策略 56 6.1.1 基于属性的访问控制 57 6.1.2 基于角色的访问控制 57 6.1.3 基于任务的访问控制 57 6.1.4 基于ACL的访问控制 58 6.1.5 基于专家知识的访问控制 58 6.1.6 基于IP的辅助访问控制 59 6.1.7 访问控制与授权的关系 61 6.2 不信任原则与输入参数的访问控制 61 6.2.1 基于身份的信任原则 61 6.2.2 执行边界检查防止缓冲区溢出 62 6.2.3 参数化查询防止SQL注入漏洞 62 6.2.4 内容转义及CSP防跨站脚本 68 6.2.5 防跨站请求伪造 70 6.2.6 防跨路径操纵 75 6.2.7 防SSRF 76 6.2.8 上传控制 77 6.2.9 Method控制 78 6.3 防止遍历查询 79 第7章 可审计:事件追溯最后一环 81 7.1 为什么需要可审计 81 7.2 操作日志内容 82 7.3 操作日志的保存与清理 82 7.3.1 日志存储位置 82 7.3.2 日志的保存期限 83 第8章 资产保护:数据或资源的贴身保镖 84 8.1 数据安全存储 84 8.1.1 什么是存储加密 84 8.1.2 数据存储需要加密吗 87 8.1.3 加密后如何检索 88 8.1.4 如何加密结构化数据 88 8.2 数据安全传输 89 8.2.1 选择什么样的HTTPS证书 91 8.2.2 HTTPS的部署 92 8.2.3 TLS质量与合规 93 8.3 数据展示与脱敏 94 8.3.1 不脱敏的风险在哪里 94 8.3.2 脱敏的标准 94 8.3.3 脱敏在什么时候进行 94 8.3.4 业务需要使用明文信息怎么办 95 8.4 数据完整性校验 95 第9章 业务安全:让产品自我免疫 97 9.1 一分钱漏洞 97 9.2 账号安全 99 9.2.1 防撞库设计 99 9.2.2 防弱口令尝试 99 9.2.3 防账号数据库泄露 100 9.2.4 防垃圾账号 100 9.2.5 防账号找回逻辑缺陷 100 9.3 B2B交易安全 101 9.4 产品防攻击能力 103 第三部分 安全技术体系架构 第10章 安全技术体系架构简介 106 10.1 安全技术体系架构的建设性思维 106 10.2 安全产品和技术的演化 107 10.2.1 安全产品的“老三样” 107 10.2.2 网络层延伸 107 10.2.3 主机层延伸 108 10.2.4 应用层延伸 108 10.2.5 安全新技术 108 10.3 安全技术体系架构的二维模型 109 10.4 风险管理的“三道防线” 110 10.5 安全技术体系强化产品安全 112 10.5.1 网络部署架构 112 10.5.2 主机层安全 113 10.5.3 应用层安全 115 10.5.4 数据层安全 117 第11章 网络和通信层安全架构 119 11.1 简介 119 11.2 网络安全域 120 11.2.1 最简单的网络安全域 120 11.2.2 最简单的网络安全域改进 121 11.2.3 推荐的网络安全域 121 11.2.4 从有边界网络到无边界网络 122 11.2.5 网络安全域小结 124 11.3 网络接入身份认证 125 11.4 网络接入授权 127 11.5 网络层访问控制 127 11.5.1 网络准入控制 127 11.5.2 生产网络主动连接外网的访问控制 129 11.5.3 网络防火墙的管理 130 11.5.4 内部网络值得信任吗 131 11.5.5 运维通道的访问控制 132 11.6 网络层流量审计 132 11.7 网络层资产保护:DDoS缓解 133 11.7.1 DDoS简介 133 11.7.2 DDoS缓解措施 134 11.7.3 专业抗DDoS方案 134 第12章 设备和主机层安全架构 136 12.1 简介 136 12.2 身份认证与账号安全 136 12.2.1 设备/主机身份认证的主要风险 137 12.2.2 动态口令 137 12.2.3 一次一密认证方案 137 12.2.4 私有协议后台认证方案 138 12.3 授权与访问控制 138 12.3.1 主机授权与账号的访问控制 138 12.3.2 主机服务监听地址 139 12.3.3 跳板机与登录来源控制 140 12.3.4 自动化运维 141 12.3.5 云端运维 142 12.3.6 数据传输 142 12.3.7 设备的访问控制 143 12.4 运维审计与主机资产保护 144 12.4.1 打补丁与防病毒软件 144 12.4.2 母盘镜像与容器镜像 145 12.4.3 开源镜像与软件供应链攻击防范 145 12.4.4 基于主机的入侵检测系统 147 第13章 应用和数据层安全架构 150 13.1 简介 150 13.2 三层架构实践 151 13.2.1 B/S架构 152 13.2.2 C/S架构 153 13.3 应用和数据层身份认证 154 13.3.1 SSO身份认证系统 154 13.3.2 业务系统的身份认证 155 13.3.3 存储系统的身份认证 155 13.3.4 登录状态管理与超时管理 156 13.4 应用和数据层的授权管理 156 13.4.1 权限管理系统 156 13.4.2 权限管理系统的局限性 157 13.5 应用和数据层的访问控制 158 13.5.1 统一的应用网关接入 158 13.5.2 数据库实例的安全访问原则 159 13.6 统一的日志管理平台 159 13.7 应用和数据层的资产保护 160 13.7.1 KMS与存储加密 160 13.7.2 应用网关与HTTPS 164 13.7.3 WAF(Web应用防火墙) 165 13.7.4 CC攻击防御 167 13.7.5 RASP 168 13.7.6 业务风险控制 169 13.8 客户端数据安全 171 13.8.1 客户端敏感数据保护 172 13.8.2 安全传输与防劫持 172 13.8.3 客户端发布 174 第14章 安全架构案例与实战 176 14.1 零信任与无边界网络架构 176 14.1.1 无边界网络概述 177 14.1.2 对人的身份认证(SSO及U2F) 178 14.1.3 对设备的身份认证 178 14.1.4 最小授权原则 178 14.1.5 设备准入控制 179 14.1.6 应用访问控制 179 14.1.7 借鉴与改进 180 14.2 统一HTTPS接入与安全防御 181 14.2.1 原理与架构 181 14.2.2 应用网关与HTTPS 182 14.2.3 WAF与CC防御 183 14.2.4 私钥数据保护 183 14.2.5 负载均衡 184 14.2.6 编码实现 184 14.2.7 典型特点 185 14.3 存储加密实践 186 14.3.1 数据库字段加密 186 14.3.2 数据库透明加密 186 14.3.3 网盘文件加密方案探讨 187 14.3.4 配置文件口令加密 188 14.4 最佳实践小结 189 14.4.1 统一接入 189 14.4.2 收缩防火墙的使用 190 14.4.3 数据服务 190 14.4.4 建立KMS 191 14.4.5 全站HTTPS 191 14.4.6 通用组件作为基础设施 191 14.4.7 自动化运维 192 第四部分 数据安全与隐私保护治理 第15章 数据安全治理 194 15.1 治理简介 194 15.1.1 治理与管理的区别 194 15.1.2 治理三要素 196 15.2 数据安全治理简介 196 15.2.1 数据安全治理的要素 197 15.2.2 数据安全治理与数据安全管理的关系 201 15.3 安全项目管理 203 15.4 安全运营管理 204 15.5 合规与风险管理 208 15.6 安全开发生命周期管理(SDL) 208 15.6.1 SQL注入漏洞案例 209 15.6.2 SDL关键检查点与检查项 211 15.6.3 SDL核心工作 212 15.7 风险管理 212 15.7.1 风险识别或评估 212 15.7.2 风险度量或成熟度分析 216 15.7.3 风险处置与收敛跟踪 220 15.7.4 风险运营工具和技术 221 15.8 PDCA方法论与数据安全治理 224 第16章 数据安全政策文件体系 227 16.1 数据安全文件体系 227 16.1.1 四层文件体系架构简介 228 16.1.2 数据安全四层文件体系 228 16.1.3 标准、规范与管理规定的关系 229 16.1.4 外部法规转为内部文件 231 16.2 数据安全政策总纲 232 16.2.1 数据安全的目标和范围 232 16.2.2 数据安全组织与职责 233 16.2.3 授权原则 233 16.2.4 数据保护原则 234 16.2.5 数据安全外部合规要求 234 16.3 数据安全管理政策 234 16.3.1 数据分级与分类 234 16.3.2 风险评估与定级指南 235 16.3.3 风险管理要求 237 16.3.4 事件管理要求 238 16.3.5 人员管理要求 239 16.3.6 配置和运维管理 242 16.3.7 业务连续性管理 243 16.4 数据安全标准 244 16.4.1 算法与协议标准 244 16.4.2 口令标准 247 16.4.3 产品与组件标准 248 16.4.4 数据脱敏标准 251 16.4.5 漏洞定级标准 251 16.5 数据安全技术规范 252 16.5.1 安全架构设计规范 253 16.5.2 安全开发规范 255 16.5.3 安全运维规范 256 16.5.4 安全配置规范 257 16.6 外部合规认证与测评 259 第17章 隐私保护基础 262 17.1 隐私保护简介 262 17.1.1 典型案例 262 17.1.2 什么是隐私 263 17.1.3 隐私保护与数据安全的关系 264 17.1.4 我需要了解隐私保护吗 264 17.1.5 隐私保护的技术手段 265 17.1.6 合规遵从 265 17.2 GDPR 268 17.2.1 简介 268 17.2.2 两种角色 269 17.2.3 六项原则及问责制 270 17.2.4 处理个人数据的六个法律依据 271 17.2.5 处理儿童数据 271 17.2.6 特殊的数据类型 272 17.2.7 数据主体的权利 272 17.2.8 数据控制者和数据处理者的义务 274 17.2.9 违规与处罚 276 17.3 个人信息安全规范 276 17.3.1 简介 276 17.3.2 个人信息安全原则 277 17.3.3 个人信息的生命周期管理 277 17.4 GAPP框架 279 17.5 ISO 27018 280 第18章 隐私保护增强技术 281 18.1 隐私保护技术初探 281 18.2 去标识化 283 18.2.1 匿名化 283 18.2.2 假名化 284 18.2.3 K-匿名 284 18.3 差分隐私 286 18.3.1 差分隐私原理 286 18.3.2 差分隐私噪声添加机制 288 18.3.3 数值型差分隐私 288 18.3.4 数值型差分隐私的局限性 291 18.3.5 离散型差分隐私 292 18.3.6 差分隐私案例 294 18.3.7 差分隐私实战 294 第19章 GRC与隐私保护治理 297 19.1 风险 297 19.2 GRC简介 298 19.2.1 GRC三领域 299 19.2.2 GRC控制模型 304 19.3 隐私保护治理简介 306 19.4 隐私保护治理GRC实践 307 19.4.1 计划 308 19.4.2 执行 308 19.4.3 检查 311 19.4.4 处理 311 19.5 隐私保护能力成熟度 311 第20章 数据安全与隐私保护的统一 317 20.1 以数据为中心的统一治理 317 20.1.1 统一的数据安全治理 317 20.1.2 统一数据与数据流图 319 20.1.3 统一数据服务 319 20.2 统一的数据安全生命周期管理 320 20.2.1 数据安全生命周期 321 20.2.2 全生命周期的数据主体权利保障 326 20.2.3 典型案例 327 20.3 数据安全治理能力成熟度模型(DSGMM) 334 附录 数据安全架构与治理总结 338 参考文献 340 ---------------------------Web安全之强化学习与GAN--------------------------- 对本书的赞誉 前言 第1章 AI安全之攻与防1 1.1 AI设备的安全2 1.2 AI模型的安全3 1.3 使用AI进行安全建设4 1.4 使用AI进行攻击9 1.5 本章小结9 第2章 打造机器学习工具箱11 2.1 TensorFlow11 2.2 Keras13 2.3 Anaconda14 2.4 OpenAI Gym19 2.5 Keras-rl19 2.6 XGBoost19 2.7 GPU服务器20 2.8 本章小结23 第3章 性能衡量与集成学习24 3.1 常见性能衡量指标24 3.1.1 测试数据24 3.1.2 混淆矩阵25 3.1.3 准确率与召回率25 3.1.4 准确度与F1-Score26 3.1.5 ROC与AUC27 3.2 集成学习28 3.2.1 Boosting算法29 3.2.2 Bagging算法31 3.3 本章小结32 第4章 Keras基础知识34 4.1 Keras简介34 4.2 Keras常用模型35 4.2.1 序列模型35 4.2.2 函数式模型35 4.3 Keras的网络层36 4.3.1 模型可视化36 4.3.2 常用层38 4.3.3 损失函数44 4.3.4 优化器44 4.3.5 模型的保存与加载45 4.3.6 基于全连接识别MNIST45 4.3.7 卷积层和池化层47 4.3.8 基于卷积识别MNIST49 4.3.9 循环层49 4.3.10 基于LSTM进行IMDB情感分类52 4.4 本章小结54 第5章 单智力体强化学习55 5.1 马尔可夫决策过程55 5.2 Q函数56 5.3 贪婪算法与-贪婪算法57 5.4 Sarsa算法59 案例5-1:使用Sarsa算法处理金币问题60 5.5 Q Learning算法62 案例5-2:使用Q Learning算法处理金币问题63 5.6 Deep Q Network算法64 案例5-3:使用DQN算法处理CartPole问题65 5.7 本章小结71 第6章 Keras-rl简介72 6.1 Keras-rl智能体介绍73 6.2 Keras-rl智能体通用API73 6.3 Keras-rl常用对象75 案例6-1:在Keras-rl下使用SARSA算法处理CartPole问题75 案例6-2:在Keras-rl下使用DQN算法处理CartPole问题77 案例6-3:在Keras-rl下使用DQN算法玩Atari游戏78 6.4 本章小结86 第7章 OpenAI Gym简介87 7.1 OpenAI87 7.2 OpenAI Gym88 7.3 Hello World!OpenAI Gym89 7.4 编写OpenAI Gym环境92 7.5 本章小结98 第8章 恶意程序检测99 8.1 PE文件格式概述100 8.2 PE文件的节104 8.3 PE文件特征提取107 8.4 PE文件节的特征提取119 8.5 检测模型121 8.6 本章小结129 第9章 恶意程序免杀技术130 9.1 LIEF库简介130 9.2 文件末尾追加随机内容 132 9.3 追加导入表132 9.4 改变节名称133 9.5 增加节134 9.6 节内追加内容135 9.7 UPX加壳135 9.8 删除签名137 9.9 删除debug信息138 9.10 置空可选头的交验和138 9.11 本章小结138 第10章 智能提升恶意程序检测能力139 10.1 Gym-Malware简介139 10.2 Gym-Malware架构141 10.2.1 PEFeatureExtractor141 10.2.2 Interface143 10.2.3 MalwareManipulator143 10.2.4 DQNAgent144 10.2.5 MalwareEnv145 10.3 恶意程序样本148 10.4 本章小结149 第11章 智能提升WAF的防护能力150 11.1 常见XSS攻击方式151 11.2 常见XSS防御方式152 11.3 常见XSS绕过方式153 11.4 Gym-WAF架构155 11.4.1 Features类156 11.4.2 Xss_Manipulator类156 11.4.3 DQNAgent类160 11.4.4 WafEnv_v0类161 11.4.5 Waf_Check类162 11.5 效果验证163 11.6 本章小结164 第12章 智能提升垃圾邮件检测能力165 12.1 垃圾邮件检测技术166 12.1.1 数据集166 12.1.2 特征提取168 12.1.3 模型训练与效果验证171 12.1.4 模型的使用172 12.2 垃圾邮件检测绕过技术173 12.2.1 随机增加TAB174 12.2.2 随机增加回车174 12.2.3 大小写混淆175 12.2.4 随机增加换行符175 12.2.5 随机增加连字符176 12.2.6 使用错别字176 12.3 Gym-Spam架构177 12.3.1 Features类178 12.3.2 Spam_Manipulator类178 12.3.3 DQNAgent类179 12.3.4 SpamEnv_v0类181 12.4 效果验证182 12.5 本章小结183 第13章 生成对抗网络184 13.1 GAN基本原理184 13.2 GAN系统架构185 13.2.1 噪音源185 13.2.2 Generator186 13.2.3 Discriminator187 13.2.4 对抗模型188 13.3 GAN188 13.4 DCGAN194 13.5 ACGAN202 13.6 WGAN210 13.7 本章小结217 第14章 攻击机器学习模型218 14.1 攻击图像分类模型218 14.1.1 常见图像分类模型219 14.1.2 梯度算法和损失函数222 14.1.3 基于梯度上升的攻击原理224 14.1.4 基于梯度上升的算法实现226 14.1.5 基于FGSM的攻击原理228 14.1.6 基于FGSM攻击的算法实现229 14.2 攻击其他模型231 案例14-1:攻击手写数字识别模型233 案例14-2:攻击自编码器240 案例14-3:攻击差分自编码器249 14.3 本章小结262 ---------------------------Web安全之深度学习实战--------------------------- 对本书的赞誉 序 前言 第1章 打造深度学习工具箱1 1.1 TensorFlow1 1.1.1 安装1 1.1.2 使用举例3 1.2 TFLearn3 1.3 PaddlePaddle4 1.3.1 安装5 1.3.2 使用举例6 1.4 Karas7 1.5 本章小结9 第2章 卷积神经网络10 2.1 传统的图像分类算法10 2.2 基于CNN的图像分类算法11 2.2.1 局部连接11 2.2.2 参数共享13 2.2.3 池化15 2.2.4 典型的CNN结构及实现16 2.2.5 AlexNet的结构及实现19 2.2.6 VGG的结构及实现24 2.3 基于CNN的文本处理29 2.3.1 典型的CNN结构30 2.3.2 典型的CNN代码实现30 2.4 本章小结32 第3章 循环神经网络33 3.1 循环神经算法概述34 3.2 单向循环神经网络结构与实现36 3.3 双向循环神经网络结构与实现38 3.4 循环神经网络在序列分类的应用41 3.5 循环神经网络在序列生成的应用42 3.6 循环神经网络在序列标记的应用43 3.7 循环神经网络在序列翻译的应用44 3.8 本章小结46 第4章 基于OpenSOC的机器学习框架47 4.1 OpenSOC框架47 4.2 数据源系统48 4.3 数据收集层53 4.4 消息系统层57 4.5 实时处理层60 4.6 存储层62 4.6.1 HDFS62 4.6.2 HBase64 4.6.3 Elasticsearch65 4.7 分析处理层66 4.8 计算系统67 4.9 实战演练72 4.10 本章小结77 第5章 验证码识别78 5.1 数据集79 5.2 特征提取80 5.3 模型训练与验证81 5.3.1 K近邻算法81 5.3.2 支持向量机算法81 5.3.3 深度学习算法之MLP82 5.3.4 深度学习算法之CNN83 5.4 本章小结87 第6章 垃圾邮件识别88 6.1 数据集89 6.2 特征提取90 6.2.1 词袋模型90 6.2.2 TF-IDF模型93 6.2.3 词汇表模型95 6.3 模型训练与验证97 6.3.1 朴素贝叶斯算法97 6.3.2 支持向量机算法100 6.3.3 深度学习算法之MLP101 6.3.4 深度学习算法之CNN102 6.3.5 深度学习算法之RNN106 6.4 本章小结108 第7章 负面评论识别109 7.1 数据集110 7.2 特征提取112 7.2.1 词袋和TF-IDF模型112 7.2.2 词汇表模型114 7.2.3 Word2Vec模型和Doc2Vec模型115 7.3 模型训练与验证119 7.3.1 朴素贝叶斯算法119 7.3.2 支持向量机算法122 7.3.3 深度学习算法之MLP123 7.3.4 深度学习算法之CNN124 7.4 本章小结127 第8章 骚扰短信识别128 8.1 数据集129 8.2 特征提取130 8.2.1 词袋和TF-IDF模型130 8.2.2 词汇表模型131 8.2.3 Word2Vec模型和Doc2Vec模型132 8.3 模型训练与验证134 8.3.1 朴素贝叶斯算法134 8.3.2 支持向量机算法136 8.3.3 XGBoost算法137 8.3.4 深度学习算法之MLP140 8.4 本章小结141 第9章 Linux后门检测142 9.1 数据集142 9.2 特征提取144 9.3 模型训练与验证145 9.3.1 朴素贝叶斯算法145 9.3.2 XGBoost算法146 9.3.3 深度学习算法之多层感知机148 9.4 本章小结149 第10章 用户行为分析与恶意行为检测150 10.1 数据集151 10.2 特征提取152 10.2.1 词袋和TF-IDF模型152 10.2.2 词袋和N-Gram模型154 10.2.3 词汇表模型155 10.3 模型训练与验证156 10.3.1 朴素贝叶斯算法156 10.3.2 XGBoost算法157 10.3.3 隐式马尔可夫算法159 10.3.4 深度学习算法之MLP164 10.4 本章小结166 第11章 WebShell检测167 11.1 数据集168 11.1.1 WordPress168 11.1.2 PHPCMS170 11.1.3 phpMyAdmin170 11.1.4 Smarty171 11.1.5 Yii171 11.2 特征提取172 11.2.1 词袋和TF-IDF模型172 11.2.2 opcode和N-Gram模型174 11.2.3 opcode调用序列模型180 11.3 模型训练与验证181 11.3.1 朴素贝叶斯算法181 11.3.2 深度学习算法之MLP182 11.3.3 深度学习算法之CNN184 11.4 本章小结188 第12章 智能扫描器189 12.1 自动生成XSS攻击载荷190 12.1.1 数据集190 12.1.2 特征提取194 12.1.3 模型训练与验证195 12.2 自动识别登录界面198 12.2.1 数据集198 12.2.2 特征提取199 12.2.3 模型训练与验证201 12.3 本章小结203 第13章 DGA域名识别204 13.1 数据集206 13.2 特征提取207 13.2.1 N-Gram模型207 13.2.2 统计特征模型208 13.2.3 字符序列模型210 13.3 模型训练与验证210 13.3.1 朴素贝叶斯算法210 13.3.2 XGBoost算法212 13.3.3 深度学习算法之多层感知机215 13.3.4 深度学习算法之RNN218 13.4 本章小结221 第14章 恶意程序分类识别222 14.1 数据集223 14.2 特征提取226 14.3 模型训练与验证228 14.3.1 支持向量机算法228 14.3.2 XGBoost算法229 14.3.3 深度学习算法之多层感知机230 14.4 本章小结231 第15章 反信用卡欺诈232 15.1 数据集232 15.2 特征提取234 15.2.1 标准化234 15.2.2 标准化和降采样234 15.2.3 标准化和过采样236 15.3 模型训练与验证239 15.3.1 朴素贝叶斯算法239 15.3.2 XGBoost算法243 15.3.3 深度学习算法之多层感知机247 15.4 本章小结251 ---------------------------Web安全之机器学习入门--------------------------- 对本书的赞誉 序一 序二 序三 前言 第1章 通向智能安全的旅程 1 1.1 人工智能、机器学习与深度学习 1 1.2 人工智能的发展 2 1.3 国内外网络安全形势 3 1.4 人工智能在安全领域的应用 5 1.5 算法和数据的辩证关系 9 1.6 本章小结 9 参考资源 10 第2章 打造机器学习工具箱 11 2.1 Python在机器学习领域的优势 11 2.1.1 NumPy 11 2.1.2 SciPy 15 2.1.3 NLTK 16 2.1.4 Scikit-Learn 17 2.2 TensorFlow简介与环境搭建 18 2.3 本章小结 19 参考资源 20 第3章 机器学习概述 21 3.1 机器学习基本概念 21 3.2 数据集 22 3.2.1 KDD 99数据 22 3.2.2 HTTP DATASET CSIC 2010 26 3.2.3 SEA数据集 26 3.2.4 ADFA-LD数据集 27 3.2.5 Alexa域名数据 29 3.2.6 Scikit-Learn数据集 29 3.2.7 MNIST数据集 30 3.2.8 Movie Review Data 31 3.2.9 SpamBase数据集 32 3.2.10 Enron数据集 33 3.3 特征提取 35 3.3.1 数字型特征提取 35 3.3.2 文本型特征提取 36 3.3.3 数据读取 37 3.4 效果验证 38 3.5 本章小结 40 参考资源 40 第4章 Web安全基础 41 4.1 XSS攻击概述 41 4.1.1 XSS的分类 43 4.1.2 XSS特殊攻击方式 48 4.1.3 XSS平台简介 50 4.1.4 近年典型XSS攻击事件分析 51 4.2 SQL注入概述 53 4.2.1 常见SQL注入攻击 54 4.2.2 常见SQL注入攻击载荷 55 4.2.3 SQL常见工具 56 4.2.4 近年典型SQL注入事件分析 60 4.3 WebShell概述 63 4.3.1 WebShell功能 64 4.3.2 常见WebShell 64 4.4 僵尸网络概述 67 4.4.1 僵尸网络的危害 68 4.4.2 近年典型僵尸网络攻击事件分析 69 4.5 本章小结 72 参考资源 72 第5章 K近邻算法 74 5.1 K近邻算法概述 74 5.2 示例:hello world!K近邻 75 5.3 示例:使用K近邻算法检测异常操作(一) 76 5.4 示例:使用K近邻算法检测异常操作(二) 80 5.5 示例:使用K近邻算法检测Rootkit 81 5.6 示例:使用K近邻算法检测WebShell 83 5.7 本章小结 85 参考资源 86 第6章 决策树与随机森林算法 87 6.1 决策树算法概述 87 6.2 示例:hello world!决策树 88 6.3 示例:使用决策树算法检测POP3暴力破解 89 6.4 示例:使用决策树算法检测FTP暴力破解 91 6.5 随机森林算法概述 93 6.6 示例:hello world!随机森林 93 6.7 示例:使用随机森林算法检测FTP暴力破解 95 6.8 本章小结 96 参考资源 96 第7章 朴素贝叶斯算法 97 7.1 朴素贝叶斯算法概述 97 7.2 示例:hello world!朴素贝叶斯 98 7.3 示例:检测异常操作 99 7.4 示例:检测WebShell(一) 100 7.5 示例:检测WebShell(二) 102 7.6 示例:检测DGA域名 103 7.7 示例:检测针对Apache的DDoS攻击 104 7.8 示例:识别验证码 107 7.9 本章小结 108 参考资源 108 第8章 逻辑回归算法 109 8.1 逻辑回归算法概述 109 8.2 示例:hello world!逻辑回归 110 8.3 示例:使用逻辑回归算法检测Java溢出攻击 111 8.4 示例:识别验证码 113 8.5 本章小结 114 参考资源 114 第9章 支持向量机算法 115 9.1 支持向量机算法概述 115 9.2 示例:hello world!支持向量机 118 9.3 示例:使用支持向量机算法识别XSS 120 9.4 示例:使用支持向量机算法区分僵尸网络DGA家族 124 9.4.1 数据搜集和数据清洗 124 9.4.2 特征化 125 9.4.3 模型验证 129 9.5 本章小结 130 参考资源 130 第10章 K-Means与DBSCAN算法 131 10.1 K-Means算法概述 131 10.2 示例:hello world!K-Means 132 10.3 示例:使用K-Means算法检测DGA域名 133 10.4 DBSCAN算法概述 135 10.5 示例:hello world!DBSCAN 135 10.6 本章小结 137 参考资源 137 第11章 Apriori与FP-growth算法 138 11.1 Apriori算法概述 138 11.2 示例:hello world!Apriori 140 11.3 示例:使用Apriori算法挖掘XSS相关参数 141 11.4 FP-growth算法概述 143 11.5 示例:hello world!FP-growth 144 11.6 示例:使用FP-growth算法挖掘疑似僵尸主机 145 11.7 本章小结 146 参考资源 146 第12章 隐式马尔可夫算法 147 12.1 隐式马尔可夫算法概述 147 12.2 hello world! 隐式马尔可夫 148 12.3 示例:使用隐式马尔可夫算法识别XSS攻击(一) 150 12.4 示例:使用隐式马尔可夫算法识别XSS攻击(二) 153 12.5 示例:使用隐式马尔可夫算法识别DGA域名 159 12.6 本章小结 162 参考资源 162 第13章 图算法与知识图谱 163 13.1 图算法概述 163 13.2 示例:hello world!有向图 164 13.3 示例:使用有向图识别WebShell 169 13.4 示例:使用有向图识别僵尸网络 173 13.5 知识图谱概述 176 13.6 示例:知识图谱在风控领域的应用 177 13.6.1 检测疑似账号被盗 178 13.6.2 检测疑似撞库攻击 179 13.6.3 检测疑似刷单 181 13.7 示例:知识图谱在威胁情报领域的应用 183 13.7.1 挖掘后门文件潜在联系 184 13.7.2 挖掘域名潜在联系 185 13.8 本章小结 187 参考资源 187 第14章 神经网络算法 188 14.1 神经网络算法概述 188 14.2 示例:hello world!神经网络 190 14.3 示例:使用神经网络算法识别验证码 190 14.4 示例:使用神经网络算法检测Java溢出攻击 191 14.5 本章小结 193 参考资源 194 第15章 多层感知机与DNN算法 195 15.1 神经网络与深度学习 195 15.2 TensorFlow编程模型 196 15.2.1 操作 197 15.2.2 张量 197 15.2.3 变量 198 15.2.4 会话 198 15.3 TensorFlow的运行模式 198 15.4 示例:在TensorFlow下识别验证码(一) 199 15.5 示例:在TensorFlow下识别验证码(二) 202 15.6 示例:在TensorFlow下识别验证码(三) 205 15.7 示例:在TensorFlow下识别垃圾邮件(一) 207 15.8 示例:在TensorFlow下识别垃圾邮件(二) 209 15.9 本章小结 210 参考资源 210 第16章 循环神经网络算法 212 16.1 循环神经网络算法概述 212 16.2 示例:识别验证码 213 16.3 示例:识别恶意评论 216 16.4 示例:生成城市名称 220 16.5 示例:识别WebShell 222 16.6 示例:生成常用密码 225 16.7 示例:识别异常操作 227 16.8 本章小结 230 参考资源 230 第17章 卷积神经网络算法 231 17.1 卷积神经网络算法概述 231 17.2 示例:hello world!卷积神经网络 234 17.3 示例:识别恶意评论 235 17.4 示例:识别垃圾邮件 237 17.5 本章小结 240 参考资源 242 |