吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4008|回复: 45
上一主题 下一主题
收起左侧

[Web逆向] WeMod 本地 VIP 简单分析与实现(手动)

  [复制链接]
跳转到指定楼层
楼主
涛之雨 发表于 2024-7-15 21:15 回帖奖励
本帖最后由 涛之雨 于 2024-7-19 20:01 编辑

WeMod 本地 VIP 简单分析与实现(手动)

前言

既然写了手动,那肯定是可以自动实现破解的,可以但是没必要,甚至都可以不需要修改文件,

WeMod 官方提供了控制台的快捷键( Ctrl+Shift+D ),如果不嫌麻烦,可以根据我之前教程中“条件断点”的原理,

搜索.headers.get("Content-Type"),在唯一一处位置打开添加下图所示的条件断点,

e.url.endsWith('/account')&&(e={_:e,url:e.url,headers:e.headers,json:async(a)=>(a=await e._.json(),a.subscription={startedAt:"2999"},a)}),false;

有人就要问了,为什么图上的代码和上面代码块的代码不一样?
答案肯定就是优化过了,更简洁,直接可以塞到 asar 文件中

然后只需要每次打开软件后,打开控制台即可实现破解。

全文结束,撒花 ✿✿ヽ(°▽°)ノ✿

等一下,这样写太短(水)了,

所以我下面要开始补充逆向思路,错误的经历,踩坑的过程,失败的辛酸,希望的曙光,短暂的喜悦,遇到的挫折,不懈的努力,到最后成功的狂喜。

再等一下,这样写又太长(水)了。

算了算了,写到哪里是哪里好了🤷‍♂️

初窥门径

打开软件,打开控制台(Ctrl + Shift + D),随便找到一处需要会员订阅的地方,发现出现了一个account请求,打开看一下:

嗯?"subscription": null, 怼着脸上开大是吧,那肯就是这个了,从堆栈里追到请求的位置(看样子可能采用的VUE框架,用户代码大概率在app-xxx.js

追到关键函数getUserAccount,就可以下断点然后调试了。

断点断下后,鼠标放到fetch上,点击[[FunctionLocation]],跳转到函数定义位置,然后单步跟到如图所示位置

可见在上图 ③ 所示位置解析了返回的 json 数据并且返回。

偷梁换柱

下面分析subscription部分的结构(2024年7月19日补充)。

大概搜索一下哪里调用了.subscription

accountChanged(e) {
    this.#u.user("subscription_tier", e.subscription ? "pro" : "free", S.Io);
    const t = this.#H();
    t !== this.#k && (this.#k = t,
    this.#u.user("tier", "free" === t ? "free" : "pro", S.ek),
    this.#u.user("plan_type", t, S.ek),
    this.#u.user("plan_flag", (0,
    y.Lt)(e.flags, 512) ? 1 : 0, S.ek))
}

第一处只有判断subscription是不是真值,对于结构判定没有什么帮助。

我们先重写结果,将subscription设置成{}

(然后一测试就成功了=_=,正常不是应该有个什么判断是否过期啊,或者什么吗)

于是我们可以得出前言部分所述的代码(可以上去翻一下)

但是到此可还不算完,因为我们还需要每次打开软件都打开控制台,看起来很蠢,其实特别蠢。

我们直接将这部分代码写入到 js 代码中即可。

混入其中

electron打包的exe,我们直接解包,然后修改,再打包即可。

等一下,怎么双击后没反应?

控制台打开看一下是不是报错了

好像是校验?直接搜一下Integrity check failed for asar archive

好好好,根据ASAR完整性,在electron>=30.0.0版本中,会把校验信息放到资源中。

简直哭死,他甚至还把新文件的sha256写出来。

