注册名:

密码:

个人注册

企业注册

商务申请

商务管理平台

企业管理平台

个人管理平台

我的工控博客

中国工控网www.chinakong.com

首页 | 新闻中心 | 工控论坛 | 经验视点 | 工控商务 | 电气手册 | 工控博客 | 招聘求职 | 网上调查 | 企业中心 | 供求信息 | 资料中心 | 工控书店

所在位置:工控论坛 -- PLC论坛 -- PLC论坛(非专题) -- PLC基础

中国工控网搜索:

 登陆:密码:  注册  密码

搜索:

发表人:译码者 发表时间:2022/11/25 13:30:00  

 

 本栏论题: 西门子plc解密300/400解密方法研究  [620]

    西门子plc解密300/400解密方法研究
    对于S7-300CPU密码的破解有好几种方法,一种是用读卡器加S7ImgWR/RD软件,还有一种是直接用MMC卡解密软件。但是,今天重点来说一说用TIA Portal+S7Client暴力破解西门子S7-300/400密码。目前实验使用的是Siemens S7-300PLC,CPU型号为315-2 PN/DP,破解使用到的工具如下表:
    TIA Portal V13 PLC编程工具
    s7clientdemo.exe S7-300辅助查看cpu密码设置状态工具
    Wireshark 用来截取PLC和上位机通信的报文
    Siemens系列PLC的密码,通常有4种设置状态,分别为:完全权限,只读权限,最低权限,不允许上传。
    由于操作员的疏忽或者调试方便,通常会不给PLC设置密码,或者只设置简单密码,接下来我会展示这样做的危险性。
    本文将从PLC密码加密方式开始谈起,之后会讨论PLC密码被暴力破解的可能性,从而得出保证PLC密码安全的方式。
   
    上图展示了S7-300的外形,通常是通过Step7或者博图(TIA)软件去对PLC进行编程及设置。在这里速捷工控plc解密使用博图来给PLC设置密码。
    三、算法加密
   
    比如设置密码状态为只读,密码为:123456,然后重新通过上位机和PLC建立连接,验证密码的时候,截取到如下报文:
   
    密码验证时候截取到的报文
    分析得出规律:
    S7-300用的是可逆加密算法,密码长度最多为8位,通过可逆算法转换成8个16进制数字通过S7协议发送给PLC。
    1、将不超过8位的字符串转换成8个16进制数字:
    2、opData数组元素默认都是0x20
    如果密码为123456,可逆算法的代码如下:
   
    程序运行后得到的Pwd数组如下所示,和速捷工控plc解密截取到的报文一致。从而说明速捷工控plc解密找到的算法是正确的。
   
    当发送了转换后的密码后,会得到PLC返回的报文,返回的报文中,有对发送的密码正确性验证的结果,如果验证通过,就会将错误码那几个位置位为0x0000,如果密码不正确,就会是别的错误码。
    四、暴力破解
    知道了密码的加密算法之后,速捷工控plc解密就可以生成弱口令字典,然后通过加密算法对弱口令进行加密,使用加密后的密码字典与PLC进行通信,如果破解成功,返回明文密码。
   
   
    五、存储块解密
    知道了密码的加密过程,和密码的加密算法,那么CPU密码是怎样存储在PLC中呢?必须通过暴力破解的方式,才能获取未知设备的CPU密码吗?
    速捷工控plc解密研究S7-300 CPU密码得到以下成果:
    1、CPU密码保存在SDB0块中
    2、S7-300 CPU密码在块中的保存方式
    以下3个图分别为未加密,只读权限,无读写权限的SDB0块的数据。在只读权限和无读写权限状态时,CPU密码均为000000。
   
   
   
    经过研究得出以下结论:
    红色方框内为加密后的密码,蓝色方框内的数字02代表只读权限,03代表不可读写权限。而第一张图中,因为没有设置密码,所以缺少这一部分内容。
    3、加密算法:
    速捷工控plc解密找出了加密算法,算法和上文中算法类似但略有不同,同样也是可逆的加密算法,具体加密算法程序如下:
   
    通过以上可逆算法,速捷工控plc解密可以断言,只要可以读取SDB0块,就可以直接根据块信息,获取明文密码,根本不需要暴力破解。在获取到明文密码后,通过发送密码校验的报文,就拥有下载的权限,进而可以直接改写密码为自己想要的设置,设置可以更改CPU的密码设置等级(只读或者无读写权限)。因此,在设置CPU密码权限的时候,速捷工控plc解密推荐设置为不可读写的状态,加大获取到SDB0块的难度,从而保护速捷工控plc解密设置的密码。
    六、保护方式及建议
    通过以上示例,速捷工控plc解密知晓了S7-300的CPU加密方式,并且给出了暴力破解的思路。反过来,速捷工控plc解密可以通过暴力破解的思路,加固速捷工控plc解密的PLC,让PLC更不容易被攻破,速捷工控plc解密提出以下建议:
    1、PLC一定要设置密码,并且设置为不可读不可写状态,尽可能多的保护您的程序。
    2、在进行上装和下装的时候,电脑最好直接与PLC相连,避免透过中间人或者交换机等方式获取到通信报文,使攻击者有机可乘。
    3、不要设置弱密码,尽量设置复杂密码,这样可以使得暴力破解的时间变得更长,被发现的几率也就更大。
    4、不要将PLC暴露在公网上。速捷工控plc解密晋江速捷自动化
   
   

以下是关于《西门子plc解密300/400解密方法研究》论题的回复(共1篇)

回复人:jake1wang 

 回复时间:2022/12/10 10:08:00

支持(79) | 反对(211)

 

    技术大牛,六六六六

如果要回复本栏论题,请首先中国工控网www.chinakong.com

·如果你已经是中国工控网www.chinakong.com成员,请直接登录。

·如果你还不是中国工控网www.chinakong.com成员,请首先注册,注册为免费!

注册名:

密  码:

           注册中国工控网www.chinakong.com
           忘记密码

关闭该窗口

关于我们     免责声明     服务项目     广告联系     友情链接     联系方式     意见反馈     设为首页     加入收藏

 ©2023-2025 中国工控网(www.chinakong.com) 版权所有 豫ICP备17046657号

管理员信箱:chinakong98@163.com  服务热线:13525974529

洛阳博德工控自动化技术有限公司

中国    洛阳