返回列表 发新帖

【心得分享】简单谈谈破解那些破事

    [复制链接]

17

主题

909

帖子

4416

积分

大学生

Rank: 5Rank: 5

金币
1454
好评
162
贡献
14

MT论坛新人MT论坛最佳新人MT论坛活跃会员

发表于 2021-6-10 18:11:48 来自手机  | 显示全部楼层 | 阅读模式
本帖最后由 XuanRan 于 2021-7-4 19:14 编辑

今天 谈谈破解的一些破事吧

来到这论坛的时间不长 但见到了各式各样平常自己不会碰见的软件,脚本。

有的看见了 会下来玩玩。

然后就用这些天在论坛上遇到的人和事写一篇文章吧

不过开始之前 先来闲聊几句

逆向 不论难不难 但它需要耐心和时间
有些人也许会觉得 我这个搞了一个星期 那个搞了2个星期 好像花了很多时间一样

其实不少大神 花的时间比你们知道的更长
几个月 几年的也有 就仅仅去逆向一款产品

而且很多时候那些花1-2个星期的 本身也不是加密难度高 而是本身对逆向就不了解 也不学习 就觉得自己可以解决

所以如果你只想速成 我就不建议你回复往下看了 因为看完你也未必看明白


逆向 它不仅仅只用于破解
无论在生活 人际 工作上都会用到
高手甚至还会逆向心理学 逆向推理术
这里就不详细讲解了 今天主要讲解和软件有关方面的逆向

希望对新手会有一些启发

-逆向 需要时间 耐心 和思考
-破解永远不会只有一种方法

对于新手 都喜欢一开始找个软件练手
在中国 几乎所有软件带加固
对于很多新手来说 加固的概念估计就是一键脱壳

这里个人很建议最好认真逆一次加固 会对本身实力提升不少

破解难的永远不是处理爆破点 而是围绕着爆破点的保护

刚好加固都具备了这些
反调式,加密,vm,系统基层知识等等

如果想尝鲜 建议选择国外软件,基本都是无壳,至少能更好的去探索
国内大多数必有加固已是一种风气
起步门栏太高
但是如果你只是想依赖脱壳工具 就请无视这里吧

开始之前 得先理清一款软件的基本运作

如图所示: (动图)


首先 拿到一款软件也不要急着破解
先看看软件的验证方式 属于服务器还是本地

一般服务器返回的信息 反编译是搜索不到的 因为本身就不存放在软件里
然而错误信息 也是软件和我们沟通的最好方式
错误信息越多 我们也就越好去定位
比如图中这款 是一款网络验证
从图中可以知道 当激活码正确 就可进入使用界面



当随意输入激活码点确认后
软件会toast提示"卡密不存在"
那对于网络验证 最直接的方式就是抓包
可是 抓包后发现 返回信息仅仅只是一个0
并未有"卡密不存在"的信息
这说明"卡密不存在"字眼是存放在软件本身里。
那如果没有错误提示呢?对于服务器验证
就会有个url链接 这也是可以作为定位的方法之一

大致表面分析后就可以开始拆包了

其实从软件界面 很多人都可以看出是使用autojs写的一款脚本工具
这就是熟能生巧
比如电脑上 易语言开发的 vb开发的 vc开发的 net开发的等等 其实界面都有特征 久了一眼即可识别

开始拆包后也不要急着反dex
先看看assets, lib里 是否有固定程序的文件信息
比如autojs 在assets就会有个project文件夹 可以点进去看看内容是否js即可确认



如果是autojs就没必要去反dex 因为dex只是解析器 不会有关键信息 除非要解密autojs的aes

这里顺便贴出autojs的aes算法分析吧

  1. Mkey = aes(bytes("seBmfdYSRu2ysWEl"),""AES/CBC/PKCS7Padding",
  2. md5(projectConfig.packageName + projectConfig.versionName + projectConfig.mainScriptFile + projectConfig.versionCode),md5(projectConfig.buildInfo.getBuildId() + projectConfig.name,16))

  3. decrypt = aes(data,""AES/CBC/PKCS7Padding",
  4. Mkey,md5(projectConfig.buildInfo.getBuildId() + projectConfig.name,16))                           
