吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 46667|回复: 96
收起左侧

[Android 原创] 破解一款安卓上支持Flash的浏览器

  [复制链接]
supersun 发表于 2018-12-16 20:44
本帖最后由 supersun 于 2018-12-17 23:26 编辑
在安卓4.4之后浏览器内核改为chromiun,不再默认支持Flash。
可如果想在手机上玩4399、赛尔号、摩尔庄园之类的Flash小游戏,该怎么办呢?
通过一番搜索找到一款自带Flash插件的浏览器:Puffin(海鹦)浏览器
这个浏览器我使用了一段时间,页面加载迅速,非常省流量,还能隐藏你的真实IP地址,是个不错的选择。
但这个浏览器需要激活才能使用(目前是免费激活的,不知道以后会不会收费),今天就带你来破解它。

开始破解
软件打开界面如图:
clipboard.png

把APK解压,DEX文件反编译(如果整个APK反编译,编译时会报错),然后定位到onCreate方法。
如图,所在类路径:com/cloudmosa/app/LemonActivity
c2dccfa846ade9b63e7f15d465c418c3_10297.png


APP启动时判断是否激活而显示激活界面,一般都在这初始化这里进行,所以我们从这里开始找。
fb7d8db500472f43e8f25f5be8a896dd_10296.png

这里看到valIDAtion_code字样,意思是“激活码”,很可疑。

代码的意思是从SharedPreferences中读取激活码,再调用invoke-static {p1}, Lot;->aq(Ljava/lang/String;)Z(参数就是激活码)
结果传给v3,如果V3返回0,则跳转到:cond_237我们来到cond_237:
6e116f1552c4927c1b626fe5d29b3778_10301.png

这里判断p1是否不为0,是的话就跳转到:cond_248

但是上面可以看出他把p1值赋0了,所以这个下面代码是会执行的。
而我们要让他跳过这段验证代码。
直接把上方的if-nez v3, :cond_237 修改为 goto:cond_248 即可。
033b5e16d10583dd885adcd5f6f196fd_10305.png

修改完后回编译dex文件,然后签名测试:

1779b7c3aaac78bdc0da8b668425c37a_10293.png

程序打开时没有显示激活页面了。
但是有个问题,就是进入网页时程序会闪退。
这里可以猜测是有暗桩在程序其他地方验证是否激活,或者是有签名效验。
经过排查可以确定这个APP有签名效验。
我们在APK逆向基础教程时候已经介绍过签名验证的破解方式,可以用工具一键破解。
但这里为了让大家学到知识,就采用手动方式破解他的签名验证。
把apk载入到jadx中,搜索signature:
06d87db6a759a684ae632b7003fafb52_10300.png

找到的地方都没有关键代码,但我们看到有一个signatureCheckFailedNativeCallback
说明签名验证在native方法中。
我们打开apk解压后lib\armeabi-v7a目录
259d144107f90d14aa2467451e63f07f_10309.png

里面有两个so文件,根据名字判断在第二个里面可能性比较大(如比较多的话,可以在java层先定位)。

我们把libpuffin.so载入到IDA中
e1231da241bdc351668f45649ee6c960_10292.png

Shift+F12打开字符串窗口,搜索signature:
632b2757b735b054c29ee232323999ae_10287.png

找到这一段可疑文字(英文意思是签名检查失败即将结束APP,如果不知道要搜索什么,我们可以在Logcat中找突破口)双击进入:

e0a0066f6207866ade6ffbfd76caa130_10290.png

定位到引用字符串的地址:
9550905ceb3b3d29cb7a951e6111306e_10303.png


再找上一层调用:
52cd5d81f59d33049b65a98bfdf57437_10302.png


来到此处:
3c79d24599a25fb52a6af022a09d3080_10307.png


此时我们按F5查看伪代码:
6e8cea864f3f0c6f9b504177b3981020_10298.png


9ce50c0e6f78acbc345d7182ec457328_10299.png
整个方法流程大概如图。
我们可以看出这里面就是签名验证的逻辑,获取apk签名,对比包括退出代码都在里面。
因此我们只需要把调用这个函数的地方删掉即可。我们来到函数头部:
528c4a28d31b5ded45e11d6ca2c38f3d_10304.png

定位到调用的地址:
89dd028f5390968bc8a7a878ce786064_10308.png


这里的BL XXX 就是调用子程序的意思,我们定位到十六进制编辑器中:
7eda97d33407022ca90c2da6e2959857_10306.png


把这里改成00 00 00 00(空代码),保存即可。


最后替换原来的so文件,打包,签名测试:
1.png


从左下角可以调出鼠标和键盘控制Flash。
YJJOB(AC]@XV97FVXQFD}W4.png


这个浏览器还支持Flash的全屏模式,运行也很流畅。
FJJ%POB_}N[[84]GDGM)7[O.png

功能一切正常,至此破解成功。

免费评分

参与人数 15威望 +1 吾爱币 +24 热心值 +13 收起 理由
nbwzlyd + 1 谢谢@Thanks!谢谢楼主这个很好,学习了
hh3016 + 1 请问有没有成品试用下
wszsd + 1 + 1 谢谢@Thanks!
内瑟斯 + 1 + 1 求软件
啊jia乐Ya + 1 热心回复!
qtfreet00 + 1 + 12 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
风吹葫芦甜 + 1 + 1 我很赞同!
9377GG + 1 + 1 谢谢@Thanks!
hyacinth + 1 + 1 谢谢@Thanks!
lx1995 + 1 我很赞同!
安东特大本营 + 1 + 1 我很赞同!
海洲光电 + 2 应该只能支持安卓7.0以下的设备
NSNSDHS + 1 + 1 热心回复!
不二青年 + 1 + 1 我很赞同!
stars-one + 1 + 1 热心回复!

查看全部评分

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

yijian3613 发表于 2019-2-20 09:35
同求成品,以及其他支持的浏览器分享
Hmily 发表于 2018-12-17 18:21
夏虫333 发表于 2018-12-16 21:14
三木之林 发表于 2018-12-16 21:20
学到了,谢谢楼主
YAO21 发表于 2018-12-16 21:23
感谢分享
璀璨夜 发表于 2018-12-16 21:41
感谢楼主分享,学到了
hh3016 发表于 2018-12-16 21:41
图显示不出来,软件 在哪里呢
lhjdeyy 发表于 2018-12-16 21:50
叫我怎么感谢你呢!!!
SimpleWu 发表于 2018-12-16 21:53
可以,很好用
stars-one 发表于 2018-12-16 22:15
IDA破解好难,学习了!
吾爱小萌新233 发表于 2018-12-16 22:31
感谢楼主分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-24 17:54

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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