V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sky96111
V2EX  ›  分享发现

发现极光推送开始滥用媒体储存以存储用户 ID 用于跨应用追踪

  •  7
     
  •   sky96111 · 2021-05-12 19:09:27 +08:00 via Android · 6370 次点击
    这是一个创建于 1292 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天更新了 Bilibili,Onedrive 突然询问我是否要自动备份 jpush 的文件夹。我当时就困惑起来了,因为我用了存储空间隔离,只给了几个应用开放了写入 Pictures 文件夹的权限。

    看 jpush 里面是什么东西,好家伙,明明白白写在文件名上…jpush_uid.png

    是 png,但不能用相册打开,因为它是一个伪装成图片的文本文档。用文档打开后是一串奇怪的字符串,似乎不是 base64 编码的,搞不开。

    经逐个关最近更新的应用存储权限排查发现,这是 Bilibili 产生的,通过 LibCheck 比对,发现它更新了极光推送的原生库,版本为 libjcore273.so ,推测是这个版本加入的。

    几乎可以肯定的是,这个是极光在高版本安卓系统收紧存储权限的情况下,为了最跨应用最追踪用户 UID 的手段。

    建议彻底关闭 Bilibili 的存储权限。

    Screenshot_20210512-182811_质感文件.png

    Screenshot_20210512-183248_质感文件.png

    Screenshot_20210512-184231_LibChecker.png

    36 条回复    2021-05-22 00:32:50 +08:00
    Jirajine
        1
    Jirajine  
       2021-05-12 19:12:32 +08:00 via Android
    用存储空间隔离不要给任何目录的权限,很多国产应用都会上传相册缩略图。
    如果需要发图、存图,可以专门建一个临时目录,之后再手动移走。
    cairnechen
        2
    cairnechen  
       2021-05-12 19:14:21 +08:00
    这操作够骚的,不过极光推送确实是很多应用相互唤起的元凶,干出这事不稀奇
    est
        3
    est  
       2021-05-12 19:22:15 +08:00   ❤️ 1
    jpush 嘛。安卓进程的东南互保。
    sky96111
        4
    sky96111  
    OP
       2021-05-12 19:28:08 +08:00 via Android
    @Jirajine 基本都没给 除了要发图的,b 站其实不需要给权限,之前上传头像开了一下没关,现在直接移除隔离关权限了
    TrembleBeforeMe
        5
    TrembleBeforeMe  
       2021-05-12 19:47:28 +08:00
    感谢提醒,这就用存储空间隔离
    echo314
        6
    echo314  
       2021-05-12 19:55:52 +08:00
    唉,安卓机太多毒瘤,国内四大厂商又不愿意组成联盟来推高标准。
    HongJay
        7
    HongJay  
       2021-05-12 20:03:46 +08:00
    复现了
    Jirajine
        8
    Jirajine  
       2021-05-12 20:11:40 +08:00 via Android
    @sky96111 要发图的也别给,都会扫描上传相册缩略图机器学习,发现个什么违规内容乐子就大了。
    要么就从相册选好通过 content-provider 分享过去,不支持的话就从相册选好复制到一个临时目录,再从那个目录发。
    azh7138m
        9
    azh7138m  
       2021-05-12 20:27:49 +08:00
    笑死,还能这么操作

    顺便 ping @RikkaW
    dingwen07
        10
    dingwen07  
       2021-05-12 20:36:07 +08:00
    哔哩哔哩目前的 API 版本是 30,怎么可能写入外部共享存储。。。
    dingwen07
        11
    dingwen07  
       2021-05-12 20:37:01 +08:00
    @dingwen07 #10 没看清,是 Pictures 文件夹,好恶心啊
    dingwen07
        12
    dingwen07  
       2021-05-12 20:45:44 +08:00
    Android 11 无法复现
    loginbygoogle
        13
    loginbygoogle  
       2021-05-12 20:49:50 +08:00   ❤️ 2
    各种推送联盟才是国内 ANDROID 混乱不堪的主要元凶
    ronman
        14
    ronman  
       2021-05-12 20:52:35 +08:00 via Android
    请尽可能使用 play 版,目前什么权限不给都可以正常使用(除了部分功能,如下载)
    zjm947373
        15
    zjm947373  
       2021-05-12 21:14:48 +08:00
    miui 用户表示没有发现有这个文件
    工信部早就要求不能强制要求权限,bilibili 是可以不授权也能用的(除非你要发动态图片)
    国产 ui 也用不到 jpush,系统默认杀进程,只能用厂商推送吧
    toptyloo
        16
    toptyloo  
       2021-05-12 21:31:32 +08:00
    @dingwen07 #12 你更新了最新的 B 站国内版么,应该是可以复现的。
    douniwan5788
        17
    douniwan5788  
       2021-05-12 21:34:28 +08:00   ❤️ 1
    其实去 /sdcard 目录包括子目录里看看,各种.开头的隐藏文件,基本上都是各大 SDK 的用户 ID,根本删不过来……
    dingwen07
        18
    dingwen07  
       2021-05-12 21:39:16 +08:00
    @toptyloo #16 我 MIUI 上的是最新版的哔哩哔哩没有复现。测试了 OneUI TGY,复现了。
    honeycomb
        19
    honeycomb  
       2021-05-12 21:42:30 +08:00 via Android
    可以啊
    Lonely
        20
    Lonely  
       2021-05-12 21:48:36 +08:00
    @zjm947373 #15 杀进程不一定有用,我在 miui 12 上发现了一些 app,杀掉进程后又给拉起来了,用冰箱冻住了也能复活,厉害得很
    dingwen07
        21
    dingwen07  
       2021-05-12 21:55:44 +08:00
    看来是因为极光推送支持国内那些手机厂商的推送,所以只有在标准 Android 环境下才会出现
    jim9606
        22
    jim9606  
       2021-05-12 22:01:12 +08:00
    老早就知道许多 SDK 靠在 /sdcard 拉屎来跟踪用户了。对于不用发图的应用,早就把存储权限关了。

    但是遇到要发图的还是没办法,极少数应用可以靠系统相册分享 content provider 避开权限需求,大部分都不得不给,特烦。

    B 站还算好的,好歹 targetsdk=30,都算是被第三方 SDK 坑害的典型案例了。TX 那两个还是 29 ( Play 版本)。
    Lynvvood
        23
    Lynvvood  
       2021-05-12 22:32:12 +08:00 via iPhone
    好家伙
    sky96111
        24
    sky96111  
    OP
       2021-05-12 22:33:58 +08:00 via Android
    @dingwen07 安卓 11,Lineage OS,b 站版本 6.24.0,可能看版本,Play 版应该不会接这些奇怪的 SDK
    no1xsyzy
        26
    no1xsyzy  
       2021-05-12 23:51:26 +08:00
    建议直接删除应用,用浏览器看。
    dingwen07
        27
    dingwen07  
       2021-05-13 06:36:19 +08:00 via iPhone
    @sky96111 #24 Play 没有上架国内版,港台地区可以下“国际”版,比国内版少了一些功能
    paxol
        28
    paxol  
       2021-05-13 18:24:24 +08:00
    国内应用统一不更新
    另外这个查看 SDK 的 app 是啥
    sky96111
        29
    sky96111  
    OP
       2021-05-13 19:30:03 +08:00 via Android   ❤️ 1
    @paxol LibCheck
    imldy
        30
    imldy  
       2021-05-14 13:12:03 +08:00
    play 版无广告,功能简洁,一般够用。国内这帮应用……无力吐槽。
    Lightbright
        31
    Lightbright  
       2021-05-14 16:56:09 +08:00 via Android
    哇,这个 LibCheck 感觉很好用的样子
    q197
        32
    q197  
       2021-05-20 15:25:09 +08:00
    @ronman b 站下载默认就在无需权限的地方(自古以来就是),但是旧版客户端却要申请存储权限才能下载(从系统限制上来说这是多此一举),新版早就没有这个问题了
    q197
        33
    q197  
       2021-05-20 15:26:22 +08:00
    @mxalbert1996 最近的 3.x 版本相对于之前的 2.x 版本,体积一下翻了一倍多,功能不知道有什么区别?
    mxalbert1996
        34
    mxalbert1996  
       2021-05-20 23:37:32 +08:00 via Android   ❤️ 1
    @q197 3.0 用了新的 App Bundle 格式,网页上显示的是包含所有配置的资源和和所有 CPU 架构的原生库的大小,实际安装以后差不多也就一半。
    q197
        35
    q197  
       2021-05-21 09:15:37 +08:00
    @mxalbert1996 厉害了,不过 b 站 app play 商店不好下到,如果用 apkpure 这样的第三方软件安装不知道能不能享受这个效果
    mxalbert1996
        36
    mxalbert1996  
       2021-05-22 00:32:50 +08:00 via Android
    @q197 能啊,所以你下的是不能直接安装的 xapk,需要专门的应用来安装
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1138 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:16 · PVG 02:16 · LAX 10:16 · JFK 13:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.