吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 33248|回复: 168
收起左侧

[Android 原创] 删帖

    [复制链接]
Sean1994 发表于 2019-7-30 19:35
本帖最后由 Sean1994 于 2019-11-24 13:36 编辑

删掉帖子

免费评分

参与人数 81吾爱币 +74 热心值 +71 收起 理由
long930977 + 1 + 1 热心回复!
w394634587 + 1 + 1 谢谢@Thanks!
ll52wj1pjo + 1 + 1 谢谢@Thanks!
淡蓝的极光 + 1 + 1 菜鸡看不懂给大佬评个分表示支持
hukekelii002 + 1 谢谢@Thanks!
wuzhangchao + 1 + 1 老哥什么时候继续更新帖子吖
mxq1900 + 1 + 1 谢谢@Thanks!
漆黑的骨头 + 1 + 1 谢谢@Thanks!
llt299022 + 1 我很赞同!
zqguang3708 + 2 + 1 优秀啊老哥 点个赞
fenderp + 1 + 1 谢谢@Thanks!
静叶流云 + 1 + 1 谢谢@Thanks!
cp2018 + 1 热心回复!66666666666666666
xuexiyixiaxia + 1 + 1 我很赞同!
aa27619239 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
sxqcj007 + 1 + 1 我很赞同!
jay20070223 + 1 + 1 我很赞同!
uebian + 1 用心讨论,共获提升!
luoqj + 1 + 1 用心讨论,共获提升!
linwenhui + 1 + 1 谢谢@Thanks!
Aquila + 1 + 1 用心讨论,共获提升!
hexio + 1 我很赞同!
wuaisummer + 1 + 1 我很赞同!
叩叩叩哦 + 1 + 1 同怀念戴妃神机
qaz007 + 1 + 1 用心讨论,共获提升!
qaz003 + 1 + 1 谢谢@Thanks!
泰迪熊火火 + 1 + 1 谢谢@Thanks!
3xec3r + 1 + 1 用心讨论,共获提升!
stars-one + 1 + 1 我很赞同!
FireKeeper + 1 + 1 热心回复!
chen521bo + 1 谢谢@Thanks!
jnez112358 + 1 + 1 谢谢@Thanks!
wholdcat + 1 + 1 谢谢@Thanks!
5tsv + 1 + 1 谢谢@Thanks!
闭心自慎 + 1 热心回复!
chenqi1000y + 1 + 1 鼓励大佬优秀分享
小樱花与绘梨衣 + 1 谢谢@Thanks!
SomnusXZY + 1 + 1 热心回复!
huapeng147 + 1 + 1 用心讨论,共获提升!
xide97 + 1 + 1 热心回复!
踽踽独行 + 1 + 1 热心回复!
夏夜听雨 + 1 + 1 谢谢@Thanks!
吐槽户 + 1 + 1 我很赞同!
alos + 2 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
lendone + 1 我很赞同!
陈世界 + 1 + 1 我很赞同!
a3032805058 + 1 + 1 赞同。
fei8255 + 1 + 1 这个666,必须赞
a清风道长 + 1 + 1 谢谢@Thanks!
siuhoapdou + 1 + 1 谢谢@Thanks!
yywapj + 1 + 1 热心回复!
zyy22664488 + 1 我很赞同!
夏先森 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
陈吉 + 1 + 1 我很赞同!
majia4075669072 + 1 谢谢@Thanks!
18508468615 + 1 + 1 谢谢@Thanks!
奥斯特 + 1 + 1 谢谢@Thanks!
xjlong86 + 1 + 1 谢谢分享,学习了
Liang丶少 + 1 我很赞同!
zy1234 + 1 + 1 谢谢@Thanks!
笙若 + 1 + 1 谢谢@Thanks!
叼着奶瓶打天下 + 1 谢谢@Thanks!
nosilence + 1 + 1 用心讨论,共获提升!
qpvijidj + 1 + 1 用心讨论,共获提升!
N0LL + 1 + 1 谢谢@Thanks!
JUNGLE_CN + 1 + 1 我很赞同!
584菜鸟 + 1 + 1 谢谢@Thanks!
少林大虾 + 1 谢谢@Thanks!
mlj0381 + 1 + 1 谢谢@Thanks!
行者orz + 1 + 1 我很赞同!
zHiHz + 1 + 1 谢谢@Thanks!
rcmai -1 看完觉得楼主也是圈子中人,这个软件我知道是什么了
sunnylds7 + 1 + 1 热心回复!
Sinavis + 1 + 1 我很赞同!
lsrh2000 + 1 + 1 热心回复!
h1ck + 1 + 1 谢谢@Thanks!
dzj0821 + 1 + 1 谢谢@Thanks!
luochunyan + 1 + 1 谢谢@Thanks!
纵横、天 + 1 + 1 谢谢@Thanks!
众生之主 + 1 我很赞同!
cs0208 + 1 + 1 我很赞同!

查看全部评分

本帖被以下淘专辑推荐:

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

lm180180 发表于 2019-12-12 20:34
一个改机案例
6月份拿到一个口碑不错的商业改机案例,该案例只能运行在指定的手机,指定的rom,号称各大app无法检测,免root的改机框架。


我手上只有nexus6p,安装到手机上跑了一下,瞬间闪退,没有任何崩溃日志。但是这条日志出卖了它:



这明显是调用System.exit(0)主动退出。

静态分析



通过图片可以看到dex被混淆,字符串也被加密

