工业控制系统所面临的安全威胁

news2024/11/24 12:11:09

年新增漏洞严重程度分析

因本文收集处理的公开漏洞基本上都被 CVE 所收录, 所以本文在分析这些漏洞的严重 性时,将主要根据 CVE 的 CVSS 评估值①来判断,并划分为高、中、低三种情况。
根据图 2.9 的统计分析
,2013 年的新增漏洞中高危漏洞超过一半(54%)。 高 中
图 2.9 2013 年收录的新增漏洞按严重程度的分类情况
① CVSS:Common Vulnerability Scoring System,即“通用漏洞评分系统”,这是一个“行业公开 标准,其被设计用来评测漏洞的严重程度,并帮助确定所需反应的紧急度和重要度。 通常 CVSS同 CVE一同由美国国家漏洞库(NVD)发布并保持数据的更新。

工业控制系统

脆弱性的检测及防护建议通过上述分析,我们可以看到工业控制系统自身的脆弱性
问题正在越来越多的被工业控 制系统厂商、安全机构等重视起来。因此对工业控制系统脆弱性的安全防护工作也应该尽快 得到应有的重视。对工业控制系统脆弱性的安全防护是一个系统工程,包括从技术到管理各个方面的工作。 其中最重要的就是对工业控制系统自身脆弱性问题的检测与发现,只有及时发现工业控制系 统存在的脆弱性问题,才能进一步执行相应的安全加固及防护工作。
工业控制系统在建设部署时具有设备单元数量多,物理位置分布广的特点。因此工业控 制系统脆弱性检测工作需要专业的检测设备辅助进行。对此我们认为,安全行业厂商和工业 控制系统厂商应尽早建立合作机制、建立国家或行业级的漏洞信息分享平台与专业的关于工 控系统的攻防研究团队,并尽早开发出适合于工业控制系统使用的脆弱性扫描设备。
适用于工业控制系统的漏洞扫描器和传统的 IT 系统漏洞扫描器相比,除了可以支持对常 见的通用操作系统、数据库、应用服务、网络设备进行漏洞检测以外,还应该支持常见的工 业控制系统协议,识别工业控制系统设备资产,检测工业控制系统的漏洞与配置隐患(如图 2.10 所示,红线框内标识了工业控制系统漏洞扫描器与工业控制系统相关的功能)。
图 2.10 工业控制系统漏洞扫描器的功能示意图
通过使用工业控制系统扫描器,在工业控制系统设备上线前及维护期间进行脆弱性扫描, 可以及时发现工业控制系统存在的脆弱性问题,了解工业控制系统自身的安全状况,以便能 够及时地提供针对性的安全加固及安全防护措施。因此,工业控制系统脆弱性的检测与发现 对完善工业控制系统安全的工作来说至关重要,是需要首先解决的问题之一。

三工业控制系统的安全威胁分析

工业控制系统所面临的安全威胁

