首先我使用的jlink v8版本的硬件,写这篇文章的目录只是为了交流学习。
今天下载了一个最新Jlink版本Jlink-V630f,安装好之后,打开jlink之后竟然弹了个出错的框框。。
用的好好的,怎么会出现这种错误?还好以前做过软件破解,对反汇编,脱壳,破解比较熟悉。于是对Jlink做做手术。。。
使用到的工具x64dbg:windows平台强大的反汇编调试工具。(因为jlink是32位版本的,所以使用的其中的x32dbg)
1、首先用x32dbg载入jlink.exe文件:
2、根据jlink运行时的表现,我们要在MessageBoxA这个API上面设置一个断点。(如下面操作让程序断下来)
3、程序会断在这里
4、Alt+F9让程序运行起来后,出现了像前面第一个图的对话框,点确定之后,停在下面的位置。
5、然后按19次F8(就是单步19次),就到了光明之殿。
6、上面就找到破解的关键点,我们只要绕过那个反盗版的检测,最后让返回值等0就是正版了。(STDCALL调用规则,返回值是放在EAX里)
在 call jlinkarm.652A3170片按空格键。输入 xor eax,eax 然后确定。
确定后变成这样子,就爆破了。
7、我们已经对JlinkARM.dll做手术了,但只是在调试器的内存里,我们要把它永久保存。按Ctrl+P,然后点 修被文件,选择桌面。文件名输入JlinkARM.dll,保存,大功告成。
8、桌面上的就是破解过的JlinkARM.dll,用这个覆盖掉jlink上面下的同名文件。(PS:如果使用keil或是iar也要覆盖掉这几相应目录下的JlinkARM.dll文件)
9、打完收工,Jlink已经不再有盗版提示了。
此内容由EEWORLD论坛网友ketose原创,如需转载或用于商业用途需征得作者同意并注明出处