复制代码


这时候就可以注重分析project里的js文件
(由于这款软件我已经删除了 求助者也取消了原包分享 所以我用其他脚本作说明吧)

一般autojs脚本都会经过加密 混淆
常见有加密 v4,v5,v6 或autojs自带的aes 或疱丁的dex加密

高德助手是使用疱丁的dex加密
这里不谈如何解密 只谈思路
因为手上没疱丁的加密文件 这里用v6的加密做演示 其实疱丁只不过编译成dex而已 手法大同小异
图为v6加密:



对于新手来说 解密不是一件容易的事,但很多时候不代表不解密就无法破解
逆向 不能心急 需要慢慢的去看看 去找关键点 不会解密就更要有耐心的去阅读

首先 得理清一件事
加密后的文件我们看不明白 其实系统也看不明白
所以要让系统明白 在运行过程它需要先进行解密 才去让系统读取
所以从这里可以得出一个结论
加密的只是js文件 所以说 解密过程也会存放在js里 逻辑判断什么也依然在js里 只是用了加密让我们难去阅读

这里我就简单说明一下v6加密后的形式
图是以前不懂什么脚本了的
红色: 加密后的数据
绿色: 解密算法
蓝色: 重编译的脚本代码



如果要解算法 就看绿色
如果只要做修改 可以直接看蓝色
这里直接说蓝色部分
图中会发现并不是所有文字都加密了
所以可以试试看看有没有关键信息
然后再找出附近的爆破点即可



比如高德助手 他有个 "到期时间" 并未加密
上面会有个判断 只要修改即可破解
往往很多时候 不起眼的地方 隐藏着关键信息
如图所示 破解完成后



所以说 不要因为不懂解密就觉得不会破解
破解方式永远不只有一种 重在愿不愿意去摸索。

=========================================

再来一款 这款是使用google flutter开发的
很多人看到flutter 就想放弃
同样的 破解方式永远不只是一种
主要看软件限制方式

这是一款有颜色的漫画
有vip功能限制
从软件信息可以看到
邀请好友送vip
这样我们基本就有了2种破解方式
1。如果允许本地修改破解 可以修改vip破解
2。协议白嫖vip 免破解程序





虽然有了破解的思路 但由于是flutter 一般代码都在libapp里
图为flutter固有特征



服务器验证 我们可以先试试抓包
结果发现 数据包都加密了
从形式看 表层是hexstring



这样可以猜测hexstring底下还有一层加密
一般常见的加密有aes des rc4等等
那我们可以试试反dex看看有没有

可以发现 解密过程在dex 那说明有突破点了
只要在解密后的代码里 替换vip信息就可以完成本地破解了(ps 我没测试本地破解 请自行测试)



已经知道是aes ecb模式 那只要找出key
基本就可以写出协议刷vip了

就像图中一样
(图的是去年弄的,这款我没玩 有点懒 只是求助区看到的 下来看一眼而已)



所以说不要被软件限制了自己
逆向 就要勇于尝试 去找出突破点


好吧 今天就说到这里 其实还有很多 碍于时间关系 后面就靠你们自己了
希望这篇文章对你们有带来启发

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
已有29人评分好评 金币 理由
lbb + 1 + 1 很给力!
1456975380 + 1 + 1 赞一个
rain. + 1 厉害
空谷竹影 + 1
him___mc + 1 感谢
佐哒哒 + 1
mengnan + 1 + 1
彼岸花开奈何桥 + 1 + 1
强强yqq + 1 很给力!
白又白 + 1 + 1 神马都是浮云
JNL + 1 + 1
依然50 + 1
蜗牛也要妞 + 1 + 1 很给力!
©麟杰 + 1 + 1 赞一个!
二二二姑爷 + 1 + 1 很给力!
先生王 + 1 + 1
ZIK + 1 神马都是浮云
xiaobaibai + 1 + 1 加分加分。哈哈
郭友人 + 1 + 1
352990192 + 1

