你知道吗?每次你在网上冲浪时,你的浏览器可能会无声无息地泄露你的信息。不是一两种,而是超过20种。这些信息可能包括你的地理位置、操作系统、浏览器版本,甚至你的设备是桌面还是移动设备。
那么,究竟是哪些信息被泄露了呢?又该如何防范呢?接下来的内容,BrowserScan将为你一一揭晓。
时间/位置
IP地址
IP地址是互联网上每个设备的唯一标识符,可以用来查找用户的大致地理位置。每当你访问一个网站,你的设备就会向该网站的服务器发送一个请求,这个请求中就包含了你的IP地址。
另外,当你在网页里进行视频聊天或者语言聊天的时候,设备之间通过WebRTC技术直接建立连接。WebRTC可能会泄露你的真实IP地址,即使你正在使用VPN或代理。
通过IP地址,网站可以知道你的大致地理位置(国家、城市、经纬度),甚至是你的网络服务提供商。如果没有适当的保护措施,恶意攻击者可能利用你的IP地址进行网络攻击,或者通过IP地址追踪你的网络行为。
DNS信息
DNS 信息是指你的设备如何将网站域名解析为 IP 地址的信息。
网站可以通过 WebRTC 或者 timing-allow-origin HTTP 响应头获取。这可以帮助网站优化内容分发,提高加载速度。然而,DNS 信息也可能被用来追踪你的网络行为,或者推断你的网络环境。
地理位置
地理位置是指你的设备的物理位置信息。网站可以通过 navigator.geolocation 对象获取,但需要你的明确许可。
这可以帮助网站提供基于位置的服务,如地图、天气预报等。然而,地理位置信息也可能被用来追踪你的行为,侵犯你的隐私。如果没有适当的保护措施,恶意网站可能会试图获取你的地理位置信息。
系统时间
系统时间是指你的设备当前的日期和时间。网站可以通过JavaScript的Date对象来获取这个信息。这可以帮助网站提供基于时间的服务,比如显示你的本地时间。
然而,如果你的系统时间与你的IP地址所在地的时间不一致,这可能暴露你正在使用VPN或代理。
本地时间/时区
网站可以查询IP地址对应的地理位置信息,从而推断出用户的时区。然后,结合UTC时间,可以计算出用户的当地时间。这种方式的准确性取决于IP地址的准确性以及IP到地理位置的映射的准确性。
软件信息
浏览器类型和版本
浏览器类型和版本信息可以告诉网站你正在使用的是哪种浏览器(如Chrome、Firefox等)以及浏览器的版本号。
这些信息通常包含在每个HTTP请求的User-Agent字段中。网站可以通过这些信息来提供适合你的浏览器的内容,或者提示你更新浏览器。然而,这也可能被用来识别和追踪用户,或者利用特定浏览器的漏洞进行攻击。
操作系统
操作系统信息可以告诉网站你的设备运行的是哪种操作系统(如Windows、MacOS、Linux、Android等)。这些信息通常也包含在User-Agent字段中。
网站可以通过这些信息来提供适合你的操作系统的服务,或者提示你更新操作系统。同样,这也可能被用来识别和追踪用户,或者利用特定操作系统的漏洞进行攻击。
Cookie
Cookie是一种小型数据文件,它们保存在你的设备上,用于保存你的个人设置、登录信息等。
每当你访问一个网站,浏览器都会将该网站的Cookie发送给服务器。这使得网站可以记住你的信息,提供个性化的服务。然而,Cookie也可能被用来跟踪你的网络行为,甚至在不良网站中,可能会被用来盗取你的个人信息。
语言设置
语言设置是指你的浏览器的首选语言。网站可以通过HTTP请求头中的Accept-Language字段或者navigator.language属性来获取这个信息。这可以帮助网站提供适应你的语言偏好的内容。
浏览器窗口大小
浏览器窗口大小是指你的浏览器窗口的宽度和高度。
网站可以通过window.innerWidth和window.innerHeight来获取这些信息。这可以帮助网站提供适应你的浏览器窗口大小的页面布局。
是否启用JavaScript
JavaScript是一种常用的网页脚本语言,如果被禁用,那么网页的很多功能将无法使用。
网站可以通过尝试执行JavaScript代码来检测是否启用了JavaScript。这可以帮助网站决定是否需要提供无JavaScript的备选内容。然而,如果JavaScript被禁用,这可能暴露你对隐私保护的关注,使得你可能成为特定攻击的目标。
是否启用了Cookies
Cookies是网站在你的设备上存储信息的一种方式,如果被禁用,那么网站的很多功能将无法正常工作。
网站可以通过尝试读写Cookies来检测是否启用了Cookies。这可以帮助网站决定是否需要提供无Cookies的备选方案。
是否启用了Flash
Flash是一种常用的网页插件,用于播放动画、视频等。如果Flash被禁用或者不存在,那么网站可以通过尝试使用Flash的JavaScript代码来检测。
这可以帮助网站决定是否需要提供无Flash的备选内容。然而,Flash有许多已知的安全问题,如果启用了Flash,你可能会面临更多的安全风险。
是否启用了Do Not Track
Do Not Track是一种浏览器设置,用于告诉网站你不希望被追踪。网站可以通过navigator.doNotTrack属性来获取这个设置。尊重这个设置的网站将不会追踪你的网络行为。然而,不幸的是,Do Not Track设置并不具有强制性,很多网站选择忽视这个设置。此外,Do Not Track设置本身也可能被用来生成你的设备指纹。
本地和会话存储
本地存储和会话存储是两种在浏览器中存储数据的方式,比 cookies 能存储更多的数据,并且更灵活。网站可以通过 window.localStorage 和 window.sessionStorage 获取这些存储中的数据。这可以帮助网站保存用户数据,提供持久化的个性化设置。然而,如果没有适当的保护措施,恶意网站可能会试图读取这些存储中的敏感数据。
硬件信息
屏幕分辨率
屏幕分辨率是指你的设备屏幕的像素宽度和高度。这可以帮助网站提供适应你的设备屏幕的页面布局和图像。然而,屏幕分辨率也可能被用来生成你的设备指纹。
媒体设备信息
网站可以获取用户的媒体设备信息,但需要用户的明确许可。获取的信息包括设备的类型(音频输入设备、音频输出设备、视频输入设备等)、设备的ID、设备的标签(需要用户已经授予过访问该设备的权限)等。
为了保护用户隐私,浏览器可能会对这些信息进行一定的限制。例如,除非用户已经授予了访问媒体设备的权限,否则deviceId和label属性的值会被隐藏。
字体和颜色深度
字体是你的设备上可用的字体类型,颜色深度是你的屏幕可以显示的颜色的位数。
网站可以通过Flash或者JavaScript的Canvas API来获取这些信息。这可以帮助网站提供更好的用户体验,比如使用用户设备支持的字体,或者根据颜色深度显示合适的图片。
硬件信息
硬件信息包括你的设备的处理器核心数、显卡型号等。网站可以通过navigator.hardwareConcurrency或者WebGL的DEBUG_RENDERER_INFO扩展来获取这些信息。
这可以帮助网站提供适应你的硬件性能的内容,比如根据处理器核心数分配任务,或者根据显卡型号选择合适的图形渲染方式。然而,硬件信息也可能被用来生成你的设备指纹,用于追踪你的网络行为。在某些情况下,硬件信息可能被用来发现你的设备的漏洞,用于针对性的攻击。
电池状态
电池状态包括你的设备的电池电量、充电状态等。
网站可以通过navigator.getBattery()方法来获取这些信息。这可以帮助网站提供适应你的设备电池状态的服务,比如在电量低时减少资源消耗。
触摸支持
触摸支持是指你的设备是否支持触摸屏操作。网站可以通过 "ontouchstart" in window 等方式检测。这可以帮助网站提供适应你的设备的交互方式,如触摸滑动等。
行为信息
鼠标移动和点击行为
鼠标移动和点击行为是指你在浏览网页时的鼠标操作。网站可以通过监听mousemove、mousedown等事件来获取这些信息。
这可以帮助网站提供基于用户行为的交互方式,比如显示提示、动态调整布局等。然而,鼠标移动和点击行为也可能被用来生成你的行为指纹,用于追踪你的网络行为。
键盘输入行为
键盘输入行为是指你在浏览网页时的键盘操作。网站可以通过监听keydown、keypress等事件来获取这些信息。
这可以帮助网站提供基于用户行为的交互方式,比如自动补全、热键等。然而,键盘输入行为也可能被用来生成你的行为指纹,用于追踪你的网络行为。
总结
随着技术的发展,网站能获取用户越来越多的信息,信息越多就越能生成一个精准的用户画像。当你还沉浸在网站为你提供的个性化内容的时候,个人信息也可能随之泄露。如果你此时拥有多个电商账号、社交账号,这些信息的获取无疑会对你的业务造成影响。所以,为了阻止浏览器泄露更多的信息,采取以下措施来保护账户的隐私和安全:
-
使用最新版本的浏览器:新版本的浏览器通常会包含最新的安全更新和隐私保护功能。
-
使用隐私模式浏览:大多数浏览器都提供了隐私模式或无痕浏览模式,在这种模式下,浏览器不会保存你的浏览历史、搜索记录、cookies等信息。
-
禁用或限制cookies:你可以在浏览器设置中禁用cookies,或者只允许你信任的网站设置cookies。
-
使用VPN或代理:这可以隐藏你的真实IP地址,但需要注意的是,一些网站可能会通过WebRTC等技术获取你的真实IP地址。
-
使用防跟踪插件:有一些浏览器插件,如Privacy Badger、uBlock Origin等,可以防止网站跟踪你的网络行为。
-
注意授权:当网站请求访问你的位置信息、摄像头、麦克风等时,你应该仔细考虑是否给予授权。
-
定期清理浏览器缓存:这可以清除可能被用来跟踪你的网络行为的信息。
-
使用HTTPS:尽量只访问使用HTTPS的网站,HTTPS可以保护你的通信内容不被窃听。
-
注意个人信息的分享:尽量不在网站上分享你的个人信息,如地址、电话号码等。
- 使用指纹浏览器:代理服务器+指纹浏览器,多账号拥有者的最佳方案。但是别忘了用BrowserScan检查浏览器指纹是否真实,是否有泄露真实IP地址。