打印
[STM32F1]

你辛苦做出来的id软件加密就这么轻松被改了

[复制链接]
楼主: meijc119
手机看帖
扫描二维码
随时随地手机跟帖
41
nstel| | 2019-11-6 23:22 | 只看该作者 回帖奖励 |倒序浏览
icecut 发表于 2019-11-6 22:23
做50年也成不了博士,你知道人家**比速度,都是秒级的么?也就是一个可执行文件拿过来,10s之内就结束战斗 ...

博士?哈哈!我当然成不了博士。因为我不会造假抄袭。

使用特权

评论回复
42
yjmwxwx| | 2019-11-6 23:35 | 只看该作者
本帖最后由 yjmwxwx 于 2020-1-16 21:05 编辑
nstel 发表于 2019-11-5 17:01
不等字长的二进制码,反汇编出来的,就不是原来的语句了。完全是谁都看不懂的天书,怎么去修改? ...

这样不容易被人跟踪到。


使用特权

评论回复
43
nstel| | 2019-11-7 07:04 | 只看该作者
yjmwxwx 发表于 2019-11-6 23:35
我给你演示下吧,反正我不是靠这东西挣钱的。
比如下面的指令
把0x8000左移12位是0x8000000

反汇编出来的,不是这个语句了。LDR可能是被反成了ADDR了。你怎么去跟踪?
你单片机都不会开发,还谈什么反编译?

使用特权

评论回复
44
yjmwxwx| | 2019-11-7 07:54 | 只看该作者
nstel 发表于 2019-11-7 07:04
反汇编出来的,不是这个语句了。LDR可能是被反成了ADDR了。你怎么去跟踪?
你单片机都不会开发,还谈什么 ...

我都说这么明白了,你还看不懂啊,不用反汇编插上JLINK一条命令就跟踪到了,还是那句话你去试验下吧,我说的都是经过我验证的经验,我不像别人那样学会点东西就藏着就怕别人学去,我不可能什么都给你手把手的演示,你想搞自己研究下吧,ARM逆向没什么门槛的,很多人都在做你就看不到?
我哪里说我不会单片机了,我只是没用C写过STM32的程序,我写的程序每一个函数都是自己用汇编写的,一点别人的代码都不用。

使用特权

评论回复
45
nstel| | 2019-11-7 09:14 | 只看该作者
yjmwxwx 发表于 2019-11-7 07:54
我都说这么明白了,你还看不懂啊,不用反汇编插上JLINK一条命令就跟踪到了,还是那句话你去试验下吧,我 ...

请问,你的二进制码文件,在什么软件下可以调试?
KEIL MDK不行,IAR不行。你试怎么让二进制码运行起来的?

使用特权

评论回复
46
nstel| | 2019-11-7 09:14 | 只看该作者
yjmwxwx 发表于 2019-11-7 07:54
我都说这么明白了,你还看不懂啊,不用反汇编插上JLINK一条命令就跟踪到了,还是那句话你去试验下吧,我 ...

请问,你的二进制码文件,在什么软件下可以调试?
KEIL MDK不行,IAR不行。你是怎么让二进制码运行起来的?

使用特权

评论回复
评论
戈卫东 2019-11-7 10:55 回复TA
可以“Attatch to running target”的,基本上只要代码读出来了,你就挣扎不了几下了。 
47
yjmwxwx| | 2019-11-7 09:37 | 只看该作者
本帖最后由 yjmwxwx 于 2020-1-16 21:05 编辑
nstel 发表于 2019-11-7 09:14
请问,你的二进制码文件,在什么软件下可以调试?
KEIL MDK不行,IAR不行。你是怎么让二进制码运行起来的 ...

不是软件仿真

使用特权

评论回复
48
nstel| | 2019-11-7 10:24 | 只看该作者
yjmwxwx 发表于 2019-11-7 09:37
不是软件仿真,是直接硬件插上JLINK,JLINK官方软件有个命令行调试器。