那就简单了,直接打开Hex编辑器,在exe中搜83725ca725c0f576ebb6ae248d54294ea5518e5a2bd9662e887055295042d767,替换成新的hash(图上为b6288a570c316cde4aa6dd78dcc31cb86c285f17a9fefb5d9da199ed711bf9cd

根据他文档的指引,搜索如下结构。

[
  {
    "file": "resources\\app.asar",
    "alg": "sha256",
    "value": "9d1f61ea03c4bb62b4416387a521101b81151da0cfbe18c9f8c8b818c5cebfac"
  }
]

替换相关hash的值。

(就成功了)

一触即发

自动化脚本?

很简单只需要两步(还没写):

  1. 自动解包app.asar,修改后重新打包(甚至都不需要解包,直接追加到app.asar的相关位置,然后文件修改偏移和hash即可)
  2. 修改相关校验(直接16进制编辑exe即可)

可能存在的更好的解决方案(待思考)

  • 通过dll-hook的方式直接注入(通杀更新)(未尝试)

  • 通过Proxy或者PAC什么的参数劫持掉域名(尝试了,未成功)

  • 重写启动器(尝试了,未成功)

写在最后

写教程的过程中,在第一部分中有提到翻到“我之前教程中‘条件断点’的原理”,

翻了一下吾爱的教程,然后一眼瞟见之前提到过的百度的骚操作,点开一看,

突然就沉默了,看到了一位故人。

认识你,不后悔。

你在那边,要好好的。

免费评分

参与人数 19威望 +1 吾爱币 +46 热心值 +17 收起 理由
chinaye123 + 1 谢谢@Thanks!
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
aircoder + 1 我很赞同!
正义天下 + 1 + 1 谢谢@Thanks!
xxxdrs + 1 + 1 谢谢@Thanks!
GS9452 + 1 谢谢@Thanks!
junjia215 + 1 + 1 用心讨论,共获提升!
Issacclark1 + 1 谢谢@Thanks!
Hcandy + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
Loker + 2 + 1 谢谢@Thanks!
jaffa + 1 谢谢@Thanks!
xxxlsy + 1 + 1 用心讨论,共获提升!
mscsky + 1 热心回复!
woyucheng + 1 + 1 谢谢@Thanks!
dhwl9899 + 1 + 1 谢谢@Thanks!
喃歌_ + 1 + 1 谢谢@Thanks!
正己 + 10 + 1 谢谢@Thanks!
LZCDream + 1 + 1 谢谢@Thanks!
uzcool + 3 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
 楼主| 涛之雨 发表于 2024-7-15 21:17 |楼主
一楼留给胡萝卜周
推荐
Tomatoman 发表于 2024-7-17 11:15
感谢分享,虽然不玩游戏,但是这个分析解题思路值得我学习。祝愿胡萝卜周在那边好好的,吃好喝好,开心愉快。
推荐
 楼主| 涛之雨 发表于 2024-7-26 06:53 |楼主
kang2000888 发表于 2024-7-25 23:27
通过Proxy拦截然后修改account的数据包理论上是可行的呀,奇怪了怎么会不行呢

他代码里好像重置了Proxy参数,我本来是希望用修改程序启动参数修改Proxy的来着,然后添加pac参数的话请求失败。

用map重定向rule倒是可以导致程序无法获取更新数据,但是总是获取不到服务器内容(我是用的cloudflare的worker)
3#
wangjiuye 发表于 2024-7-15 21:27
这个软件是玩啥的。。。
4#
莫封寒 发表于 2024-7-15 21:52
wangjiuye 发表于 2024-7-15 21:27
这个软件是玩啥的。。。

风灵月影集合版
5#
collinchen1218 发表于 2024-7-15 22:19
涛之雨 发表于 2024-7-15 21:17
一楼留给胡萝卜周

啥意思 胡萝卜周不是那个了吗?
6#
艾莉希雅 发表于 2024-7-16 00:00
怎么就在那边好好的了
发生了什么了吗
7#
zh25564 发表于 2024-7-16 00:04
又看没有懂 确实是不懂 现在的吾爱也不直接给东西了 好难啊
8#
天涯心灵 发表于 2024-7-16 00:17
看不懂  但是感觉很牛逼的样子
9#
dhwl9899 发表于 2024-7-16 07:42
谢谢大佬分享,学习学习。
10#
dax1127 发表于 2024-7-16 08:34
漂亮,看完了,没看懂
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-9-8 07:02

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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