黑客大曝光:工业控制系统安全
作者:(美)克林特(Clint Bodungen)等
出版社:机械工业出版社
出版时间:2017-10-01
ISBN:9787111575948
定价:¥89.00
译者序
作者简介
技术审校者简介
前言
致谢
第一部分 做好准备:工业控制系统渗透测试就位
案例研究 第一部分:无尽的灾难2
第1章 工业控制系统安全概述4
1.1 信息物理系统:机器崛起5
1.1.1 传统威胁的全新攻击向量7
1.1.2 后果:这将导致什么呢8
1.1.3 理解工控系统所面临的现实威胁与风险9
1.2 工业控制系统概述12
1.2.1 画面12
1.2.2 监视12
1.2.3 控制12
1.2.4 用于工控系统的普渡参考模型13
1.2.5 常用控制系统、设备和组件的类型15
1.3 本章总结20
1.4 延伸阅读20
第2章 工业控制系统风险评估22
2.1 工控系统风险评估入门22
2.1.1 难以确定的工控系统“风险度量标准”23
2.1.2 风险评估标准23
2.1.3 工控系统风险评估中评价和测量的内容24
2.1.4 工控系统风险评估过程概述27
2.2 工控系统风险评估过程步骤28
2.2.1 第1阶段:资产识别与评定30
2.2.2 第2阶段:脆弱性识别与威胁建模36
2.2.3 后续步骤51
2.3 本章总结51
2.4 延伸阅读52
第3章 通过威胁建模获取具有可操作性的工业控制系统威胁情报53
3.1 威胁信息与威胁情报54
3.2 威胁建模:将工控系统威胁信息转化为“可操作”的威胁情报56
3.2.1 工控系统杀伤链56
3.2.2 工控系统威胁建模过程58
3.2.3 信息收集60
3.3 本章总结78
3.4 延伸阅读78
案例研究 第二部分:威胁涌现79
延伸阅读81
第二部分 工业控制系统入侵
案例研究 第三部分:乘虚而入84
延伸阅读86
第4章 渗透测试策略87
4.1 渗透测试的目的88
4.2 黑盒测试、白盒测试与灰盒测试90
4.3 特殊考量:工控系统渗透测试不同于IT系统渗透测试91
4.4 实验环境的部署93
4.4.1 从“类似”配置的系统中取样93
4.4.2 虚拟化94
4.4.3 装备99
4.5 测试规则100
4.6 风险场景的运用101
4.7 工控系统渗透测试:测试策略101
4.7.1 侦察(“踩点”)102
4.7.2 外部测试103
4.7.3 跳板攻击105
4.7.4 网络之外的考虑:非对称与可替换的攻击向量107
4.7.5 内部测试:针对工控系统网络的测试108
4.8 本章总结112
4.9 延伸阅读112
第5章 工业控制系统协议攻击114
5.1 Modbus协议114
5.1.1 Modbus协议中间人攻击119
5.1.2Schneider终止CPU运行攻击119
5.1.3 Schneider功能码90鉴别攻击121
5.2 EtherNet/IP协议122
5.2.1 EtherNet/IP协议身份鉴别请求攻击124
5.2.2 EtherNet/IP协议中间人攻击126
5.2.3 EtherNet/IP协议终止CPU运行攻击126
5.3 DNP3协议127
5.3.1 DNP3 协议模糊测试攻击131
5.3.2 DNP3协议鉴别攻击133
5.4 Siemens S7通信协议134
5.4.1 S7协议终止CPU运行攻击135
5.4.2 S7协议鉴别攻击141
5.4.3 S7 协议口令暴力破解攻击144
5.5 BACnet协议147
5.6 其他协议152
5.6.1 OMRON FINS协议鉴别攻击152
5.6.2 PCWORX协议鉴别攻击153
5.7 协议攻击的对抗措施154
5.7.1 更新固件154
5.7.2 强网络隔离和网络安全155
5.7.3 口令暴力攻击的对抗措施155
5.8 本章总结156
5.9 延伸阅读156
第6章 工业控制系统设备与应用攻击157
6.1 软件的漏洞利用158
6.1.1 若干基本原理158
6.1.2 缓冲区溢出159
6.1.3 整型溢出:上溢、下溢、截断与符合失配164
6.1.4 指针操纵168
6.1.5 格式化字符串172
6.1.6 目录遍历175
6.1.7 DLL劫持178
6.1.8 注入182
6.1.9 跨站脚本186
6.1.10 跨站请求伪造189
6.1.11 硬编码值利用191
6.1.12 暴力攻击192
6.2 所有软件皆有漏洞194
6.3 本章总结194
6.4 延伸阅读195
第7章 工业控制系统“0-day”漏洞研究196
7.1 像攻击者一样思考197
7.2 步骤1:目标选取197
7.3 步骤2:文档研究198
7.4 步骤3:可访问接口的枚举与优先级排序198
7.5 步骤4:逐接口分析与测试199
7.5.1 模糊测试199
7.5.2 静态二进制分析205
7.5.3 动态二进制分析211
7.6 步骤5:漏洞利用214
7.7 融会贯通:MicroLogix案例研究216
7.7.1 漏洞研究的准备216
7.7.2 深入之前的工作217
7.7.3 打造定制固件218
7.8 本章总结223
7.9 延伸阅读224
7.9.1 工具224
7.9.2 一般文献224
第8章 工业控制系统恶意代码225
8.1 工控系统恶意代码入门225
8.1.1 代码释放器225
8.1.2 Rootkits227
8.1.3 病毒228
8.1.4 广告软件与间谍程序228
8.1.5 蠕虫229
8.1.6 木马229
8.1.7 勒索软件231
8.1.8 感染途径232
8.2 工控系统恶意代码分析234
8.2.1 实验环境234
8.2.2 Stuxnet235
8.2.3 Flame237
8.2.4 Havex237
8.2.5 BlackEnergy239
8.2.6 伪装为工控系统软件的犯罪软件241
8.2.7 Shamoon243
8.3 本章总结243
8.4 延伸阅读244
案例研究 第四部分:立足之地245
延伸阅读247
第三部分 融会贯通:风险缓解
案例研究 第五部分:何去何从250
延伸阅读251
第9章 工业控制系统安全标准入门252
9.1 合规性与安全性253
9.2 常见的工控系统网络安全标准254
9.2.1 NIST SP 800-82254
9.2.2 ISA/IEC 6244325