这样的调试,能不能看明白还是个问题。
即使看明白了。还有一个办法对付:主程序中,加一段擦除程序。当检测到加密位改变了,立即跳转到擦除程序,实现部份或全部擦除,这个时间只有10MS,

使用特权

评论回复
49
戈卫东| | 2019-11-7 10:56 | 只看该作者
MCU只要代码读出来了,基本上就挣扎不了了。

使用特权

评论回复
评论
meijc119 2019-11-7 11:39 回复TA
如果直接出现id地址,500就被人改了,另外一种需要花5000,加难也就是几分钟就可以了,为什么不让破解的人付出多一点代价 
50
nstel| | 2019-11-7 11:35 | 只看该作者
戈卫东 发表于 2019-11-7 10:56
MCU只要代码读出来了,基本上就挣扎不了了。

那就用擦除程序对付。只要检测到加密位改变了,立即擦除。

使用特权

评论回复
51
meijc119|  楼主 | 2019-11-7 11:36 | 只看该作者
只是加大难度,不直接出现id地址,只少解密出来的程序不会一眼就知道有软件加密,而且1分钟就被**了

使用特权

评论回复
52
戈卫东| | 2019-11-7 12:12 | 只看该作者
nstel 发表于 2019-11-7 11:35
那就用擦除程序对付。只要检测到加密位改变了,立即擦除。

只要能读到,什么招都没什么卵用。

使用特权

评论回复
53
lhtzyn777| | 2019-11-7 13:42 | 只看该作者
本帖最后由 lhtzyn777 于 2019-11-7 13:44 编辑

没用,举例,STM32的ID存放的地方是FLASH,直接母片拷贝,ID一样,这有什么用呢?如果这么轻松,谁还用加密芯片呢?我们的产品就是这么被**了。所有ID全部一样。
STM32F103内部就没有OTP工艺,ID本身就在FLASH区域,只是特殊一点,是可以更改的。你用STM32的ID加密,是没有任何用的。

使用特权

评论回复
54
meijc119|  楼主 | 2019-11-7 13:55 | 只看该作者
lhtzyn777 发表于 2019-11-7 13:42
没用,举例,STM32的ID存放的地方是FLASH,直接母片拷贝,ID一样,这有什么用呢?如果这么轻松,谁还用加密 ...

ID是唯一的,是人家改了你的程序,并不是人家的空片改成了你一样的ID,ID所在的区域没有编程器能改的,解密的人没有你说的那么厉害,他们用的跟你一样的编程器

使用特权

评论回复
55
dongliushui| | 2019-11-7 23:22 | 只看该作者
看起来是如此的高大上。

使用特权

评论回复
56
meijc119|  楼主 | 2019-11-8 08:22 | 只看该作者
同样STM8系列读id时不要出现0x4865~0x4870这些id地址,不然也是分分钟被人**,方法一样

使用特权

评论回复
57
bear1| | 2019-11-8 14:59 | 只看该作者
看了半天,得出了结论:废话少说,有什么好的加密芯片推荐?呵呵

使用特权

评论回复
58
bear1| | 2019-11-8 15:18 | 只看该作者
不过,感觉还是xmos芯片的加密方式好,**率为0.

使用特权

评论回复
59
bear1| | 2019-11-8 15:20 | 只看该作者
yjmwxwx 发表于 2019-11-7 09:37
不是软件仿真,是直接硬件插上JLINK,JLINK官方软件有个命令行调试器。

如果把jlink口禁掉,看你还有啥招??

使用特权

评论回复
60
lhtzyn777| | 2019-11-18 15:47 | 只看该作者
meijc119 发表于 2019-11-7 13:55
ID是唯一的,是人家改了你的程序,并不是人家的空片改成了你一样的ID,ID所在的区域没有编程器能改的,解 ...

事实上ID就是被修改了。你怎么确定ID不可以被更改?我们买了多个盗版的芯片,读出来确实ID一样。我只是给你这个建议,你这个方法太简单了,没任何用。一般稍微深入思考防**的都可以想到。别小看他们**的人,要知道他们就是靠这个吃饭的。STM32F103没有OTP,而且他们的工具你也没有。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则