在做某一款软件碰上vmp代码native抽取。。。遂之放弃。。。转到某一款同样类型的程序。。。
竟然发现,在主流的app中,换皮的程序竟然有那么多。。。也称之为马甲包。。。还有一些行内的龌龊行为。。。绝望。。。卧槽!
不扯淡了,直接正题。扯一下分析过程。
以下分析仅为个人学习用途,切勿用作为别的非法行为,本人概不负责!!!
分析过程
在真机以及虚拟机中测试,发现有款教育类的APP,在真机上是不需要登录就可以查看到某一些文章,但是有次数的限制,但是在虚拟机中就得百分百登录之后才能进行一些列的操作。然后就开始漫长的分析了。。。
通过分析他的so的native代码,发现在请求详细的接口中带有一些熟悉的字眼。。。1
&ticket=&randStr=&isXposed=0&isEmulator=0
我擦,这个不就是xposed和虚拟机吗???
从更深层次的想,我擦,某款app竟然使用的是百度的so,以及使用它的同样的反垃圾协议。。。
在天眼查上查找相关信息,竟然没有发现与百度有直接关系,反而是有竞争关系。。。
通过分析了几款百度的程序,发现绝大多数都是使用这套协议。那就意味着,怼了这个协议,那么百度通用的产品,基本都是一览无遗了。。。
怎么怼这个是后话,不扯了。。。
直接贴上代码了。
查询接口
虚拟机检测
这个为最简单而又常用的检测代码了。。。
Xposed框架检测
root检测就更简单了
直接检测1
2
3
4
5
6
7
8
9
10public static boolean checkSuperuserApk(){
try {
File file = new File("/system/app/Superuser.apk");
if (file.exists()) {
Log.i(LOG_TAG,"/system/app/Superuser.apk exist");
return true;
}
} catch (Exception e) { }
return false;
}
1 | public static boolean checkRootPathSU() |