网站可以捕获哪些识别信息?

时间:2020-03-05 18:59:58  来源:igfitidea点击:

如果网站所有者希望尽可能多地跟踪谁是他们的用户,则他们可以捕获(以及如何捕获)什么。我们可能想了解这一点,以便在我们创建的网站上捕获信息,或者以用户身份阻止网站在我们捕获数据。

这是一个开始清单,但是我敢肯定我错过了一些重要的清单:

  • 引荐来源网址(在哪个网页上有我们访问此链接所获得的链接)。这是一个HTTP标头。
  • 我们正在浏览的机器的IP地址。 HTTP标头提供了此功能。
  • 用户代理(我们使用的浏览器)。这是一个HTTP标头。
  • 上次访问时放置了Cookie。这是一个标头,仅当cookie放置在较早的位置且未被用户删除时才可用。
  • Flash Cookie位于上一次访问中。一些用户关闭了cookie,但很少有人知道如何关闭Flash cookie。尽管它依赖于Flash,但其工作原理类似于普通的cookie。
  • 网络错误。在由第三方提供服务的页面上放置一些小的东西(例如透明的单像素GIF)。某些第三方(例如DoubleClick)将拥有自己的Cookie,并且可以与用户进行的其他访问相关联(收费!)。

这些是我想到的常见问题,但一定有很多不同寻常的问题。例如,这:

  • 用户时钟上的时间。使用JavaScript进行传输。

...在这里阅读之前我从未听说过。

稍后添加(阅读此内容后):

请尝试每个答案仅输入一个项目,然后我们可以使用投票来筛选出更好/更有趣的项目。下面的列表可能不太有效。

嗯...下一次我问这样的问题,我会做得更好。

这是我得到的一些最佳答案:

  • James指出IE传输.NET框架版本。
  • AviewAnew指出,我们可以找到我们访问过的网站。
  • Mecki指出可以确定屏幕分辨率。
  • Mecki还指出,可以通过创建一个隐藏字段,然后使用JavaScript读取它来确定浏览器缓存的任何自动填充信息。
  • jjrv指出Flash可以列出用户计算机上的字体。
  • 肯特指出,我们可以找到一个人访问过哪些网站。
  • Silver Dragon指出我们可以使用Flash和AJAX确定鼠标在浏览窗口中的位置。
  • Jim指出,我们可以通过HTTP标头告诉用户在浏览器中配置的语言。
  • 吉姆还提到,我们可以检测到人们是否在使用Greasemonkey或者类似的东西来修改页面。

解决方案

回答

.NET框架版本是在IE中的用户代理中传输的。

回答

  • 浏览器可以支持JS吗
  • 浏览器可以支持Flash吗
  • 操作系统平台
  • 屏幕分辨率
  • 支持CSS
  • 支持表

回答

  • 有一个标头可以包含有关用户正在使用的代理服务器的信息,并且还可以包含用户的IP地址(在这种情况下,另一个IP是代理服务器中的一个)
  • 屏幕分辨率,操作系统,颜色深度,任务栏的大小(比较最大分辨率和当前分辨率)(如果启用了Java),抗锯齿字体,插件均通过Java脚本安装
  • Java applet也可以为我们提供大量信息,但是我不知道是什么。
  • 我们访问过的网站
  • 本地网络的详细信息,例如活动主机,Web服务器。纸还概述了逐行打印,逐行路由器修改

所有这些都假设攻击者没有执行任意代码

回答

Flash可以为我们提供用户计算机上的字体列表等等。当鼠标悬停在广告上时,Javascript可以发送信息,而无需单击它。我们还可以获取窗口大小,网站是否在框架中打开,是否阻止了弹出窗口或者特定插件,查找Javascript功能可以判断用户代理标头是否正确或者伪造...

回答

对原始内容的修改:

  • 可以逃脱(我认为在某些浏览器中是一种选择)
  • 只有通过代理才能避免(javascript可以通过聪明的环顾来克服这个问题)
  • 是不可靠的,容易伪造的。
  • 并假设它没有被浏览器关闭(会话cookie)擦除,并且cookie位于相同的域/路径中

