吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 3043|回复: 75

[经验资料] Typora授权分析

  [复制链接] 出处:吾爱破解论坛
ShareKing 发表于 2022-2-3 17:04 | 显示全部楼层 |阅读模式

1月23日,Typora 正式发布 1.0 版本,进入了收费时代。
1.0 版本是一次性付费而非订阅的,只要支付人民币 89 元,可以在 3 台设备里使用。
Typora之于我
如你所见,这一篇文章就是使用Typora所写。自搭建个人博客起,Typora就成为了我主要的写作平台。
用惯了Markdown,WordPress的古腾堡编辑器没法满足我的需求,于是开始寻找替代品,最终的结果便是typora。
当然,多数人使用的原因不外乎以下
  • 轻盈、干净
  • 所见即所得
  • 图床
  • 主题、生态
  • (beta)免费
  • ……

如今,typora进入收费阶段,不乏使用者被迫迁移至其他写作工具上。
(不扯了官方话了)下面,我们来一探究竟。
敬告
请勿使用盗版,支持正版授权。
文中内容仅作学习和讨论,请不要从事任何非法行为。
由此产生的任何问题都将读者/用户(您)承担。
寻踪觅源
通过火绒剑监测行为日志
程序加载的一些模块
234143zdwt2w5e2j54vzqn.png

在Windows下,typora会记录日志至{UsersRoot}\AppData\Roaming\Typora\typora.log
能看到可疑的注册表操作记录
234139r55dlnwschn35lw5.png

正版激活的注册项内容
234141ac08hcnzom08m0ag.png

尝试修改SLicense
234145n6zweeunij75rgob.png

重新运行软件后,从错误日志中发现调用栈暴露。
234147bnnwiu44nn7hd7ii.png

渐入佳境
这里关注到了app.asar
通过搜索引擎,尝试解包
复制代码 隐藏代码
npm install -g asarasar extract {installRoot}/Typora/resources/app.asar workstation/outs
发现文件被加密
234150fbgupmkjmmuu0p9e.png

JavaScript不管是字节码还是明文脚本都会在运行时加载,结合模块列表寻找加载点
关注到解包得到的main.node
234152ndy4y4r81rw181xd.png

IDA寻找字符串特征
234154kllxfnyfui8xiuyn.png

234156wek442ay2xy0z6ee.png

通过交叉引用定位
看到一些导入函数
234158t77g907vtlvzsjis.png

由字符串联想到对加密文件进行的base64解码
导入表查找到 napi Node-API | Node.js API 文档 (nodejs.cn)
简单分析伪代码后,其实就是运行
复制代码 隐藏代码
Buffer.from(e,"base64")刻舟求剑
尝试Findcrypt寻找算法,找到AES的Sbox和InvBox
通过交叉引用定位到可疑函数点 main.node+E440
IDA动态调试,模块加载断点
234201n1zeu6966ic2w6u1.png

跑起来,直至加载main.node
234203syp0yyvoaoaklycy.png

分析模块后,定位base+offset下断,运行
看到
234205nyydnyni4ini3djj.png

正好与我们的文件对应偏移16
234208yaxwact4wjtm6ttw.png

继续调试能看到 分组加密的形式
234212ibknnlv8yzkaxmmn.png

同时能够找到前16字节
234219mtn7xfxmcnymnpx0.png

正是作为iv进行异或
234221puse5clcpds4scgp.png

柳暗花明
分析调用函数,最终能够确定其函数功能
234214hmzeigduhwziww9w.png

通过偏移EF19,能够确定AES轮数为13轮,对应为AES 256
偏移B510处的函数,能够得到AESKey
234216f676bokjz3ki81yr.png

落叶归根
解密得到明文脚本,授权主逻辑在Lisence.js中
授权逻辑如下图
234223q8tij4fiq6ubq442.png

本地验证->获取用户特征->网络验证授权->返回密文->RSA公钥解密->设备指纹对比
逆向的思路,不多做阐述。
修改完成后,只需要按相同格式加密并打包为app.asar即可实现补丁Patch
typoraCracker
typoraCracker是一个Typora解包解密程序,也是一个打包加密程序。你可以轻松的打造独属于你的补丁,但请注意法律上的可行性。
测试
总有一种人,喜欢享受“正版”激活的感觉。而我就是……
我采用 Patch+KeyGen
补丁去除网络授权,KeyGen用于本地验证,测试成功
234227ugpz5tgarfdffkr6.png

尾声
typora针对electron下的源码加固仍是一片空白。
简单思考后,传统代码混淆的方式对关键逻辑的保护依然有较大的提升空间,不失为一个恰当的加固方向。
期待typora会越做越好——来自一个正版使用者

评分

参与人数 15HB +15 THX +3 收起 理由
虚心学习 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
Jawon + 2
一路走来不容易 + 1
消逝的过去 + 1
459121520 + 1
Wayne + 1
冷亦飞 + 1
szukodf + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
XiaoWeiSec + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
kangaroo + 1 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
黄金菜 + 1
king51999 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
我是好人 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
成丰羽 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
zxjzzh + 2 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
自行车48093 发表于 2022-2-3 17:06 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
含羞草41 发表于 2022-2-3 17:10 | 显示全部楼层

谢谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
sNPjeZi 发表于 2022-2-3 17:17 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
ClekToZdq 发表于 2022-2-3 17:21 | 显示全部楼层

刚需啊,一定要看看!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
vthcFOTW02 发表于 2022-2-3 17:25 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
oQP27 发表于 2022-2-3 17:29 | 显示全部楼层

谢谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
YVQOH0948 发表于 2022-2-3 17:34 | 显示全部楼层

感谢楼主
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
ALNHRvIO6270 发表于 2022-2-3 17:48 | 显示全部楼层

谢谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
大侠6479 发表于 2022-2-3 18:02 | 显示全部楼层

被标题吸引进来了,回复看看
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表