查看全部评分 总评分:好评 +27  金币 +29 

长期合作可找我 短期利润高也行
回复

使用道具 举报

0

主题

28

帖子

86

积分

小学生

Rank: 2

金币
25
好评
0
贡献
0
发表于 2021-6-10 18:14:03 来自手机  | 显示全部楼层
看看隐藏
回复

使用道具 举报

10

主题

76

帖子

325

积分

初中生

Rank: 3Rank: 3

金币
101
好评
2
贡献
0
QQ
发表于 2021-6-10 18:14:54 来自手机  | 显示全部楼层
牛啊牛啊
回复

使用道具 举报

0

主题

185

帖子

460

积分

初中生

Rank: 3Rank: 3

金币
186
好评
0
贡献
0
发表于 2021-6-10 18:18:30 来自手机  | 显示全部楼层
回复看看
回复

使用道具 举报

10

主题

76

帖子

325

积分

初中生

Rank: 3Rank: 3

金币
101
好评
2
贡献
0
QQ
发表于 2021-6-10 18:18:49 来自手机  | 显示全部楼层
大家看作者写了这么多还是点个赞吧
回复

使用道具 举报

56

主题

1065

帖子

4381

积分

大学生

Rank: 5Rank: 5

金币
845
好评
14
贡献
0
发表于 2021-6-10 18:20:36 来自手机  | 显示全部楼层
金币到手
回复

使用道具 举报

9

主题

183

帖子

708

积分

初中生

Rank: 3Rank: 3

金币
105
好评
2
贡献
0
发表于 2021-6-10 18:24:14 来自手机  | 显示全部楼层
回复看看
回复

使用道具 举报

28

主题

1284

帖子

4585

积分

大学生

Rank: 5Rank: 5

金币
1879
好评
5
贡献
0
发表于 2021-6-10 18:26:03 来自手机  | 显示全部楼层
我想速成
回复

使用道具 举报

1

主题

1016

帖子

2872

积分

大学生

Rank: 5Rank: 5

金币
265
好评
1
贡献
0
发表于 2021-6-10 18:26:10 来自手机  | 显示全部楼层
感谢分享
回复

使用道具 举报

13

主题

462

帖子

1572

积分

高中生

Rank: 4

金币
615
好评
6
贡献
1

考神MT论坛帅哥MT论坛最佳新人

QQ
发表于 2021-6-10 18:28:57 来自手机  | 显示全部楼层
我也是啊
回复

使用道具 举报

13

主题

929

帖子

2824

积分

大学生

Rank: 5Rank: 5

金币
1365
好评
2
贡献
0
发表于 2021-6-10 18:31:29 来自手机  | 显示全部楼层
金币到手
回复

使用道具 举报

16

主题

391

帖子

1108

积分

高中生

Rank: 4

金币
388
好评
0
贡献
1

MT论坛新人考神

QQ
发表于 2021-6-10 18:34:05 来自手机  | 显示全部楼层
学习使人进步
If you think you can, you can!
回复

使用道具 举报

13

主题

660

帖子

2813

积分

大学生

Rank: 5Rank: 5

金币
696
好评
1
贡献
0

考神

发表于 2021-6-10 18:41:28 来自手机  | 显示全部楼层
感谢分享
回复

使用道具 举报

11

主题

623

帖子

1571

积分

高中生

Rank: 4

金币
505
好评
3
贡献
0

MT论坛新人MT论坛最佳新人

QQ
发表于 2021-6-10 18:42:42 来自手机  | 显示全部楼层
看看隐藏
回复

使用道具 举报

20

主题

1124

帖子

4296

积分

大学生

Rank: 5Rank: 5

金币
1170
好评
5
贡献
0

考神MT论坛帅哥MT论坛最佳新人MT论坛新人

QQ
发表于 2021-6-10 18:43:27 来自手机  | 显示全部楼层
感谢大佬分享
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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