真正讨厌的是

  • 使用javascript探测网络/局域网
  • 使用javascript从防火墙后面访问防火墙并调整其设置(不要开玩笑)
  • 使用"访问的链接"的功能来确定访问了哪些URL列表。 (深厚的历史探测!!)
  • 天哪知道用户使用Windows / IE / ActiveX怎么办

回答

一些其他信息,可能感兴趣:

  • 使用ip地址,可以解析主机名,IP所属的网络提供商/组织以及大致的地理位置。
  • 使用引荐来源网址,指定客户端进行的查询列表以及一种可靠的Cookie机制,可以解析访问者进行的路径(甚至通过AJAX和/或者转发页面也可以点击到其他用户)
  • 结合使用AJAX和Flash,可以捕获浏览窗口中的鼠标位置
  • 用户代理可能包含有关操作系统,已安装的.NET框架和其他好奇心的信息

回答

  • 通常,我们可以通过" Accept-Language" HTTP标头确定用户使用哪种语言。
  • 我们可以通过查看" Accept" HTTP标头来确定是否安装了某些应用程序和浏览器插件。
  • 浏览器版本/补丁程序级别和.NET框架版本通过" User-Agent" HTTP标头提供。
  • ISP /雇主和通过IP地址的地理位置。
  • 是否通过CSS和/或者定时加载事件访问了特定的URL。如果特定网站具有用户特定的URI,则这可能会透露我们是否是该网站上的特定用户。
  • 通过测量em和/或者Flash,可以使用哪些字体。
  • 屏幕分辨率,窗口大小,时区(通过JavaScript)。
  • 通过JavaScript移动鼠标和击键的位置。例如,即使他们没有点击"提交",我们也可以看到他们在文本框中键入的内容。
  • 许多UserJS / Greasemonkey脚本会泄漏信息(例如,如果我们过滤掉某些人,则为其配置的网站可能会找出谁)。

回答

Javascript不仅可以获得时间信息,而且可以获得更多信息。例如。屏幕分辨率(+色深)就是其中之一。

请参阅使用JS获取屏幕分辨率

JS可以捕获的所有内容,都可以使用AJAX进行传输,而无需用户执行任何交互。其他示例是(并非所有示例都适用于所有浏览器):

  • 它可以查看浏览器历史记录,例如如果我们后退或者前进,浏览器将使用哪个URL。
  • 浏览器的语言(请注意:通常,HTTP请求中还会包含我们请求的页面的首选语言列表。但是,此列表是用户可以在许多浏览器的首选项中进行编辑的,而JS实际上可以找出我们要翻译的语言浏览器正在界面中使用)
  • 如果浏览器自动填写表单字段(例如电子邮件,用户名等),则JS实际上可以在我们提交表单之前就已经读取浏览器在这些字段中输入的内容(因此,它甚至可以读取浏览器在此处预先填写的内容,即使我们从未提交过该表格)。

Java applet还可以收集一些信息并将其传输,尽管那里没有太多我们无法获得的信息。由于很容易获得访问者的IP,因此可以找出他正在使用的在线服务(在IANA(美国)或者RIPE(欧洲)等地址服务中查找IP),并且有些服务可以将IP转换为国家,因此可以找出用户当前最有可能位于的位置。

回答

如果我们担心自己的人身安全(我不确定那是否是我们真正要得到的,因此,如果这被误导,我深表歉意),我们可以随时使用Tor网络。如果使用Firefox,则可以使用Torbutton一键启用。它具有禁用Flash的优点(有些缺点),因为否则无法防止Flash信息泄漏。

回答

我需要挖掘链接,但是如果用户使用的是IE,并且安装了常用软件,则可以确定要安装的软件。

回答

据我所知,有可能通过javascript获取剪贴板数据。不确定这些天默认情况下的可能性如何,但是不久前风靡一时。我相信IE仍然允许它。

人们习惯于将非常重要的数据保留在剪贴板中,因此这很糟糕。