作品简介

每年都有数百万个恶意软件文件被创建,每天都会产生大量与安全相关的数据,安全已经成为一个“大数据”问题。所以,当防范恶意软件时,为什么不像数据科学家那样思考呢?

在本书中,安全数据科学家约书亚·萨克斯和希拉里·桑德斯展示了在构建自己的检测和情报系统时,如何应用机器学习、统计和数据可视化等技术。在概述了静态和动态分析等基础逆向工程概念之后,你将学习如何度量恶意软件样本中的代码相似性,并使用scikit-learn和Keras等机器学习框架构建和训练你自己的检测器。

无论你是一位想要为现有武器库丰富能力的恶意软件分析师,还是一位对攻击检测和威胁情报感兴趣的数据科学家,本书都将帮助你保持领先地位。

约书亚·萨克斯(Joshua Saxe)是专业安全企业Sophos的首席数据科学家,他在Sophos公司负责领导一个安全数据科学研究团队。他还是Sophos公司基于神经网络的恶意软件检测器的主要发明者,它可以保护数以千万计的Sophos客户防范恶意软件。

希拉里·桑德斯(Hillary Sanders)是Sophos公司的高级软件工程师和数据科学家,她在为Sophos公司发明和产品化神经网络、机器学习和恶意软件相似性分析安全技术方面发挥了关键作用。在加入Sophos之前,希拉里是Premise数据公司的数据科学家。

作品目录

  • 译者序
  • 前言
  • 致谢
  • 作者简介
  • 评审专家简介
  • 第1章 恶意软件静态分析基础
  • 1.1 微软Windows可移植可执行文件格式
  • 1.2 使用pefile解析PE文件格式
  • 1.3 检查恶意软件的图片
  • 1.4 检查恶意软件的字符串
  • 1.5 小结
  • 第2章 基础静态分析进阶:x86反汇编
  • 2.1 反汇编方法
  • 2.2 x86汇编语言基础
  • 2.3 使用pefile和capstone反汇编ircbot.exe
  • 2.4 限制静态分析的因素
  • 2.5 小结
  • 第3章 动态分析简介
  • 3.1 为什么使用动态分析
  • 3.2 恶意软件数据科学的动态分析
  • 3.3 动态分析的基本工具
  • 3.4 基本动态分析的局限
  • 3.5 小结
  • 第4章 利用恶意软件网络识别攻击活动
  • 4.1 节点和边
  • 4.2 二分网络
  • 4.3 恶意软件网络可视化
  • 4.4 使用NetworkX构建网络
  • 4.5 添加节点和边
  • 4.6 使用GraphViz实现网络可视化
  • 4.7 构建恶意软件网络
  • 4.8 构建共享图像关系网络
  • 4.9 小结
  • 第5章 共享代码分析
  • 5.1 通过特征提取对样本进行比较
  • 5.2 使用Jaccard系数量化相似性
  • 5.3 使用相似性矩阵评价恶意软件共享代码估计方法
  • 5.4 构建相似图
  • 5.5 扩展相似性比较
  • 5.6 构建持续的恶意软件相似性搜索系统
  • 5.7 运行相似性搜索系统
  • 5.8 小结
  • 第6章 理解基于机器学习的恶意软件检测方法
  • 6.1 基于机器学习的检测引擎构建步骤
  • 6.2 理解特征空间和决策边界
  • 6.3 是什么决定了模型的好和坏:过拟合与欠拟合
  • 6.4 机器学习算法的主要类型
  • 6.5 小结
  • 第7章 评价恶意软件检测系统
  • 7.1 四种可能的检测结果
  • 7.2 在评价中考虑基准率
  • 7.3 小结
  • 第8章 构建基于机器学习的检测器
  • 8.1 术语和概念
  • 8.2 构建一个基于决策树的检测器雏形
  • 8.3 使用sklearn构建实际的机器学习检测器
  • 8.4 构建工业级的检测器
  • 8.5 评价检测器的性能
  • 8.6 下一步工作
  • 8.7 小结
  • 第9章 可视化恶意软件趋势
  • 9.1 为什么可视化恶意软件数据很重要
  • 9.2 理解我们的恶意软件数据集
  • 9.3 使用matplotlib可视化数据
  • 9.4 使用seaborn可视化数据
  • 9.5 小结
  • 第10章 深度学习基础
  • 10.1 深度学习的定义
  • 10.2 神经网络是如何工作的
  • 10.3 训练神经网络
  • 10.4 神经网络的类型
  • 10.5 小结
  • 第11章 使用Keras构建神经网络恶意软件检测器
  • 11.1 定义模型的架构
  • 11.2 编译模型
  • 11.3 训练模型
  • 11.4 模型评价
  • 11.5 使用回调强化模型训练过程
  • 11.6 小结
  • 第12章 成为数据科学家
  • 12.1 成为安全数据科学家之路
  • 12.2 安全数据科学家的一天
  • 12.3 高效安全数据科学家的特征
  • 12.4 未来的工作
  • 附录 数据集和工具概述
展开全部