Android版TIM内置浏览器会主动泄露用户IMEI序列号
国内公司开发的Android应用程序几乎都会读取用户设备的IMEI序列号以便分析应用的安装卸载和使用情况。
本身每台移动设备都有固定的IMEI序列号几乎不会变动,因此借助IMEI追踪用户要比Cookies的准确性更高。
而腾讯开发的TIM即时通讯工具亦会读取设备的IMEI 序列号,但是比较糟糕的是TIM内置浏览器会泄露IMEI。
实测TIM内置浏览器访问页面会提交IMEI序列号:
经网友提醒我们使用Android 版TIM并使用内置浏览器访问测试页面,在检查服务器日志后确实留下序列号。
也就是说Android版的TIM 不但自己读取序列号使用,还会直接把IMEI序列号发送给用户访问网站的服务器。
同时我们检查蓝点网的服务器日志发现实际上应该在挺早之前Android 版的TIM就已经会发送IMEI序列号了。

我们从服务器上截取的日志片段:
// 具体IMEI号我们已经隐藏结尾部分 [25/Sep/2017:22:28:34 +0800] "GET / HTTP/2" 301 0 "-" "Mozilla/5.0 (Linux; Android 5.1; OPPO R9tm Build/LMY47I; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043508 Safari/537.36 V1_AND_SQ_7.1.0_0_TIM_D TIM2.0/1.2.0.1692 QQ/6.5.5 NetType/WIFI WebP/0.3.0 Pixel/1080 IMEI/8615990********"
值得注意的是Android版QQ 虽会读取IMEI但不会在浏览时提交,同时iOS版TIM因权限问题无法读取序列号。
也就是说存在泄漏用户IMEI序列号的目前仅只有Android版TIM,腾讯其他产品诸如QQ和微信均没有此情况。
TIM的这种做法有什么危害:
对于国内应用程序读取IMEI序列号用于分析用户已司空见惯,但主动泄露用户IMFI给其他网站着实让人不解。
TIM这种做法似乎也只对广告网络有些好处, 因为广告网络可以借此确定用户然后推送更加精准的广告内容。
在这种情况下即使更换App和更换浏览器甚至是清空Cookies 删除缓存,广告网络依然还可以确定这就是你。
到时候不论你用手机看什么内容估计只要有广告模块就会显示相同的内容,对广告网络来说当然可以提高收入。
临时应对方法:
虽然不清楚Android版 TIM 这么做是无意的还是有什么目的,不过对于用户来说不论为什么都不是什么好事。
用户可以借助权限控制类的组件或者第三方软件禁止TIM读取 IMEI,当然禁止读取并不会影响你的正常使用。