松下plc解密教程(松下plc解密的方法)

科技资讯 娇娇 2023-01-15 08:14:58 22次浏览 0个评论 扫描二维码

松下 plc 解密教程(松下 plc 解密的方法)(1)

起因是为了研究一种叫桥切的石材机械,通过朋友找到一家石材厂,有这种机械,于是把电脑带上,赶了一个小时路到了那家石材厂,到了才发现人家采用的是 FPX 的 PLC,而且还加密呢。无功而返,所以才萌发起要解 FPX。
 为了研究松下PLC FPX 解密,我也真是达到如痴如醉的程度,从没接触过 FPX 到现在对 FPX 了如指掌,全是因为热衷于解密,为了解密,首先就是要找相关资料,学习研究资料,《fp-x 用户册》,《fpx-l 用户手册》,《Control Fpwin GR 操作指南》,《FP 系列编程手册》,《fp 编程手册》附加版,都要全面阅读反复研究,还有反复参阅《松下 FP 通迅协仪》,上网寻找专家论文,找到《松下 PC-link 网络与 PC 通讯问题》等文章反复拜读。所以使我从一个对松下 PLC 一点都没有了解,到非常熟悉,其 I/O 分配,继电器、存储器区域分配,指令系统都有了全面的了解。
 为了研究 FPX 解密,认真学习松下 FP 通迅协议 MEWTOCL 协议,反复监控协议内容,上下载程序的过程,比较内存区域数据,从而使我对 FPX 的数据存储结构有了全面的了解,包括程序上下载的协议等隐含的协议,在松下 FP 通迅协议中没公布的协议,都有了深入的了解,比如松下 PLC 上载程序是采用%EE#010 命令,PLC 下载程序是采用%EE#020 命令。这些命令的用法以及回复数据的意义都搞得一清二楚。
 通过反复下载上载程序,比对密码的密文,下了大量的数据,明文-密文对比,终于搞清楚密文算法,找到密文就能算出密码。比如在 PLC 密码寄存器里存的数据是 20 DF 20 DF 20 DF 20 DF,那么对应的密码就是 77777777,密码密文是 38 CB 30 D3 28 DB 20 E3 那么对应的密码就是 12345678。
 关于禁止上载,FPX,只要设置禁止上载,即使不加密,也不能上载程序,但是反复比较存储在 PLC 内部的数据,终于发现,禁止上载,存储在 PLC 内部的程序并没有加密,存储的位置也没有变化,这样只要找到合适的方法,就能上载到程序。
 通过一个多月的努力,终于突破了种种障碍,解决了以上两个问题,密文算法,解决禁止上载的方法,上载程序、注释正常,只要 PLC 里面存有注释,注释也能上载上来, 所有内行的 PLC 编程者都了解,一个程序的可读性与否的关键就是注释,没有注释的程序简直就是天书,FPX 经过解密后,注释是正常的,还有一点因为,这个我对解密的研究是基于对 PLC 的研究开始的,对 PLC 的内存、编程,特殊继电器、特珠寄存器、数据寄存器等的研究,所以解密后,不会破坏,内部存储的数据,包括一些保存在 PLC 内部的停电保持位,数据,配方,工艺参数等都完好无损。
 有一种网上下载个软件,或那里偷人家的软件,没有核心技术的解密,是只知其然不知其所以然的解密,在解密时就不可能注意这么多细节了,关键的东西也不会给你解释的,一不小心还会破坏掉程序,或数据。特别是数据,往往被忽略,有的人只知道拿到了程序就万事大吉了,其实不然,有时数据也是很关键的,下面我就花点时间来罗嗦下 PLC 的数据,也是希望看了我这篇文章的人,能看到有用的东西,那怕是你是高手,也能重温一下这方面内容。
 在 PLC 有用户手册和编程手册里,一定会有这样的章节,用户手册中有一章节是《性能规格》,编程手册里有一章节是《继电器,储存器一览表》或者称为《软元件一览表》,里面就会介绍各自 PLC 的输入输出的点数、程序容量、内外部继电器的编号、数据存储器分类、区域,以及哪些是停电保持,哪些是停电不保持的。哪些是保存在内部 FLASH ROM ,哪些是靠电池保存数据的,这些内容,这些章节一定要反复研究,编程者往往在这里面做文章。举个例子,比如 FPX 的内部继电器 R2480 是断电保持继电器,程序里面把 R2480 作为自动的条件之一,在程序第一次输入的时候,要人为的使 R2480 置 ON,这样程序才能正常工作,再比如,DT32710 数据寄存器存有机器设备工作循环次数的参数,在程序第一次输入的时候,要人为的设置,如果你拷贝程序或解密读出程序,没有把断电保持的继电器状态、数据寄存器数据一起拷贝,你的程序也是不能正常运行的。所以解密也是要了解该 PLC 的这些继电器,寄存器的作用,以及如何进行备份,拷贝,保护不在解密时被清除。在如在 PLC 操作说明书中,虽然是中文的,可是有些是从外文翻译过来的,比较拗口。
单单靠这些文字,你是不容易理解其含义的,都是要反复实验才能得到正确结论的。
 所以,没有研究,就不要轻言解密,没有一定的软硬件基础知识,解密也是不彻底的。我并不是为了解密而解密,在学习一种机型的解密过程中,我能从中学到相关的知识,能从中了解 PLC 的操作、编程方面的知识,还有解出密来的那种兴奋才是我乐此不疲的动力。

