搜索
bottom↓
回复: 30

【求助】串口数据解密

[复制链接]

出0入4汤圆

发表于 2020-1-3 11:18:29 | 显示全部楼层 |阅读模式
本帖最后由 zqf441775525 于 2020-1-3 11:26 编辑

如题,小弟正在破解某设备(虽略猥琐,但无可奈何),传感器为温度传感器,截取到传感器返回的485数据如下:
C1 04 02 A8 02 6A E9
C1 04 02 A8 02 6A E9
C1 04 75 F3 37 18 EB
C1 04 7B AF EF 8D 3E
C1 04 84 F5 50 C8 A7
C1 04 96 1B 49 5D DB
C1 04 CC FA F8 A4 5A
C1 04 0E 4B 19 9A 63
C1 04 7D 02 25 54 49
C1 04 CC FA F8 A4 5A
C1 04 31 EC 86 B2 07
C1 04 1A 7B 44 11 D9
C1 04 5E 4A 66 B4 82
C1 04 AF 37 30 30 B3
C1 04 97 95 91 F6 63
C1 04 31 EC 86 B2 07
C1 04 A0 6A 8F 52 81
C1 04 66 F5 4D 07 07
C1 04 F5 F8 A2 8E 03
C1 04 A2 B3 BE 74 06
C1 04 7F 5A 34 4C 67
C1 04 D3 9F 79 22 D2
C1 04 B6 A1 25 45 35
C1 04 D7 2D EB 35 63
C1 04 E8 D2 FB 9C BC
C1 04 A3 91 4F 81 44
C1 04 D9 73 AB 5D C5
C1 04 CC 68 0F 3C 19
C1 04 86 AE 48 AA 59
C1 04 AA 19 32 6A 66
C1 04 5E 4A 66 B4 82
C1 04 AF 37 30 30 B3
C1 04 97 95 91 F6 63
C1 04 31 EC 86 B2 07
C1 04 2F 31 DF 23 A9
C1 04 1A 21 3E B7 EB
C1 04 5C 29 F9 6F 68
C1 04 E5 C9 8D 85 B7
C1 04 A2 B3 BE 74 06
C1 04 6F 72 6C 13 75

目前已经验证:C1表示传感器地址,04表示后面的数据场字节数,最后一个字节是CRC8校验。
现在卡在中间4个字节了,这么多中间的4个字节表示的数据大约是18.0 - 19.0(摄氏度)之间(也有可能是180-190之间)。
有没有做过数据加密解密的大神帮忙看下,顺便说说有哪些加解密算法可以4个字节明文+某一个秘钥可以产生4字节密文这种加密算法。

多谢!

补充一下:上位机是我用串口助手模拟的,一直发的 01 5E(其中5E是01的CRC8校验,这个比较好猜),传感器温度如果没有变化,就给我回01 5E ,如果有变化,就回复上面的数据,所以上面的数据是包含实际温度值的。传感器的显示屏上显示的温度是18.几度。

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2020-1-3 11:21:54 | 显示全部楼层
从上位机入手

出0入91汤圆

发表于 2020-1-3 11:23:03 | 显示全部楼层
发虚拟数据给上位机  才能知道关系呀

出0入4汤圆

 楼主| 发表于 2020-1-3 11:27:10 | 显示全部楼层

补充一下:上位机是我用串口助手模拟的,一直发的 01 5E(其中5E是01的CRC8校验,这个比较好猜),传感器温度如果没有变化,就给我回01 5E ,如果有变化,就回复上面的数据,所以上面的数据是包含实际温度值的。传感器的显示屏上显示的温度是18.几度。

出0入4汤圆

 楼主| 发表于 2020-1-3 11:30:11 | 显示全部楼层
ackyee 发表于 2020-1-3 11:23
发虚拟数据给上位机  才能知道关系呀

因为实际数据变化很小,但截取到的4字节数据变化很大,所以中间4个字节的数据肯定是加密了的。您说的发虚拟数据给上位机,是比如发C1 04 00 00 00 00 CRC这种的?
这个还得有机会去客户那儿学习一下上位机的操作,目前上位机还显示不出来下位机的数据。

出50入58汤圆

发表于 2020-1-3 11:49:17 来自手机 | 显示全部楼层
破解别人产品在本坛是被鄙视的,看来你是要替换别人的产品吧

出0入0汤圆

发表于 2020-1-3 11:50:22 | 显示全部楼层
感觉是浮点数

出0入0汤圆

发表于 2020-1-3 11:52:36 | 显示全部楼层
有点先modbus rtu

出0入0汤圆

发表于 2020-1-3 11:54:46 | 显示全部楼层
本帖最后由 qq78929709 于 2020-1-3 11:57 编辑

楼主,赏金都不给几颗就想空手套白狼吗?

出50入58汤圆

发表于 2020-1-3 11:55:24 来自手机 | 显示全部楼层
简单的加密,字节交换,取反与密钥异或等等

出0入90汤圆

发表于 2020-1-3 12:08:18 | 显示全部楼层
说不定就是个4字节的浮点数,然后楼主想复杂了。

出1315入193汤圆

发表于 2020-1-3 12:46:46 | 显示全部楼层
加密的  浮点数--HEX  明显不是楼主给的数值范围

出0入4汤圆

 楼主| 发表于 2020-1-3 13:13:38 | 显示全部楼层
鲜衣怒马 发表于 2020-1-3 11:49
破解别人产品在本坛是被鄙视的,看来你是要替换别人的产品吧

也不能算是,是之前大家一直都是用的4-20mA模拟量,所有的做传感器的厂家都可以接到系统上去。后来这个做系统的厂家为了垄断,卖他们自己的传感器,直接全部搞成485加密的了,导致我们这些做传感器的小厂家都GG了。

