为避免不必要的麻烦,不说具体软件了,只说过程。
试用了一个软件,试用版license,发现是RLM保护的,来看雪找到RLMHelper。开始研究。
运行要破解的软件带的rlm.exe,得知为RLM9.2L2,还好不是很新的,应该有希望。
Demo license 如下:
ISV xxxxxxx
LICENSE xxxxxxx rlm_demo 2.0 permanent uncounted hostid=DEMO
_ck=7c7bfc1360 sig="60PG453WAX9X3421BD8651D297SV9QGD7ATGQR822M0BNC8W
WF5489NCB90SKTTJ7TJXNE0YHU0G"
经过几番尝试,明白了xxxxxxx 相当于FLEXLM的 vendor Daemon,rlm_demo 相当于feature,后面的跟FLexLM都是类似。
运行RLMHelper,点“Scan Directory”,选择要扫描的目录,就是软件的安装目录了(注意不能只扫bin) ,完成后会列出有pubkey的文件列表。
其中rlm开头的不用管,选中后excude掉,然后点击“Analyse All”会逐一分析这些文件,成功就会显示绿色图标。
然后点击“patch &make”,会自动替换 pubkey,并生成rlmsign.exe.这一步会出现vmware什么的对话框,我这里用好像选什么没啥关系。
最后就是修改lic文件,找到软件的真正feature,即yyyyyy,版本号改为正确的版本号,hostid也改为ANY,其他不用动。
ISV xxxxxxx
LICENSE xxxxxxx yyyyyy 7.0 permanent uncounted hostid=ANY
_ck=7c7bfc1360 sig="60PG453WAX9X3421BD8651D297SV9QGD7ATGQR822M0BNC8W
WF5489NCB90SKTTJ7TJXNE0YHU0G"
。保存好以后拖到前面生成的rlmsign.exe上就好了。
这个RLM保护的软件关键就是找真正的feature,demo给的rlm_demo根本跟产品无关。
RLMHelper支持linux文件操作,只是要把文件拷到windows环境下进行操作。
另外我要用的软件有MacosX版本,RLMhelper不能识别,不过可以利用windows版本识别出的pubkey和替换的pubkey 直接在macosx下 用sfk patch掉。hostid=ANY的lic文件从windows拿过来就可以用了。
从看雪学了很多东西,第一次写心得,不知写明白没有。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)