FreeBuf|管中窥豹之工控设备解密( 二 )
文章图片
4.在程序块的声明部分 , TITLE行下面的一行中输入”KNOW_HOW_PROTECT”;
文章图片
5.存盘并编译该源文件(选择菜单文件—>保存 , 文件—>编译);
3.3欧姆龙PLC加密欧姆龙小型PLC主要采用两种加密方式
方式一:使用PLC编程软件 , 对PLC进行加密 , 如图3-2所示 。
文章图片
方式二:通过在程序的最前边添加加密功能块来进行加密:
文章图片
四、工业设备加密及解密技术发展情况从古至今 , 矛与盾都是处于不断进化的过程 , 二战时期的坦克大战 , 轴心国与同盟国之间的较量 , 随着时间的推移 , 炮弹穿深与装甲厚度不断上升 。 同样PLC的加解密技术也是处于不断进化的过程 。 从最初通过串口监视软件轻易获取明文密码 , 到后来的拆芯片解密 。 总的来说 , 工控类设备(主要是PLC)大致经历了三个大的阶段:
4.1第一代加密技术明码原始时期 。 比如早期三菱FX的产品全部是明码ASCII码显示 , 可以通过串口监控轻易获取 。 像台达、欧姆龙、AB等部分型号存在类似问题 。
4.2第二代加密技术第二个阶段为密码逻辑运算时代 。 比如西门子S7-200CN系列 , 采用隔位异或法加密 , 松下FPX系列采用移位法加密 , 松下GT屏采用加密钥匙法 , 8位密码需要逐个跟这个钥匙运算 , 才能得到真正的密码 , 信捷的也采用异或等组合逻辑运算法 。 但是再怎么组合 , 再怎么复杂 , 细心钻研的发烧友总能找到算法 , 把密码逆运算还原出来 。
4.3第三代加密技术第三代加密 , 如西门子SMART,S7-1200,S7-1500,施耐德最高级别加密 , 松下FP7和FPXH系列的32位加密等等 , 还有就是针对芯片的防护 , 全部都是这种第三代加密 。
例如西门子采用四级密码 , 如果设备商把PLC的密码设置为4级 , 就算是有正确密码也无法进入PLC读取程序 。 而欧姆龙则采用 , 限时限次的方法 , 即在2个小时内密码只能试5次 , 如果第5次仍然密码不正确 , 只能等2个小时后再试 。
有些只能通过物理拆除的方式进行芯片解密 , 或者无解 , 大大提高了设备的安全性 。
4.4解密技术我整理了公开的工控设备解密方法 , 大致分以下几类 ,
方法一:最容易实现的一种 , 模拟上位机软件操控 , 使用监视软件获取流量数据 , 解密者拦截到这段数据并经过简单的翻译就能够得到密码 。 (如果数据通信采用密文 , 经过多次尝试得到密文的加密规则 , 从而得到密码) 。
文章图片
举个栗子 , 这是西门子s7-200较早版本的有兴趣的可以试一试
文章图片
加密算法
文章图片
文章图片
文章图片
方法二:通过枚举法、黑盒试探等方法进行解密 , 这种方法的优点是可以解决大部分密码 , 但是缺点是耗时比较长 , 对解密者的技术要求比较高 。 代表软件有俄罗斯的暴力破解软件 。
推荐阅读
- FreeBuf|Deceptikons:潜伏十年的“黑客雇佣军团”浮出水面
- 工控网|提速10倍!ABB全新机器人3D检测单元让质量控制检测简便高效
- 一郎科技|华北工控推出语音识别系统方案助力智能家居3.0,精智生活崛起
- 孤独酒馆|工控AI盒子为自助点餐、自助收银、自助售货等场景赋能
- FreeBuf|HTTP/3协议的安全优势与挑战
- FreeBuf|卫星黑客利器:OpenATS新版本更新
- FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本
- FreeBuf|用BurpSuit的Burpy插件搞定WEB端中的JS加密算法
- FreeBuf|工控渗透框架:PLC密码检测
- FreeBuf|BBPress未经身份验证的提权漏洞分析