好奇 B 站是如何追踪我的

9 小时 9 分钟前
 MagicalCarl

做了下面的实验:

  1. 在 iPhone 中下载 bilibili ,未登录且未开启跟踪的情况下刷某类冷门视频,卸载并重新安装 bilibili 后,首页的推荐出现了该类冷门视频的推荐(我这里称之为命中);切换 WiFi 和蜂窝网络后仍然能够成功命中推荐。系统中没有安装其他 bilibili 系的应用。
  2. 在 Android (小米)中下载了 bilibili 重复上述的 1 ,结果相似,且在设置中刷新广告 id 仍然能够命中,但在恢复出厂设置后重新安装,首页不再推荐该类视频。
2706 次点击
所在节点    程序员
17 条回复
mizuki9
8 小时 55 分钟前
小米有虚拟身份 ID 。应用程序通过此 ID 投放个性化广告,重置后广告会重新个性化推荐。这个可以在设置里直接重置,不用恢复出厂。
iPhone 不知道
xtreme1
8 小时 46 分钟前
keychain
artiga033
8 小时 43 分钟前
不懂苹果。

Android 这边的话,国内厂商都有自己的系统级广告 id ,然后 imei 、Wi-Fi 、蓝牙信息很多都是没有权限控制的。而且和你同一网络环境或者你附近的人的设备也会被用来无线/蓝牙扫描以建立和你的相对关系。
其次就是输入法,大部分被害妄想的“被监控”感都是因为输入法...
实际上参考浏览器指纹,根据这些拼凑的信息,只要能够一定概率推断出你是不是你就行了,并不需要完全准确,反正广告这种东西推送错了也不是什么致命的问题。
miyuki
8 小时 30 分钟前
wifi mac
beyondstars
8 小时 28 分钟前
设备指纹这块,只要 app 收集的数据足够多足够全,就有足够的把握判断前后两个实例是否是运行在同一台设备上。
DamonHu
8 小时 26 分钟前
禁止跟踪只是不能读取系统的 idfa 标识,但是可以自己根据系统时间戳之类生成随机的字符串类似于自定义标识。配合 keychain 或者 icloud 同步都可以在卸载后依旧保存在系统。重装后恢复就行了

keychain 的介绍[https://blog.hudd.cn/356.html]( https://blog.hudd.cn/356.html)
finab
8 小时 26 分钟前
生成了一个 uuid 当做设备标识符存放在 keychain 中,这个卸载不会移除,下次安装时读取。
ca2oh4
7 小时 54 分钟前
@finab 我就是说 pdd 怎么重新下载怎么有卸载前的登录态
tigerZhang
7 小时 39 分钟前
@xtreme1 正解
cwxiaos
7 小时 16 分钟前
除了 keychain ,还有设备指纹,也不知道读了什么,抓包研究过

```
https://app.bilibili.com/x/resource/fingerprint
```

这个 api 上报了数据之后,返回相同的 device id

```
{
"code": 0,
"message": "OK",
"ttl": 1,
"data": {
"bili_deviceId": "9C26755D7F8224E544255454395FB4A120230324001723EBAACB6F2A27D8EB23"
}
}
```

而且,/x/*之下的部分 api 会携带参数,导致即使 mitm 修改 deviceID ,服务端也会返回相同的推荐数据,研究至此就不浪费时间了,懒得写脚本去搞它了

直接安装的就不说了,keychain 删不掉,除非重置,而使用以下方法,仍然可以获取到正确的 device id

Livecontainer 安装 -> 新建容器&清空原容器数据和 keychain -> 使用新容器打开 app ,抓包仍然可以返回正确的 device id

目前测试可以避免跟踪的方法:

使用 livecontainer 安装 -> 卸载时删除容器 keychain&清空数据 -> 卸载 liveconatiner -> 使用 sidestore 等重新安装 livecontainer -> 重新安装 bilibili app
Hypixel
7 小时 7 分钟前
Android 上实现这个很简单,最基本的 ANDROID_ID 就能做到,这个卸载重装是不会变的,再结合其他的如 Widevine Device ID 基本上就能实现
cwxiaos
5 小时 54 分钟前
@cwxiaos 这是以前的白色版本,看了下现在的版本,这个 api 没了
lel020
5 小时 45 分钟前
@Hypixel 最基本的 ANDROID_ID 多少年前就获取不到了,Widevine 国内 app 应该没有使用这种东西的,
Domado
5 小时 23 分钟前
iOS 这边,能利用钥匙串,你卸载了还能保留追踪用户信息,安卓这边途径就更多了,身份 ID ,app suite ,设备识别码,写入信息到公共目录等等
catamaran
5 小时 4 分钟前
补充个跟这个无关的场景,厂家的数据是可以买卖的,比如你浏览了淘宝,京东会给你推相关的商品(只是举例)
Cheons
3 小时 32 分钟前
广告联盟,厂商数据是能互通的。
B 站 YouTube ,能互通。
flynaj
24 分钟前
是不是还是同一个 WiFi ,一家人一个人搜了某个东西,所有人都会受到相关广告

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1210847

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX