当前位置:首页 > 黑客服务 > 正文内容

如何通过图标来识别网站用户指纹

访客4年前 (2021-04-16)黑客服务653

背景知识

现代浏览器提供了各种各样的功能来改善和简化用户体验。其中一个特性就是所谓的favicon:favicon是一个小的(通常是16×16或32×32像素)logo,由web浏览器使用,以可识别的方式标记网站。多数浏览器通常在地址栏和书签列表中的页面名称旁边显示favicon。

为了在他们的网站上提供favicon,开发者必须在网页的标题中包含一个属性。如果此标记确实存在,则浏览器会从预定义源请求图标,如果服务器响应包含可以正确呈现的有效图标文件,则浏览器会显示此图标。在任何其他情况下,都会显示一个空白的favicon。

<link rel="icon" href="https://www.freebuf.com/favicon.ico" type="image/x-icon">

favicon文件对于浏览器来说,必须是可以很容易访问到的。因此,它们被缓存在系统上一个单独的本地数据库中,称为favicon缓存(F-cache)。F-Cache数据项包括访问的URL(子域、域、路由、URL参数)、favicon ID和生存时间(TTL)。虽然这为Web开发人员提供了使用各种各样的图标来描绘其网站的各个部分的能力,但是它也导致了一种可能的跟踪场景。

当用户访问某个网站时,浏览器通过查找所请求网页的快捷图标链接引用的源来检查是否需要favicon。浏览器初始检查本地F-Cache中是否有包含活动网站URL的条目。如果favicon条目存在,图标将从缓存加载,然后显示。但是,如果没有条目,例如,因为此特定域下从未加载favicon,或者缓存中的数据已过期,则浏览器会向服务器发出GET请求,以加载站点的favicon。

威胁模型

本文将介绍一种可能的威胁模型,该模型允许为每个浏览器分配一个唯一的标识符,以便得出关于用户的结论,并且即使在应用了反指纹措施的情况下也能够识别该用户,例如使用VPN、删除Cookie、删除浏览器缓存或操纵客户端标题信息等等。

一台Web服务器可以判断是否已经加载了favicon,因此当浏览器请求网页时,如果favicon不在本地F-cache中,则会对favicon发出另一个请求。如果该图标已存在于F-Cache中,则不发送进一步的请求。通过组合浏览器特定URL路径的已传递和未传递favicon的状态,可以为客户端分配唯一的模式(标识号)。当网站重新加载时,Web服务器就可以根据客户端发送的favicon丢失请求来重建标识号,从而识别浏览器。

支持该攻击场景的浏览器如下(包含移动端浏览器):

关于Supercookie

Supercookie可以使用favicon来给网站的访问者分配唯一的标识符。跟传统的用户追踪技术不同,这种ID标识符几乎是可以永久存储的,而且用户无法轻易删除或修改。

值得一提的是,这种跟踪技术即使是浏览器处于匿名模式下也是可以正常工作的,而且无法通过刷新缓存、关闭浏览器、重新启动系统、使用VPN或安装AdBlockers来清除。

工具安装

Docker

要求:Docker守护进程

首先,我们需要使用下列命令将该项目源码克隆至本地:

git clone https://github.com/jonasstrehle/supercookie

接下来,更新supercookie/server/.env中的.env文件:

HOST_MAIN=yourdomain.com #or localhost:10080 PORT_MAIN=10080 ? HOST_DEMO=demo.yourdomain.com #or localhost:10081 PORT_DEMO=10081

现在,使用下列命令运行容器:

cd supercookie/server docker-compose up

