关于QQ读取Chrome历史记录的”澄清“
先放结论,QQ会读取包括但不限于Chrome、Chromium、360极速、360安全、猎豹、2345等浏览器的历史浏览记录。
今天看到群里有同学发了一篇v2ex上的帖子(https://www.v2ex.com/t/745030),说QQ会读取Chrome的历史记录,被火绒自定义规则拦截了,本来我是不信的,但是他说他复现了,而且是QQ登录10分钟后才会去访问。
这我就想去验证下了,开虚拟机装QQ、Chrome,然后打开Process Monitor开始等。规则简单的过滤下。
果然看到了读取AppData\Local\Google\Chrome\User Data\Default\History等目录的操作。
而且时间也是恰到好处的十分钟。
这是实锤了QQ和Chrome过不去啊,这我可不信,把规则去掉,重新翻了一下才发现果然是冤枉QQ了啊。
受害人之多令人震惊,仔细一看,这玩意是遍历了Appdata\Local\下的所有文件夹,然后加上User Data\Default\History去读啊。User Data\Default\History是谷歌系浏览器(火狐等浏览器不熟,不清楚目录如何)默认的历史纪录存放位置,Chrome中枪也就很正常了。
然后就该研究研究QQ为啥要这么干了,读取到的浏览器历史记录又拿来干啥了呢?
挂上x32dbg,动态调试找到位置。
然后去IDA里直接反编译出来,如下(位置在AppUtil.dll中 .text:510EFB98 附近)
这一段的逻辑还是很好看懂的,先读取各种 User Data\Default\History 文件,读到了就复制到Temp目录下的temphis.db。回去看下Procmom,果然没错。
再之后的操作就简单了,SQLite读取数据库,然后“select url from urls”,这是在干什么大家都懂哈。后面就不接着讲了,有兴趣的可以自己接着看。
结论,QQ并不是特意读取Chrome的历史记录的,而是会试图读取电脑里所有谷歌系浏览器的历史记录并提取链接,确认会中招的浏览器包括但不限于Chrome、Chromium、360极速、360安全、猎豹、2345等浏览器。此处@腾讯QQ
晚上来编辑一下,刚才去试了下TIM,果然经典重现,而且比QQ还离谱,不多说直接上图。
关于QQ/TIM窥探浏览器历史记录的临时解决方案
数码 10小时前 6142阅读241点赞97评论
首先,感谢 qwq簞純 大佬给出的相关分析,如果你还不了解这件事情的经过,可以先移步:https://www.bilibili.com/read/cv9305833/
简单地说,QQ/TIM这样的行为有可能是在监视用户的浏览器历史记录。
这里以火绒安全软件作为示例,有其他有HIPS功能的安全软件可以参考。
首先安装并打开火绒,在右上角点开找到安全设置打开:
点开高级防护中的自定义防护:
点击右下角的添加规则,可以看到如下界面:
点击右下角的添加保护对象:
在文件规则的下面一个框中输入 “ *\User*Data\Default* ”,如图所示,不要引号,星号要有。下面保护的动作全部勾选,注意下方选择“询问我”而不是“直接阻止”。
写完后,点击保存,再点击保存,你就有了一条保护浏览器历史记录的规则,确认后面的状态是如图所示的启用状态。
回到首页:
进入防护中心,点左下角的高级防护,并确认自定义防护处于如图所示的开启状态:
进行到这里,你就能保护浏览器记录被读取。
但由于我们刚刚没有配置自动处理的规则,浏览器自己访问历史记录或者在这个文件夹下的其它配置信息也会被拦截:
此时你需要注意,发起程序是否是浏览器本身,如果是的话,勾选“记住本次操作,下次自动处理”,然后点允许。之后浏览器本身访问就不会被拦截了。
但如果,是其它程序访问,包括但不限于QQ/TIM,你会看到类似下面的提示,发起程序不是浏览器:
此时,就要勾选自动处理,并按阻止。
常用的正常软件和流氓软件,试图访问历史记录,并被设置自动处理后,你就几乎不会看到这些拦截访问浏览器记录的弹窗了,十分安静。
值得注意的是,有些软件内置一个浏览器,比如本文开头提到的 qwq簞純 大佬放出的截图中,QQ还访问了GOG平台内置的浏览器的历史记录。如果遇到这类内置浏览器的程序,访问的也是自己的目录,请选择放行,否则可能会导致不能正常使用。