首页
社区
课程
招聘
3
[深度]去除有米内嵌广告
发表于: 2015-10-18 18:40 13560

[深度]去除有米内嵌广告

2015-10-18 18:40
13560

之前看了论坛@arsusanh 的一篇分析文章《内嵌有米广告去除广告和所有权限》,觉得深入到了系统底层去解决这个问题,顿时来了兴致,决心实践一下,手头正好有一个内嵌了有米广告的小工具mylittlesecret.apk,曾经试过改“http://”地址,改“layout_width、layout_height”的值,都没成功。这次按照文章说的方法,删除掉广告必须依赖的几个权限:
   <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
然后搜索检查以上几个权限的地方,比如在反编译后的文件夹内搜索:
android.permission.READ_PHONE_STATE
其中一行的结果如下:
.method static b(Landroid/content/Context;)Z
    .locals 2

    :try_start_0
    invoke-static {p0}, Lnet/youmi/android/appoffers/bm;->a(Landroid/content/Context;)I

    move-result v0

    const/4 v1, 0x4

    if-lt v0, v1, :cond_0

    const-string v0, "android.permission.WRITE_EXTERNAL_STORAGE"

    invoke-static {p0, v0}, Lnet/youmi/android/appoffers/bm;->a(Landroid/content/Context;Ljava/lang/String;)Z
    :try_end_0
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0

    move-result v0

    :goto_0
    return v0

    :cond_0
    const/4 v0, 0x1

    goto :goto_0

    :catch_0
    move-exception v0

    const/4 v0, 0x0

    goto :goto_0
.end method
按照文章所说的方法,我将const/4 v0, 0x0 改为 const/4 v0,0x1来伪造达到权限,全部作了如此修改之后,重新建立apk安装后还是会出现有米广告的界面。至此我认为这个安卓文件植入的有米广告具有深入研究的价值,所以发出来供大家研究揣摩,更希望有从事开发工作的技术人员帮忙全面分析一下,究竟这个文件中的有米广告应该怎么修改才能彻底的去掉。同时把修改成功后的文件发上来学习参考。下面是mylittlesecret.apk的下载地址和出现的广告界面(安装后不会马上出现广告,一般在打开界面停留几分钟之后跳出):
http://pan.baidu.com/s/1pJ7Xygr
本文提供的apk仅为研究程序本身,如喜欢这款软件请联系作者获取最新版本或捐助开发者。


[注意]看雪招聘,专注安全领域的专业人才平台!

上传的附件:
收藏
免费 3
支持
分享
赞赏记录
参与人
雪币
留言
时间
飘零丶
为你点赞~
2024-5-31 05:48
shinratensei
为你点赞~
2024-5-31 05:39
PLEBFE
为你点赞~
2023-2-25 03:45
最新回复 (11)
雪    币: 335
活跃值: (611)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
清除不应该出现代码与sdk。。。
2015-10-20 09:20
0
雪    币: 1385
活跃值: (1636)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
在反编译后的文件夹内搜索,你用的工具是啥啊?
2015-10-20 10:22
0
雪    币: 34
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我用的Apktool
2015-10-20 13:20
0
雪    币: 34
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
按常规应该是这样的,这就是这个文件不同之处,希望你亲自验证。
2015-10-20 13:22
0
雪    币: 26
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
dfhb ffffffffffffffffffffffffffffffff
2015-10-21 15:14
0
雪    币: 190
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
有“发送已安装应用信息”行为嘛?
2015-10-21 18:36
0
雪    币: 41
活跃值: (699)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
主要的广告都在主界面上,删除 com.evan.android.mylittlesecret.Explorer文件中下边两行代码就是了
        AdManager.init("15fbf75574cdb037", "866f1dae8cc3b512", 30, false);
        AppOffersManager.init(this, "15fbf75574cdb037", "866f1dae8cc3b512", false);
上传的附件:
2015-10-22 14:17
0
雪    币: 34
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
真厉害!你已经成功去掉了广告,可是按照你说的方法,我不能同时搜索到com.evan.android.mylittlesecret.Explorer 和 AdManager.init,以及 “15fbf75574cdb037”, “866f1dae8cc3b512”, 这几项都是独立在不同的文件里,请问你是用什么软件反编译的,还有我用apktool无法再反编译你修改完的apk,能否把你用到的软件名字和具体反编译步骤发上来呢,多谢了。我目前的系统已经安装framework-res.apk 和 jdk1.6 、jre,反编译工具使用apktool,自带的反编译和打包签名一体的。
2015-10-24 11:34
0
雪    币: 41
活跃值: (699)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
apktool版本 2.0.2
jdk版本 1.8
jre 1.8
直接用apktool解包 打包的,你升级到最新的版本试试
具体步骤是:
apktool解包apk,
删除 Explorer.small文件的以下两行:
144行:invoke-static {v0, v1, v2, v3}, Lnet/youmi/android/AdManager;->init(Ljava/lang/String;Ljava/lang/String;IZ)V

977行:invoke-static {p0, v1, v2, v3}, Lnet/youmi/android/appoffers/AppOffersManager;->init(Landroid/app/Activity;Ljava/lang/String;Ljava/lang/String;Z)V
apktool重新打包,签名
2015-10-25 09:42
0
雪    币: 41
活跃值: (699)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
Explorer.smali 文件具体位置:
解包后文件夹位置\smali\com\evan\android\mylittlesecret\Explorer.smali
2015-10-25 09:43
0
雪    币: 34
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
这次应该差不多了,回去试试,感谢跟踪指导,好人一生平安!
2015-10-30 11:50
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册