某组态软件工程文件加密机制探究

news2024/11/19 5:34:58

某组态软件工程文件加密机制探究

在工业自动化控制领域,组态软件是数据采集与过程控制的专用软件,是实现人机交互必不可少的工具。工程设计人员使用组态软件在PC机上进行工程画面组态的编辑,然后把编译后的组态逻辑通过以太网或串口下载到PLC或其它连接设备中运行,并进行相应的控制和监视。组态软件广泛应用于机械、汽车、石油、化工、造纸、水处理以及过程控制等诸多领域。

本次研究的组态软件是一家取得国内市场领先地位厂商的产品,该产品广泛应用与工业控制领域,如轻工业、电力、交通、能源等通用装备控制行业。

天弓实验室研究员发现,该品牌组态软件的最新版本中工程文件加密机制比较脆弱,攻击者可在不知道文件密码的情况下获取密码,从而修改工程文件,改变生产流程,给工业生产过程带来损失。

  • 漏洞挖掘流程
  1. 创建工程文件

打开软件,新建一个工程文件,添加一个组件,先保存为无密码项目,然后添加文件保护密码,另存为有密码文件。 

  1. 文件格式分析

使用分析工具打开这两个项目文件,查看数据统计结果。通过比对发现两个文件中都存在大量的16进制“4D”数据,在整个文件数据中占比都高于58%。在正常情况下该文件中占比最多的数据是“00”,所以推测工程文件无论是否设置文件保护密码,都要使用16进制“4D”进行异或加密。

下面进行比对分析

无密码分析

有密码分析

所以使用“4D”分别对这两个文件进行异或运算,结果在两个文件中都发现了一些可读字符,说明思路是对的,当异或运算之后的文件就是明文文件。

无密码

有密码

 

经过对比两个文件的异同,发现无论是否加密,文件头是一样的。继续往下查看,在加密密码存储区域有明显的差异。可看到加密文件的密码为“aaaaaa”,未加密文件没有密码。

  1. 漏洞利用

通过上述分析明白原理后我们就可以编写解密脚本以实现自动化获取工程文件的加密密码,而不用每次进行分析。本次编写的脚本可以获取到工程文件是否有密码保护、密码长度及密码。

  1. 利用场景

攻击人员通过控制生产网的工程师站后,打开工控组态软件查看工程文件时需要输入口令才可继续。攻击人员可以利用该解密脚本把工程文件进行解密获得密码,从而进入组态工程进行修改组态逻辑,以改变工业正常生产流程。

工程文件加密是应对网络攻击的最后一道防护措施,能够在生产网被攻陷时保证生产流程不被篡改。通过以上内容可以看出,部分组态软件在工程文件加密方面不够重视。文件加密应使用完善的加密算法,由加密密码参与运算来生成足够长的子密钥,再用子密钥来加密文件,而不是使用简单的固定值来对文件加密。

  • 介绍

天弓安全实验室

天弓星,又称弧矢。根据《晋书.天文至上》中对弧九星,在狼东南,天弓也,主备盗贼,常向於狼。取名天弓,意寓“无坚不摧,也可引而不射,代表着强大的战略威慑力”表达出天弓战队的主要愿景是成为工业控制和物联网领域的网络攻防国家战略力量。

天弓安全实验室由中电科网安成立,实验室主要面向智慧城市、智能制造、智慧家居三大方向。该实验室由国内工控安全领域知名专家领军,汇聚国内多名漏洞挖掘、二进制逆向、IOT安全、渗透测试、自动化工程师等安全专家组建而成。实验室拥有数百万级工控实验环境和IOT测试环境,覆盖四十余个国内外工控厂商、智能设备商,漏洞挖掘团队常态化挖掘,稳定产出且负责多个国家级项目,是国家级网络对抗的重要支撑力量。

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

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

相关文章

HSRP协议(思科私有)/VRRP协议(公有)

数据来源 1、HSRP热备份路由协议(备份网关) 出现背景: 如下图一个公司拉两条网线一条用来备份网关是192.168.0.253,平时用的网关是254,如果网关是254的这条网线出问题了就可以使用备份不影响公司让人员上网&#xff…

2022最新版 Java 学习线路图

第 1 阶段 - 企业级开发 - java 基础 学习掌握本阶段的内容,可以实现诸如迅雷下载软件、QQ 聊天客户端、中小网站,例如:小型旅游网站、小型电商网站的开发 第 2 阶段 - 企业及开发 - 基础框架 学习掌握本阶段内容,可以快速、规范的…

CRC校验——以SHT4xA温湿度传感器为例