此时,我们的Web服务器就已经在运行了。(https://yourdomain.com)

本地设备安装

要求:Node.js

首先,我们需要使用下列命令将该项目源码克隆至本地:

git clone https://github.com/jonasstrehle/supercookie

接下来,更新supercookie/server/.env中的.env文件:

HOST_MAIN=localhost:10080 PORT_MAIN=10080 ? HOST_DEMO=localhost:10081 PORT_DEMO=10081

现在,使用下列命令运行服务:

cd supercookie/server node main.js

此时,我们的Web服务器就已经在运行了。(http://localhost:10080)

工具演示

演示地址:【点我查看】

项目地址

Supercookie:【GitHub传送门】

参考资料

https://supercookie.me/workwise

https://supercookie.me/

https://www.cs.uic.edu/~polakis/papers/solomos-ndss21.pdf

https://heise.de/-5027814?

扫描二维码推送至手机访问。

版权声明:本文由黑客接单发布,如需转载请注明出处。

本文链接:https://therlest.com/106499.html

分享给朋友:

“如何通过图标来识别网站用户指纹” 的相关文章

洗米华被抓(沙美华最近怎么了)

据中国电子商务研究中心2021年11月26日23:49:12的最新发布,微博网友@魔鬼管理学 爆料。 平安夜来临之际,事件,在网上炒得沸沸扬扬,引发全网热议! 据悉,洗米华被抓后来我换了俱乐部。。。 1.洗米华出什么事了...

约茶app约茶APP

最新约茶app都是哪些?整理了30本这篇文章主要介绍了约茶app,包括约茶app ios下载,下面小编整理了约茶app的图文教程,看看约茶app苹果版详细步骤吧! 觉得网上的一些答 据新快网2021年10月20日03:31:27的新闻报道,微博网友@R卜傲晴 爆料。 平安夜来临之际,事件,在网上...

贾秀东个人资料简介(简历及图片)

贾秀东人物概况 本页面提供了贾秀东个人资料简介(简历及图片),贾秀东是谁?贾秀东个人简介资料完整设计了网页求职找工作编辑个人简历作品所需要的贾秀东网站常用模板元素,不保证贾秀东人物数据真实,任何问题请联系管理员调整。 贾秀东图片 贾秀东个人资料简介 贾秀东,中国国际问题研究所特聘研究员。1...

吃鸡鸭的屁股会有病吗?我非常爱吃鸡鸭的屁股,但经常吃会有病吗?另

吃鸡鸭的屁股会有病吗?我非常爱吃鸡鸭的屁股,但经常吃会有病吗?另 鸡鸭的肛门附近组织,布满大大小小的腺体,各类秽物与毒素都在这些腺体囤积;鸡鸭的肛门也有非常高密度的大肠杆菌,所以鸡鸭的屁股不是少吃的问题,而是不能吃.吃得少可能没觉出怎样,多了问题就显出来了.而且鸡鸭屁股的大肠杆菌会随着蛋生出来的时...

身份证信息被黑客盗取(黑客能把手机内身份证信息盗取吗)

一、身份证信息被黑客盗取(黑客能把手机内身份证信息盗取吗)方法总结 1、黑客通过手身份姓名能否窃取别人银行卡里。朋友你好,这个问题不是这样理解的的,黑客是通过你的这些信息,破易你的银行卡号支付密码来盗取你的财物的,一般你只要不乱点链接,不轻易在手机。黑客控制了手机,窃取了身份证号码手机号姓名等所有...

铁盖子可以放入高压锅蒸吗?装酱料的铁盖子,外面的涂层有些剥落,好

铁盖子可以放入高压锅蒸吗?装酱料的铁盖子,外面的涂层有些剥落,好 铁盖子可以放入高压锅蒸吗? 装酱料的铁盖子,外面的涂层有些剥落,好象也没锈,可以拿它盖严瓶子入高压锅蒸吗? 绝对不行!既危险又不卫生。盖住的瓶子在高压锅中加热,很容易形成压力差而爆炸;铁在高压锅中的水蒸汽作用下极易变成四氧化三...

评论列表

俗野卮酒
2年前 (2022-07-07)

10080PORT_MAIN=10080?HOST_DEMO=demo.yourdomain.com #or localhost:10081PORT_DEMO=10081现在,使用下列命令运行容器:cd supercookie/serve

拥嬉怯慌
2年前 (2022-07-06)

期,则浏览器会向服务器发出GET请求,以加载站点的favicon。威胁模型本文将介绍一种可能的威胁模型,该模型允许为每个浏览器分配一个唯一的标识符,以便得出关于用户的结论,并且即使在应用了反指纹措

边侣午言
2年前 (2022-07-06)

背景知识现代浏览器提供了各种各样的功能来改善和简化用户体验。其中一个特性就是所谓的favicon:favicon是一个小的(通常是16×16或32×32像素)logo,由web浏览器使用,以可识别的方式标记网站。多数浏览器通常

怎忘午言
2年前 (2022-07-07)

er-compose up此时,我们的Web服务器就已经在运行了。(https://yourdomain.com)本地设备安装要求:Node.js首先,我们需要使用下列命令将该项目源码克隆至本地

痴者只影
2年前 (2022-07-06)

过刷新缓存、关闭浏览器、重新启动系统、使用VPN或安装AdBlockers来清除。工具安装Docker要求:Docker守护进程首先,我们需要使用下列命令将该项目源码克隆至本地:git

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。