typora 分析
inno 打包
不喜欢这种安装程序偷偷加料,直接使用universal extractor解包
electron框架,这种前端框架程序逆向教程很多,无他,解包app.asar
安装node.js
npm install asar -g
解包:
asar extract xxx.asar xxx_dir
打包 :
asar pack xxx_dir xxx.asar
查看resources目录发现.asar文件
发现文件被加密
关注"main": "main.node", 这是一个pe文件,解密逻辑位于sub_18000AAB0
aeskey=[0x4E, 0xE1, 0xB3, 0x82, 0x94, 0x9A, 0x02, 0x4B, 0x80, 0x2F, 0x52, 0xB4, 0xB4, 0xFE, 0x57, 0xF1,
0xBE, 0xF4, 0x08, 0x53, 0x10, 0x92, 0x56, 0xE2, 0xC2, 0x0D, 0xEC, 0xA3, 0xDD, 0x8D, 0xD5, 0x6D]
IV 为base64解码后前16字节
文件解密后就可以随心所欲的修改啦
app/License.js
var installDate, lastShown, hasLicense = !0, email = "xxxxx", licenseCode = "xxxxx", fingerPrint = "xxx";
app/Setting.js ==> Setting.prototype.extraOption
修改两处package.json文件
package.json
"main": "app/atom.js",
app/package.json
"main": "atom.js",
此修改package.json则不再需要app.asar
效果图:
设置中也去掉了自动检查和发送匿名使用数据
适当配置,IDEA直接跑
更对信息请参考:https://bbs.pediy.com/thread-270534.htm