解密字符串重打包
字符串解密往往是固定的smali格式:

    const-string vX, "加密后的字符串"
    invoke-static {vX}, Lcom/test/decString(Ljava/lang/String;)Ljava/lang/String;
    move-result-object vX
这个案例也不例外,所以编写一个脚本去匹配以上代码,然后调用解密代码(自己去源码里扣)解密字符串,然后把解密之后的字符串替换加密的字符串,然后再删除const-string vX, "解密之后字符串"以下两条指令,然后重打包即可(各位大佬若有更好的方案请告知)。当然我这里还加上了hook系统签名校验:

    private void hook(Context context) {
        try {
            DataInputStream is = new DataInputStream(new ByteArrayInputStream(Base64.decode(oriSign, 0)));
            byte[][] sign2 = new byte[(is.read() & 255)][];
            for (int i = 0; i < sign2.length; i++) {
                sign2[i] = new byte[is.readInt()];
                is.readFully(sign2[i]);
            }
            Class<?> activityThreadClass = Class.forName("android.app.ActivityThread");
            Object currentActivityThread = activityThreadClass.getDeclaredMethod("currentActivityThread", new Class[0]).invoke(null, new Object[0]);
            Field sPackageManagerField = activityThreadClass.getDeclaredField("sPackageManager");
            sPackageManagerField.setAccessible(true);
            Object sPackageManager = sPackageManagerField.get(currentActivityThread);
            Class<?> iPackageManagerInterface = Class.forName("android.content.pm.IPackageManager");
            this.base = sPackageManager;
            this.sign = sign2;
            this.appPkgName = context.getPackageName();
            Object proxy = Proxy.newProxyInstance(iPackageManagerInterface.getClassLoader(), new Class[]{iPackageManagerInterface}, this);
            sPackageManagerField.set(currentActivityThread, proxy);
            PackageManager pm = context.getPackageManager();
            Field mPmField = pm.getClass().getDeclaredField("mPM");
            mPmField.setAccessible(true);
            mPmField.set(pm, proxy);
            Log.i(TAG,"PmsHook success.");
        } catch (Exception e) {
            Log.e(TAG,"PmsHook failed.");
            e.printStackTrace();
        }
    }
这是jadx反混淆和解密字符串之后的效果,这下代码阅读性高了很多:


过授权、签名校验、系统认证、登录
这是一个厮杀的过程,本案例检验之处有非常多,so中也存在字符串加密和检验。当然这不是本篇文章重点,具体厮杀过程就不过多赘述。最后庐山真面目出现了:(手动打码)。

新机原理
绝杀技一:免root Hook
此案例通过编译xposed源码并且修改特征码,把Xposed相关名称改为系统名称,例如camera、email、phone。然后hook堆栈信息,把hook框架的堆栈过滤掉。然后把改名字的xposed集成至LineageOs源码中。然后通过魔改后的XposedBridge.jar编写Hook模块,这样就实现了免root集成hook框架。这样子真的可以为所欲为。

绝杀技二:全面Hook Android设备信息接口
这个不用多说,全面的Hook了java层所有获取设备信息的有关函数,包括文件读取的io重定向,附件中是我整理的Hook相关接口。

绝杀技三:伪造真实用户活动
各大厂商都在做风控,IP画像、设备画像、用户画像、手机号画像...,没用用户行为的设备,必然是非正常用户,肯定是过不了风控的,通过hook相关接口,每次新机填充不同的短信,通话记录,联系人,照片,启动时间,周边蓝牙、wifi,sensor的值随机化...

绝杀技四:基站、gps、ip位置一致
目前获取位置信息主要有基站、gps、ip位置,三个维度。改机必然是通过链接代理(vpn)来生成不同ip,这里就要保证每次基站和gps的位置要和IP的位置信息相差不大,这样每次新机都是一个新的地理位置。

绝杀技五:SysPropertyHook
Xposed只是java层的Hook,现在大多数设备指纹sdk都是native获取或者native和java层都获取,然后进行对比。这里通过Hook SystemProperties.set、Settings.System.put、Settings.Secure.put、Settings.Global.put。保证改机后/system/build.porp、System.xml、Secure.xml、Global.xml文件真实改变,保证native层通过getProp时候和java层获取的是一致的

新机流程
准备新机设备信息PhoneInfo
通过读取/assets目录下的设备信息集,随机生成一个设备信息,然后通过当前ip获取基带和gps的位置,并且生成用户信息。把这些信息全部写入到sdcard中的phoneInfo.json中。

完成Hook
通过读取sdcard中的phoneInfo.json的设备信息完成Hook,自此新机已经完成。
众生之主 发表于 2019-7-31 10:40
小小小小 发表于 2019-7-31 10:02
虽然看不懂在说些什么,不过感觉很厉害的样子
xiaoxin13570 发表于 2019-7-31 10:14
为什么有的软件有使用次数限制,我用应用变量  就可以变成新安装的应用,继续使用。
有的应用 用应用变量就不可以无限试用啊? 试用次数用完就是用完了。
QuentinX 发表于 2019-7-31 10:19
有点意思,收藏了
一人之下123456 发表于 2019-7-31 10:46
试着理解了一下,但还是难以看懂
梦在彼岸 发表于 2019-7-31 11:04
支持下有创造力的楼主,看不懂,先收藏了
kushideye 发表于 2019-7-31 11:10
ios换机到安卓的时候只有通讯录什么的,不过程序架构不一样,全息备份到新机也的确不太可能
luochunyan 发表于 2019-7-31 11:10
谢谢分享,学习了
cwz 发表于 2019-7-31 11:30
感觉很厉害
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-15 13:48

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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