Electron跨平台程序破解的一般思路
本帖最后由 backtrace 于 2017-2-27 05:17 编辑Electron 是 Github 发布跨平台桌面应用开发工具,支持 Web 技术开发桌面应用开发。代表项目有Github的Atom和Microsoft的VSCode。
以前端预处理工具Prepros 6为例简单阐述下Electron封装的跨平台程序破解的一般思路:
[*]安装npm(至于如何安装,网上教程很多,不赘述)
[*]安装好npm后执行命令安装asar:npm install asar -g
[*]以macOS平台为例,在Prepros.app/Contents/Resources下找到app.asar,其他平台方法类似
[*]用asar命令解包:asar e app.asar tmp
[*]到步骤4中建立的tmp目录下找到对应的js文件hack之。
[*]破解完后重新封装程序 :asar p tmp/ app.asar,破解完成。
因为步骤4中解包出来的全是源码文件,而且涉及到注册的字符串(trial、license)并未加密,所以直接修改程序逻辑即可实现破解。
步骤5中破解涉及到的4个文件:
config/app/licnese.js //授权信息文件
lib/license-manager.js //授权判断文件
lib/update-manager.js //联网更新获取
lib/browser/application.js //启动时检测更新
config/app/licnese.js
补全key信息。
lib/license-manager.js
activate和verify函数直接return e.stop();
lib/update-manager.js
checkUpdate函数直接return e.stop();
lib/browser/application.js
直接注释掉initUpdater里的更新检测。
结语:相对于二进制逆向,Electron程序的逆向几无技术难度可言。开发者能抵御这种逆向分析的手段也很有限——仅有混淆一途,而且效果也不佳,只要逆向者肯花点时间去分析,还是能够轻松逆向出源码。这也就注定了Electron只适合开源生态的程序的开发,并不适合对技术及知识产权的保护有强需求的企业和个人。
破解成品:http://www.52pojie.cn/thread-563609-1-1.html
虽然感觉自己不会,不过还是支持一下 吓得我 赶紧 换CEF开发 大爱楼主,希望能加个好友请教 谢谢 分享!!! 非常感谢指路
aweiribao 发表于 2017-2-25 19:17
吓得我 赶紧 换CEF开发
cef也能破解吧{:1_924:} 大侠你好,求合作 不错,虽然我用 electron 开发了个小工具,但是我还是看不下去。哈哈哈。 最近正遇到这个情况,感谢分享!
页:
[1]