根据我们对工业控制系统所涉及到的相关网络的研究,当前的工业控制系统在具体部署 时通常涉及到如下几种网络:企业办公网络(简称办公网络)、过程控制与监控网络(简称 监控网络)以及现场控制系统网络(如错误**!**未找到引用源。所示)[LYHC2012]。下面我们在简 单介绍这三种网络功能的同时,讨论可能存在的部分安全威胁[Tofino]及攻击途径。
图 3.1 工业控制系统所面临的安全威胁

  • 企业办公网络
    主要涉及企业应用,如 ERP、CRM 和 OA 等与企业运营息息相关的系统。
    根据风险敏感程度和企业应用场景的不同,企业办公网络可能存在与外部的互联网 通信边界;而一旦存在互联网通信,就可能存在来自互联网的安全威胁(比如:不安全 的远程支持(图 3.1 中攻击途径○1 )。这时通常就需要具有较完备的安全边界防护措施, 如防火墙、严格的身份认证及准入控制机制等。
    另一方面,工业控制系统的监控及采集数据也需要被企业内部的系统或人员访问或 处理,这样在企业网络与工业控制系统的监控网络甚至现场网络(总线层)之间存在信 息访问路径;但其中由于实时性要求及工业控制系统通信协议私有性的局限,多数情况 在这些访问过程并未能实现基本访问控制及认证机制[LYHC2012],即使在企业办公网与监控 网络之间存在物理隔离设备(防火墙、网闸等),但也存在因策略配置不当而被穿透的 威胁(图 3.1 中攻击途径○2 )。
  • 过程控制与监控网络
    过程控制与监控网络中主要部署:SCADA 服务器、历史数据库、实时数据库以及人 机界面等关键工业控制系统组件。在这个网络中,系统操作人员可以通过 HMI 界面、 SCADA 系统及其他远程控制设备,对现场控制系统网络中的远程终端单元(RTU)、 现场总线的控制和采集设备(PLC 或者 RTU)的运行状态进行监控、评估、分析;并依 据运行状况对 PLC 或 RTU 进行调整或控制。监控网络负责工业控制系统的管控,其重 要性不言而喻。对现场设备的远程无线控制、监控网络设备维护工作及需要合作伙伴协 同等现实需求,在监控网络中就需要考虑相应的安全威胁:
  • 不安全的移动维护设备(比如笔记本、移动 U 盘等)的未授权接入,而造成木 马、病毒等恶意代码在网络中的传播(图 3.1 中攻击途径○3 )
  • 监控网络与 RTU/PLC 之间不安全的无线通信,可能被利用攻击工业控制系统 (图 3.1 攻击途径○4 )。在《工业控制系统的安全性研究报告》[LYHC2012]给出了 一个典型的利用无线通信进行入侵攻击的攻击场景。
    • 因合作的需要,工业控制网络有可能存在外联的第三方合作网络并且在 网络之间存在重要的数据信息交换。虽然这些网络之间存在一定的隔离及访问 控制策略,但日新月异的新型攻击技术也可能造成这些防护措施的失效,从而 来自合作网络的安全威胁也是不容忽视的。(图 3.1 攻击途径○5 )。
  • 控制系统网络:
    控制系统网络利用总线技术(如 PROFIBUS 等)将传感器/计数器等设备与 PLC 以及 其他控制器相连,PLC 或者 RTU 可以自行处理一些简单的逻辑程序,不需要主系统的 介入即能完成现场的大部分控制功能和数据采集功能,如控制流量和温度或者读取传感 器数据,使得信息处理工作实现了现场化。
    控制系统网络由于通常处于作业现场,因此环境复杂,部分控制系统网络采用各种 接入技术作为现有网络的延伸,如无线和微波,这也将引入一定的安全风险(图 3.1 攻 击途径○4 )。同时 PLC 等现场设备在现场维护时,也可能因不安全的串口连接(比如, 缺乏连接认证)或缺乏有效的配置有效性核查,而造成 PLC 设备运行参数被篡改,从而 对整个工业控制系统的运行造成危害(例如,伊朗核电站离心机转速参数被篡改造成的 危害)。
    由于工业控制系统的正常运行甚至会影响到国计民生(诸如电力、石化、市政、交通以 及重要的制造业的工业控制系统),其重要性不言而喻。因此他们也必然会成为网络战的重 点关注对象,而且目前 APT 等新型、复杂攻击技术的存在,也将使得系统面临的安全威胁日 益严重。

攻击方法与工业控制系统安全

工业控制系统已经成为国家关键基础设施的重要组成部分,工业控制系统的安全关系到国 家的战略安全。近年来,针对工业控制系统的攻击,不论是在规模宏大的网络战(Cyberwar), 还是在一般的网络犯罪(Cybercrime)中,都可以发现高级持久威胁(Advanced Persistent Threat ,简称 APT)的影子。本章通过对新型 APT 攻击方法的梳理和分析,有针对性地为 工业控制系统行业提出可行的安全防护建议。

高级持久威胁概述

简单地说,APT 指一个具备相应能力和意图的组织,针对特定实体发起的持续和有效的
威胁。
严格来说,APT 能够灵活地组合使用多种新型攻击技术和方法,超越了传统的基于特征 签名的安全机制的防御能力,能够长时间针对特定目标进行渗透,并长期潜伏而不被发现, 是一种严密组织化的行为,拥有大量的资金支持、优秀的管理能力和大量高端人才。具体来 说,应当具备以下三方面的特征[APT]:
高级:威胁背后的操纵者有能力进行全方位的情报收集工作。不仅包括通过计算机入侵获 取信息,而且还可以扩展到传统的情报搜集,如电话拦截技术和卫星成像技术。虽然攻击的

个别手段可能无法被归类为特别“先进”,但操纵者通常可以根据需要开发更为先进的工具。 他们经常结合多种方法、工具和技术,以保持接触与尝试并最终攻陷目标。
持久:操纵者会执着地进行特定任务,而不是随机地搜索目标。通过持续监测和接触,以 实现针对目标的任务。如果操纵者暂时无法取得进展,他们通常会不断地重新尝试,并最终 取得成功。操纵者的目的还包括长时间保持对目标的访问权,而不只是取得一次性的攻击机 会。
威胁:同时具备了能力和意图。APT 攻击的关键在于协调人的行动,而不是盲目的执行 自动化攻击。操纵者持有具体目标和动机,具备足够的技能、严密的组织力和大量的资金。
通常认为,APT 攻击应该包含情报收集、突破防线、建立据点、隐秘横向渗透和完成任 务五个阶段(如图 3.2 所示),各阶段的具体任务描述见表 3-1。
图 3.2 APT 攻击的五个阶段
表 3-1 APT攻击各阶段的任务描述

|阶段名称 ||任务描述 ||
|情报收集** ||攻击者在社交网站等公开数据源中搜索并锁定特定人员,收集有价值情报并加 以研究。 ||
|突破防线** ||收集到足够的情报后,获取第一台受害主机上的代码执行权限。||
|建立据点** ||突破防线后,建立 C&C(Command & Control)服务器到第一台受害主机的信 道并获取系统的最高权限,将第一个据点变成对内部网络发动后续攻击的前沿 阵地。 ||
|隐秘横向渗透** ||在内部网络探测、入侵更多的主机,发掘有价值的资产及数据服务器,并尽可 能长时间地避免被发现。||
|完成任务** ||设定要完成的任务可能是上传搜集到的敏感信息,或者执行破坏活动。比较高 级的 APT 攻击还包括严密的踪迹销毁等撤退策略。||

参考资料

绿盟 2014工控系统的安全研究与实践报告

友情链接

GB-T 31497-2015 信息技术 安全技术 信息安全管理 测量

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2166.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL索引优化

索引优化 EXPLAIN查询分析 参考另一篇,通过explain我们可以确定查询语句的访问类型,用到的索引,扫描行数以及extra信息。 回表查询与覆盖索引 InnoDB索引有聚簇索引和辅助索引。聚簇索引的叶子节点存储行记录,InnoDB必须要有&…

sql查询面试题复习

基础 查所有的数据 select * from user_profile;查询某几列 select device_id,gender,age,university from user_profile;取出学校的去重数据。 select distinct university from user_profile; #distinct 关键字查看前2个用户明细设备ID数据 select device_id from user_p…

反射、枚举和lambda表达式

文章目录一、反射反射的相关类获得Class对象的三种方法反射的基本使用反射优点和缺点二、枚举背景及定义枚举的使用为什么Enum源码中找不到values()方法?枚举与反射总结三、Lambda表达式函数式接口Lambda表达式的基本使用lambda在集合中的应用总结一、反射 Java的反…

SQL(及存储过程)跑得太慢怎么办?

SQL作为目前最常用的数据处理语言,广泛应用于查询、跑批等场景。当数据量较大时,使用SQL(以及存储过程)经常会发生跑得很慢的情况,这就要去优化SQL。优化SQL有一些特定的套路,通常先要查看执行计划来定位SQ…

性能优化:MySQL使用优化(1)

参考资料: 《explain | 索引优化的这把绝世好剑,你真的会用吗?》 《一张图彻底搞懂MySQL的 explain》 《MySQL 性能优化神器 Explain 使用分析》 《MySQL索引应用篇:建立索引的正确姿势与使用索引的最佳指南!》 《…

【Node.js】npm与包【万字教学~超超超详细】

✍️ 作者简介: 前端新手学习中。 💂 作者主页: 作者主页查看更多前端教学 🎓 专栏分享:css重难点教学 Node.js教学 从头开始学习 目录 包 什么是包 包的来源 为什么需要包 从哪里下载 如何下载包 npm初体验 格式化时间的传统做法 实现…

Win11系统C++将ONNX转换为engineer文件,TensorRT加速推理

准确工作,安装配置好CUDA,cudnn,vs2019,TensorRT 可以参考我博客(下面博客有CUDA11.2,CUDNN11.2,vs2019,TensorRT配置方法) (70条消息) WIN11CUAD11.2vs2019tensorTR8.6Yolov3/4/5模型加速_Ve…

【JavaDS】HashMap与HashSet的底层原理

✨博客主页: 心荣~ ✨系列专栏:【Java实现数据结构】 ✨一句短话: 难在坚持,贵在坚持,成在坚持! 文章目录一. HashMap底层原理1. HashMap的属性2. HashMap的构造方法3. 给HashMap分配内存的时机4. HashMap中的put5. HashMap中的哈希函数6. HashMap的扩容机制二. HashSet的底层原…

【资损】业务产品分析资损防控规范

📫作者简介:小明java问道之路,专注于研究 Java/ Liunx内核/ C及汇编/计算机底层原理/源码,就职于大型金融公司后端高级工程师,擅长交易领域的高安全/可用/并发/性能的架构设计与演进、系统优化与稳定性建设。 &#x1…

读书 | 设计模式之禅 - 责任链模式

文章目录1. 实现古代妇女的“三从”制度2. 实现古代妇女的“三从”制度-优化3. 责任链模式的定义1. 实现古代妇女的“三从”制度 一位女性在结婚之前要听从于父亲,结婚之后要听从于丈夫,如果丈夫死了还要听从于儿子。作为父亲、丈夫或儿子,只…

Spring-day01 spring全家桶,如何学习框架,单元测试

Spring学习-概述 1. spring全家桶:spring , springmvc ,spring boot , spring cloud spring: 出现是在2002左右,解决企业开发的难度。减轻对项目模块之间的管理, 类和类之间的管理, 帮助开发人员创建对象&a…

Linux:iptables和firewalld基础j解析

目录 1、四表五链概念: 2、数据报文流程 3、iptables 与 firewalld 区别 4、DROP 和 REJECT策略的区别: 5、iptables命令参数 6、iptables基本的命令使用 7.firewalld:基于CLI(命令行界面)和基于GUI(图…

多线程wait()和notify()方法详解

多线程wait()和notify()方法详解 文章目录多线程wait()和notify()方法详解前言一、线程间等待与唤醒机制二、等待方法wait()三、唤醒方法notify()四、关于wait和notify内部等待问题(重要)五、完整代码(仅供测试用)六、wait和sleep…

docker实战学习2022版本(六)之Dockerfile整合微服务实战

需求&#xff1a;通过idea新建一个普通微服务模块&#xff1b;然后通过Dockerfile发布微服务部署到docker容器 step1&#xff1a;新建一个springboot项目&#xff0c;添加依赖 <dependencies><!--SpringBoot通用依赖模块--><dependency><groupId>org.…

Clickhouse与Doris的区别

Doris使用较为简单&#xff0c;join功能更强大&#xff0c;运维更简单&#xff0c;灵活的扩容缩容&#xff0c;分布式更强&#xff0c;支持事务和幂等性导数 Clickhouse性能更佳&#xff0c;导入性能和单表查询性能更好&#xff0c;同时可靠性更好&#xff0c;支持非常多的表引…

谈一谈AI对人工的取代

文章目录AI绘画现在达到了什么水平&#xff1f;易用性怎么样&#xff1f;**缘起&#xff1a;2015年 用文字画画****2021年 Dalle 与 开源社区的程序员们****openAI与它并不open的Dalle****AI开源社区****Dream by [wombo](https://www.zhihu.com/search?qwombo&search_sou…

内农大《嵌入式基础》实验二 C语言进阶和Makefile

一、 实验目的 利用多文件编程&#xff0c;掌握Linux环境下C程序的编辑、编译、运行等操作。掌握Makefile文件的编写、变量及隐式规则和模式规则的应用。掌握Linux环境下main函数的参数。掌握各类指针的应用。 二、 实验任务与要求 根据实验要求编写C语言程序&#xff1b;写…

LiteIDE主题定制教程【续】

摘要&#xff1a;本篇文章是LiteIDE主题定制教程的续作&#xff0c;之所以会有这篇续作&#xff0c;是因为在写完那篇文章之后&#xff0c;我在使用过程中陆续发现了一些问题&#xff0c;以及一些可以优化的地方&#xff0c;我将这些内容作为补充放到这篇文章里。所有更新都已同…

<Linux系统复习>文件系统的理解

一、本章重点 1、磁盘的物理结构 2、磁盘文件如何存储&#xff1f; 3、目录的理解 4、创建一个文件做了什么&#xff1f; 5、删除一个文件做了什么&#xff1f; 6、软连接 7、硬链接 01 磁盘的物理结构 磁盘是硬件结构唯一的机械设备&#xff0c;它通过磁头来进行磁盘的读写&am…

LabVIEW前面板上的字体大小取决于操作系统

LabVIEW前面板上的字体大小取决于操作系统 创建了一个VI&#xff0c;其前面板使用了多个标签和文本。我发现Windows 7系统上的字体大小与Windows 10系统上的字体大小不同。这导致我的前面板看起来不像我希望在计算机上看到的那模样。如何使字体在所有Windows操作系统上变得相同…