性痴,则其志凝:故书痴者文必工,艺痴者技必良。——世之落拓而无成者,皆自谓不痴者也。

 这句子的意思是说:个性一往情深,则其心志专一:因此专心在书籍上的人,文章必定写得好;专心在工艺上的人,技术必定精良。——人世间那些碌碌无为的人,都说自己不是书呆子一类的人。

 起因是为了研究一种叫桥切的石材机械,通过朋友找到一家石材厂,有这种机械,于是把电脑带上,赶了一个小时路到了那家石材厂,到了才发现人家采用的是 FPX 的 PLC,而且还加密呢。无功而返,所以才萌发起要解 FPX。

 为了研究松下 PLC FPX 解密,我也真是达到如痴如醉的程度,从没接触过 FPX 到现在对 FPX 了如指掌,全是因为热衷于解密,为了解密,首先就是要找相关资料,学习研究资料,《fp-x 用户册》,《fpx-l 用户手册》,《Control Fpwin GR 操作指南》,《FP 系列编程手册》,《fp 编程手册》附加版,都要全面阅读反复研究,还有反复参阅《松下 FP 通迅协仪》,上网寻找专家论文,找到《松下 PC-link 网络与 PC 通讯问题》等文章反复拜读。所以使我从一个对松下 PLC 一点都没有了解,到非常熟悉,其 I/O 分配,继电器、存储器区域分配,指令系统都有了全面的了解。

 为了研究 FPX 解密,认真学习松下 FP 通迅协议 MEWTOCL 协议,反复监控协议内容,上下载程序的过程,比较内存区域数据,从而使我对 FPX 的数据存储结构有了全面的了解,包括程序上下载的协议等隐含的协议,在松下 FP 通迅协议中没公布的协议,都有了深入的了解,比如松下 PLC 上载程序是采用%EE#010 命令,PLC 下载程序是采用%EE#020 命令。这些命令的用法以及回复数据的意义都搞得一清二楚。

 通过反复下载上载程序,比对密码的密文,下了大量的数据,明文-密文对比,终于搞清楚密文算法,找到密文就能算出密码。比如在 PLC 密码寄存器里存的数据是 20 DF 20 DF 20 DF 20 DF,那么对应的密码就是 77777777,密码密文是 38 CB 30 D3 28 DB 20 E3 那么对应的密码就是 12345678。

 关于禁止上载,FPX,只要设置禁止上载,即使不加密,也不能上载程序,但是反复比较存储在 PLC 内部的数据,终于发现,禁止上载,存储在 PLC 内部的程序并没有加密,存储的位置也没有变化,这样只要找到合适的方法,就能上载到程序。

 通过一个多月的努力,终于突破了种种障碍,解决了以上两个问题,密文算法,解决禁止上载的方法,上载程序、注释正常,只要 PLC 里面存有注释,注释也能上载上来, 所有内行的 PLC 编程者都了解,一个程序的可读性与否的关键就是注释,没有注释的程序简直就是天书,FPX 经过解密后,注释是正常的,还有一点因为,这个我对解密的研究是基于对 PLC 的研究开始的,对 PLC 的内存、编程,特殊继电器、特珠寄存器、数据寄存器等的研究,所以解密后,不会破坏,内部存储的数据,包括一些保存在 PLC 内部的停电保持位,数据,配方,工艺参数等都完好无损。

 有一种网上下载个软件,或那里偷人家的软件,没有核心技术的解密,是只知其然不知其所以然的解密,在解密时就不可能注意这么多细节了,关键的东西也不会给你解释的,一不小心还会破坏掉程序,或数据。特别是数据,往往被忽略,有的人只知道拿到了程序就万事大吉了,其实不然,有时数据也是很关键的,下面我就花点时间来罗嗦下 PLC 的数据,也是希望看了我这篇文章的人,能看到有用的东西,那怕是你是高手,也能重温一下这方面内容。

 在 PLC 有用户手册和编程手册里,一定会有这样的章节,用户手册中有一章节是《性能规格》,编程手册里有一章节是《继电器,储存器一览表》或者称为《软元件一览表》,里面就会介绍各自 PLC 的输入输出的点数、程序容量、内外部继电器的编号、数据存储器分类、区域,以及哪些是停电保持,哪些是停电不保持的。哪些是保存在内部 FLASH ROM ,哪些是靠电池保存数据的,这些内容,这些章节一定要反复研究,编程者往往在这里面做文章。举个例子,比如 FPX 的内部继电器 R2480 是断电保持继电器,程序里面把 R2480 作为自动的条件之一,在程序第一次输入的时候,要人为的使 R2480 置 ON,这样程序才能正常工作,再比如,DT32710 数据寄存器存有机器设备工作循环次数的参数,在程序第一次输入的时候,要人为的设置,如果你拷贝程序或解密读出程序,没有把断电保持的继电器状态、数据寄存器数据一起拷贝,你的程序也是不能正常运行的。所以解密也是要了解该 PLC 的这些继电器,寄存器的作用,以及如何进行备份,拷贝,保护不在解密时被清除。在如在 PLC 操作说明书中,虽然是中文的,可是有些是从外文翻译过来的,比较拗口。比如如下这一段:

单单靠这些文字,你是不容易理解其含义的,都是要反复实验才能得到正确结论的。

 所以,没有研究,就不要轻言解密,没有一定的软硬件基础知识,解密也是不彻底的。我并不是为了解密而解密,在学习一种机型的解密过程中,我能从中学到相关的知识,能从中了解 PLC 的操作、编程方面的知识,还有解出密来的那种兴奋才是我乐此不疲的动力。


不思进取 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:松下plc解密教程(松下plc解密的方法)
喜欢 (0)
[]
分享 (0)

您必须 登录 才能发表评论!