前言 第1章 工业控制系统**1 1.1 工业控制系统概述1 1.1.1 工业控制系统基础1 1.1.2 典型工业领域的工业控制系统4 1.2 工业控制网络6 1.2.1 工业控制网络分层拓扑7 1.2.2 工业控制系统与工业控制网络的 关系8 1.3 工业互联网与工业物联网8 1.3.1 工业互联网8 1.3.2 工业物联网9 1.3.3 工业物联网与工业互联网的区别9 1.4 工业控制系统**与防御10 1.4.1 工业控制系统攻击11 1.4.2 工业控制系统防御12 1.5 本章小结13 1.6 习题13 参考文献14 第2章 工业控制设备**15 2.1 可编程逻辑控制器15 2.1.1 组成15 2.1.2 工作原理17 2.1.3 基本指令系统18 2.1.4 PLC与PC的区别20 2.2 可编程自动化控制���20 2.2.1 PAC的构成方式21 2.2.2 PAC系统技术优势23 2.2.3 PAC与PLC的区别23 2.3 远程终端单元24 2.3.1 RTU功能与应用24 2.3.2 PLC与RTU的区别25 2.4 面向PLC的攻击26 2.4.1 固件攻击26 2.4.2 控制逻辑攻击27 2.4.3 物理层攻击28 2.5 本章小结30 2.6 习题30 参考文献31 第3章 常见工业控制协议及**性 分析32 3.1 工业控制协议发展历程32 3.1.1 现场总线协议33 3.1.2 工业以太网协议33 3.1.3 工业无线协议34 3.2 常见工业控制协议35 3.2.1 Modbus协议35 3.2.2 DNP338 3.2.3 S7Comm协议44 3.2.4 IEC系列协议50 3.2.5 OPC协议55 3.2.6 EtherNet/IP协议57 3.3 工业控制协议**性分析63 3.3.1 工业控制协议常见**缺陷63 3.3.2 防护措施63 3.3.3 以自主可控的密码技术为核心提升 工业控制协议**64 3.4 Modbus TCP数据包构造与从站 数据篡改实验64 3.5 S7Comm协议重放攻击终止PLC 运行实验71 3.6 本章小结78 3.7 习题78 参考文献79 第4章 工业控制系统资产探测技术80 4.1 工业控制系统中资产的概念80 4.1.1 资产的相关知识80 4.1.2 指纹库80 4.2 资产探测技术分类82 4.2.1 被动资产探测技术82 4.2.2 主动资产探测技术83 4.2.3 基于搜索引擎的探测技术88 4.2.4 标识获取技术90 4.3 资产探测实验91 4.3.1 使用Shodan产品界面实现探测91 4.3.2 编写脚本探测94 4.4 本章小结104 4.5 习题104 参考文献105 第5章 工业控制系统漏洞检测技术106 5.1 工业控制系统漏洞概念与 分类106 5.1.1 工业控制系统漏洞的概念106 5.1.2 工业控制系统漏洞的分类107 5.1.3 工业控制系统漏洞管理相关 法规109 5.2 工业控制系统漏洞检测基本 概念及技术原理110 5.2.1 漏洞库的概念、结构110 5.2.2 常见工控漏洞库介绍120 5.2.3 工业控制系统漏洞检测技术及 原理121 5.3 常见漏洞检测工具介绍123 5.3.1 Nmap123 5.3.2 GVM126 5.3.3 Metasploit131 5.4 使用Metasploit Framework验证 工控软件漏洞实验134 5.5 GVM安装设置、NVT插件 编写以及工控设备漏洞检测 实验142 5.6 本章小结171 5.7 习题172 参考文献172 第6章 工业控制系统入侵检测与 防护174 6.1 工业控制系统入侵检测与防护 基础174 6.1.1 入侵检测与防护技术背景174 6.1.2 入侵检测技术分类175 6.1.3 国内外研究现状175 6.2 入侵检测产品177 6.2.1 基于签名的解决方案177 6.2.2 基于上下文的解决方案177 6.2.3 基于蜜罐的解决方案178 6.3 白名单与工业防火墙178 6.3.1 工业防火墙178 6.3.2 白名单179 6.3.3 智能工业防火墙180 6.4 基于Snort的入侵检测技术 原理180 6.4.1 Snort规则181 6.4.2 Snort检测原理183 6.5 图形化入侵检测系统的搭建185 6.5.1 CentOS 7虚拟机的网络环境 配置185 6.5.2 入侵检测环境搭建188 6.5.3 攻击检测实验191 6.6 本章小结203 6.7 习题203 参考文献204 第7章 工业控制系统异常检测技术205 7.1 工业控制系统异常检测技术 基础205 7.2 工业控制系统异常检测产品209 7.3 工业控制系统正常行为建模 原理210 7.4 工业控制系统异常检测系统 实验214 7.4.1 正常行为建模技术214 7.4.2 异常检测环境搭建与应用216 7.5 本章小结217 7.6 习题217 参考文献218 第8章 工控系统信息**风险评估221 8.1 风险评估的基本概念221 8.1.1 风险的概念221 8.1.2 风险评估的定义221 8.1.3 工业控制系统的信息**风险 评估222 8.1.4 风险评估的作用和意义224 8.2 风险评估的组成、评估流程224 8.2.1 工控网络风险评估的基本要素225 8.2.2 工控网络风险评估的组成225 8.2.3 风险评估遵循的原则227 8.2.4 风险评估流程228 8.3 风险评估的方法与工具239 8.4 风险评估方法实例—MulVAL 的评估实验244 8.4.1 实验原理244 8.4.2 实验步骤246 8.4.3 利用MulVal生成攻击图248 8.5 本章小结276 8.6 习题276 参考文献277 第9章 工业控制系统入侵响应技术278 9.1 工控系统**防御模型278 9.1.1 管理层**279 9.1.2 物理层**282 9.1.3 网络层**283 9.1.4 信息终端层**285 9.1.5 应用程序层**285 9.1.6 设备层**286 9.2 入侵响应及入侵响应系统286 9.2.1 IDS、IPS及IRS的关系286 9.2.2 IRS的分类288 9.2.3 IRS的特性289 9.3 本章小结293 9.4 习题293 参考文献294