CRC校验——以SHT4xA温湿度传感器为例一、简介二、计算方法(一)步骤(二)参考代码(C语言)(三)检验:CRC(0xBEEF) 0x92三、参考一、简介 循环冗余校验码(CRC&am…

[附源码]计算机毕业设计JAVA疫情防控下高校教职工健康信息管理系统

[附源码]计算机毕业设计JAVA疫情防控下高校教职工健康信息管理系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术&…

试剂盒和示踪剂—艾美捷FLIVO探针活体凋亡检测分析

针对FLIVO(FLuorescence in vIVO)探针的研究,本篇文章推荐艾美捷ImmunoChemistry(ICT)FLIVO探针系列的:天冬氨酸蛋白酶(Caspases)活性检测试剂盒,及 FLIVO示踪剂,主要用于细胞凋亡活体检测,助力…

大型分布式系统下缓存应该怎么玩,才能用得高效

大家好,今天我们来聊一聊在大型分布式系统中,缓存应该怎么玩,从毕业到现在也有三年多了,大大小小的系统也经历了几十个,今天就从各个角度来讨论一下,我们的不同的缓存应该怎么玩,才能用的高效。…

N皇后问题(分支限界法)

问题描述: 在 n * n 格的棋盘上放置彼此不受攻击的 n 个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题等价于在 n * n 的棋盘上放置 n 个皇后,任何 2个皇后不放在同一行或同一列或同一斜线上…

Ansys Speos | 新型计算方法:使用 GPU 提升计算速率

前言 Speos 在2022R2版本中正式推出 GPU 计算功能,相比于 CPU 计算,相同HPC32配置,高性能显卡在仿真计算中将会更显计算优势,在仿真数据量大、材料属性复杂、光源种类多的条件下,Speos 视觉模拟会消耗更多仿真计算时间…

ARM异常处理(1):异常类型、优先级分组和异常向量表

本系列文章将以Cortex-M3内核为例,对ARM的异常(exception)进行分析。 文章目录1 异常类型2 优先级3 向量表1 异常类型 Cortex-M3提供了一个功能丰富的异常体系结构,它支持很多系统异常和外部中断。异常编号1-15表示系统异常,16及以上表示外部…

0116 查找算法 Day5

剑指 Offer 04. 二维数组中的查找 在一个 n * m 的二维数组中,每一行都按照从左到右 非递减 的顺序排序,每一列都按照从上到下 非递减 的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该…

2022快手电商短视频运营白皮书:Q2对比Q1GMV总值增长率达12%

1、2022快手电商短视频运营白皮书:Q2对比Q1GMV总值增长率达12%新榜讯 12月2日,快手电商发布《2022快手电商短视频运营白皮书》。白皮书数据显示,2022年4-6月,随着平台商家对短视频渠道的认知提升,挂车短视频生产量不断…

【人脸识别】MVFace:一个优于CosFace和ArcFace的人脸识别损失

论文题目:《Mis-classifified Vector Guided Softmax Loss for Face Recognition》 论文地址:https://arxiv.org/pdf/1912.00833v1.pdf 代码地址:http://www.cbsr.ia.ac.cn/users/xiaobowang/ 1.背景 迄今为止,提出了几种基于mar…

Hashing to elliptic curve算法改进

1. 引言 前序博客有: ECDSA VS Schnorr signature VS BLS signature 第3节“BLS签名” 私钥pkpkpk,对应的公钥为PpkGPpk\times GPpkG。待签名消息mmm。 BLS signature的签名流程为: 1)通过H(m)H(m)H(m)将消息mmm映射为point o…

计算机毕业论文java毕业设计选题源代码javaweb企业门户网站官网

💖💖更多项目资源,最下方联系我们✨✨✨✨✨✨ 目录 Java项目介绍 资料获取 Java项目介绍 《javaweb企业门户网站》该项目采用技术:jsp servlet mysqljdbccssjsjQuery等相关技术,项目含有源码、文档、配套开发软件…

[hadoop全分布部署]安装Hadoop、配置Hadoop 配置文件②

👨‍🎓👨‍🎓博主:发量不足 个人简介:耐心,自信来源于你强大的思想和知识基础!! 📑📑本期更新内容:安装Hadoop、配置Hadoop 配置文件…

手把手教你SSM整合(包教包会)

SSM整合 步骤&#xff08;七步&#xff09; 新建maven项目&#xff0c;添加依赖 可以选择根据模版创建maven项目 <dependencies><!--spring-webmvc--><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc&…

OpenCV入门(C++/Python)- 使用OpenCV调整尺寸大小(三)

使用OpenCV调整图像大小。要调整图像的大小&#xff0c;可以根据每个轴&#xff08;高度和宽度&#xff09;进行缩放&#xff0c;考虑指定的缩放因素&#xff0c;或者只需设置所需的高度和宽度。 调整图像大小时&#xff1a; 如果想在调整后的图像中保持相同的宽高比&#xf…

Redis 7.0 源码调试环境搭建与源码导读技巧

天下武功&#xff0c;无坚不摧&#xff0c;唯快不破&#xff01;我的名字叫 Redis&#xff0c;全称是 Remote Dictionary Server。 有人说&#xff0c;组 CP&#xff0c;除了要了解她外&#xff0c;还要给机会让她了解你。 那么&#xff0c;作为开发工程师的你&#xff0c;是否…

物联网设备带你进入物联网时代,轻松实现数据互联互通

物联网这一词&#xff0c;我们在生活和工作中时常会接触到&#xff0c;但如果要问大家什么是物联网设备&#xff1f;物联网设备有哪些&#xff1f;很多人应该没有一个详细的概念。那么什么是物联网设备呢&#xff1f;物联网设备是指能够连接无线网络&#xff0c;并具有数据传输…

【电力系统经济调度】多元宇宙算法求解电力系统多目标优化问题(Matlab实现)【电气期刊论文复现与算例创新】

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️❤️&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f4dd;目前更新&#xff1a;&#x1f31f;&#x1f31f;&#x1f31f;电力系统相关知识&#xff0c;期刊论文&…