出0入4汤圆

 楼主| 发表于 2020-1-3 13:15:13 | 显示全部楼层
qq78929709 发表于 2020-1-3 11:54
楼主,赏金都不给几颗就想空手套白狼吗?

我所有的莫元

出0入4汤圆

发表于 2020-1-3 13:21:51 | 显示全部楼层
zqf441775525 发表于 2020-1-3 13:13
也不能算是,是之前大家一直都是用的4-20mA模拟量,所有的做传感器的厂家都可以接到系统上去。后来这个做 ...

你要替换还不简单么? 你把他的传感器,每间隔0.1°取一个值,整个测温范围取完也就是几百组数据而已,然后做成一个表格。 你的设备测量出温度以后,查找对应的温度数据发送就好了,根本不用管他的数据啥意义。
例如他的传感器18.0摄氏度的时候发送值是C1 04 02 A8 02 6A E9   ,那么你的传感器测量到温度18度的时候也发送C1 04 02 A8 02 6A E9 就好了。

出0入0汤圆

发表于 2020-1-3 13:24:26 | 显示全部楼层
破解芯片,直接分析固件。如果上位机里面有显示温度的,那也肯定存在解密的算法,直接分析就好了。by the way,  楼上的方法也不错。

出1315入193汤圆

发表于 2020-1-3 13:34:50 | 显示全部楼层
wajlh 发表于 2020-1-3 13:21
你要替换还不简单么? 你把他的传感器,每间隔0.1°取一个值,整个测温范围取完也就是几百组数据而已,然 ...

顶你到二楼  结贴

出0入4汤圆

 楼主| 发表于 2020-1-3 14:07:01 | 显示全部楼层
wajlh 发表于 2020-1-3 13:21
你要替换还不简单么? 你把他的传感器,每间隔0.1°取一个值,整个测温范围取完也就是几百组数据而已,然 ...

这个是一个不错的暴力办法,但是我们是做料位计的(数据应该可以通用),有将近10000个数(100米量程,0.01米分辨率),这样做工作量太大了。

出0入4汤圆

 楼主| 发表于 2020-1-3 14:08:31 | 显示全部楼层
wajlh 发表于 2020-1-3 13:21
你要替换还不简单么? 你把他的传感器,每间隔0.1°取一个值,整个测温范围取完也就是几百组数据而已,然 ...

如果这个方案可行,请准备接收我全部的莫元!

出0入0汤圆

发表于 2020-1-3 14:21:08 | 显示全部楼层
温度传感器用的什么芯片?破解  然后分析出计算公式。

出0入0汤圆

发表于 2020-1-3 14:28:18 | 显示全部楼层
zqf441775525 发表于 2020-1-3 11:27
补充一下:上位机是我用串口助手模拟的,一直发的 01 5E(其中5E是01的CRC8校验,这个比较好猜),传感器 ...

合格的二楼,可惜楼主没在对应的频道上

出0入0汤圆

发表于 2020-1-3 15:13:51 | 显示全部楼层
说不定做加密的就在论坛里

出0入442汤圆

发表于 2020-1-3 15:27:47 来自手机 | 显示全部楼层
lianglee 发表于 2020-1-3 15:19
我出在的通讯加密都加入随机数了,发送方发一个随机数,接收方由随机数产生加密数据后回送。我让你慢慢猜。 ...

哈哈,加密狗?我都在fpga里面做了个硬件随机数发生器,全程随机,没有正确的证书压根不要想了。

出0入0汤圆

发表于 2020-1-3 15:29:20 | 显示全部楼层
有对应的数据表格才可以找之间的关系

出0入0汤圆

发表于 2020-1-3 15:51:27 | 显示全部楼层
如果可以尝试直接曲线拟合,如果加密简单的话,有些还是可以试出来的

出0入4汤圆

 楼主| 发表于 2020-1-3 16:05:31 | 显示全部楼层
lianglee 发表于 2020-1-3 15:19
我出在的通讯加密都加入随机数了,发送方发一个随机数,接收方由随机数产生加密数据后回送。我让你慢慢猜。 ...

最怕的是2字节有效数+2字节随机数,然后做成4字节,再把这4字节加密传输,想都没地儿想去。

出0入0汤圆

发表于 2020-1-3 18:42:02 | 显示全部楼层
如果不想明文传输,我就是加随机数加密之后发送
这样传输相同的参数每送发送的码都不是一样的

出0入8汤圆

发表于 2020-1-4 10:30:41 来自手机 | 显示全部楼层
zqf441775525 发表于 2020-1-3 16:05
最怕的是2字节有效数+2字节随机数,然后做成4字节,再把这4字节加密传输,想都没地儿想去。 ...

还是有办法,比如一共6万个状态,把他们的密文全部抓到,然后直接发这6万个状态对应的密文
专业说法叫做:重放攻击

出0入0汤圆

发表于 2020-1-4 10:54:08 | 显示全部楼层
canspider 发表于 2020-1-4 10:30
还是有办法,比如一共6万个状态,把他们的密文全部抓到,然后直接发这6万个状态对应的密文
专业说法叫做 ...

只要随机数够大,重放攻击就没辙了

出0入0汤圆

发表于 2020-1-5 00:07:41 来自手机 | 显示全部楼层
zqf441775525 发表于 2020-1-3 18:07
这个是一个不错的暴力办法,但是我们是做料位计的(数据应该可以通用),有将近10000个数(100米量程,0. ...

四位花不了多少时间,慢慢爆力,解出来,就豁然开朗了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-17 05:04

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表