首页 > 编程知识 正文

浏览器指纹识别,什么是浏览器指纹候鸟浏览器指纹

时间:2023-05-04 06:13:04 阅读:285418 作者:3249

什么是浏览器指纹?

“浏览器指纹”是一种通过浏览器对网站可见的配置和设置信息来跟踪Web浏览器的方法,浏览器指纹就像我们人手上的指纹一样,具有个体辨识度,只不过现阶段浏览器指纹辨别的是浏览器。获取浏览器具有辨识度的信息,进行一些计算得出一个值,那么这个值就是浏览器指纹。辨识度的信息可以是UA、时区、地理位置或者是你使用的语言等等,你所选取的信息决定了浏览器指纹的准确性。

指纹采集

浏览器指纹是由许多浏览器的特征信息综合起来的,其中特征值的信息熵也是不尽相同。

每个浏览器的用户代理字符串

浏览器发送的HTTP ACCEPT标头

屏幕分辨率和色彩深度

系统设置为时区

浏览器中安装的浏览器扩展/插件,例如Quicktime,Flash,Java或Acrobat,以及这些插件的版本

计算机上安装的字体,由Flash或Java报告。

浏览器是否执行JavaScript脚本

浏览器是否能种下各种cookie和“超级cookie(super cookies)”

通过Canvas指纹生成的图像的哈希

WebGL指纹生成的图像的哈希

是否浏览器设置为“Do Not Track”

系统平台(例如Win32,Linux x86)

系统语言(例如,cn,en-US)

浏览器是否支持触摸屏

Canvas指纹

Canvas是HTML5中的动态绘图标签,也可以用它生成图片或者处理图片。即便使用Canvas绘制相同的元素,但是由于系统的差别,字体渲染引擎不同,对抗锯齿、次像素渲染等算法也不同,canvas将同样的文字转成图片,得到的结果也是不同的。

AudioContex指纹

AudioContext指纹和Canvas类似也是基于硬件设备或者软件的差别,来产生不同的音频输出,然后计算得到不同的hash来作为标志,当然这里的音频并没有直接在浏览器中播放出来,只需要拿到播放前的处理数据就行。

WebRTC

WebRTC(网页实时通信,Web Real Time Communication),是可以让浏览器有音视频实时通信的能力,它提供了三个主要的API来让JS可以实时获取和交换音视频数据,MediaStream、RTCPeerConnection和RTCDataChannel。当然如果要使用WebRTC获得通信能力,用户的真实ip就得暴露出来(NAT穿透),所以RTCPeerConnection就提供了这样的API,直接使用JS就可以拿到用户的IP地址。

如何防范

如果你没有足够专业的知识或者非常频繁更换浏览器信息的话,几乎100%可以通过浏览器指纹定位到一个用户。所以我们还是需要类似候鸟浏览器这种专业的软件来实现浏览器指纹的伪装。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。