Web客户端追踪(上)—Cookie追踪

随着互联网络的广泛普及,数以亿计网民的网络行为数据早已成为最宝贵的资源,企业通过五花八门的各种手段了解网民的行为和隐私数据,用于广告投递、用户兴趣分析等,进而作为决策的依据,利用Web客户端对用户行为进行收集和追踪是重要手段之一。

一、 Web客户端追踪技术概述

Web客户端追踪,主要是指用户使用客户端(通常是指浏览器)访问Web网站时,Web服务器通过一系列手段对用户客户端进行标记和识别,进而关联和分析用户行为的技术。

实际上,只要通过Web进入互联网的海洋,Web客户端追踪几乎无时不刻不在发生。当你网购时,即便没有登录,关掉浏览器后购物车的物品也不会消失;当你访问其他新闻、娱乐网站时,弹出的广告往往都是近期浏览购物网站的类似商品;稍有意识的用户可能会不定时清空浏览器缓存、使用“无痕浏览”、“隐私保护模式”等,然而仍然不能阻止类似广告的洗脑。

image

现实世界可通过体貌特征、身份证件、生物特征(如指纹信息)等手段对用户进行唯一性识别,Web世界主要通过Cookies技术、浏览器指纹、WebRTC等技术进行识别。本文主要对Cookies技术进行介绍。

二、 典型追踪技术—Cookie追踪

1. Cookie简介

Cookie,有时也用复数形式Cookies,在Web世界中其实际上是用户浏览网站时,网站存储在用户浏览器上的一段信息,并在服务器和浏览器之间传递,用户与辨别用户身份和维持状态。通常是以cookies:user@domain格式命名的,user是你的本地用户名,domain是所访问的网站的域名。在现有Windows系统中,一般存放位置在C:\Users\user\AppData\Local\Microsoft\Windows\TemporaryInternet Files\文件夹下。

image

Cookie利用网页代码中的HTTP头信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。当你在浏览器地址栏中键入了服务的URL,浏览器会向服务器发送一个读取网页的请求,并将结果回显。在发送之前,该网页在你的电脑上寻找服务网站设置的Cookie文件,如果找到,浏览器会把Cookie文件中的数据连同前面输入的URL一同发送到服务器。

服务器收到Cookie数据,就会在他的数据库中检索你的ID,你的购物记录、个人喜好等信息,并记录下新的内容,增加到数据库和Cookie文件中去。如果没有检测到Cookie或者你的Cookie信息与数据库中的信息不符合,则说明你是第一次浏览该网站,服务器的CGI程序将为你创建新的ID信息,并保存到数据库中。

以添加购物车为例,Cookies的大致利用过程可表示为:

①、用户第一次访问购物网站:

image

②、用户第二次访问网站:

image

③、浏览器查看Cookies如下:

image

当然Cookie的用途还远远不止以上所述,我们日常工作中所能见到的第三方监测工具如doubleclick、99click等也都需要利用Cookie技术,网站分析工具如GA、百度统计、CNZZ等也需要利用Cookie。

2. Evercookie

以上所说的Cookie都是指HTTPCookies。HTTP Cookie是基于浏览器的,一方面当电脑有多个浏览器时,服务器会生成多个Cookie,虽然是同一个人,但服务器识别为多个用户。另一方面,同一台电脑多人使用同一个浏览器时,服务器也只会生成一个Cookie,虽然是多个人,但服务器识别为一个用户。HTTP Cookies有数量限制,大多数浏览器支持最大为4096字节的Cookie,而且只允许每个站点存储30或50个Cookie(不同浏览器支持的数量不同),当超过时,最早的Cookie便被删除。

有一种Cookie:FlashCookie可以跨浏览器共享,不管用户计算机上安装了多少个浏览器,FlashCookie都能够使所有得浏览器共用一个Cookie。Flash Cookie可以容纳最多10万字节的数据,远远超过HTTP Cookie的4096字节。所有浏览器都提供了清除HTTP Cookie的快捷方式,但FlashCookie没有这种快捷方式,并且其保存位置较为隐蔽,一般网民难以将其清除。

Evercookie是一个用于在浏览器中持久化Cookie的JavaScriptAPI。Evercookie故名思义其可以让Cookie存储在非Cookie目录,例如Flash Cookie和HTML5 Storage。简单的说,其为了防止用户通过清空浏览器缓存等方式清除已保存的Cookie,Evercookie将UserID和Cookie Data通过多种机制保存到系统多个地方(见下图),其中就有上述HTTPCookies、Flash Cookie——如开启本地共享对象(Local Shared Objects)甚至可以跨浏览器传播、Web History以及一些HTML5存储特性。如果用户删除其中某几处的Cookie,当Evercookie发现用某种机制存储的Cookie被数据将删除之后,它将利用其它机制创建的Cookie数据来重新创建仍然可以恢复Cookie,大多数用户对这些Cookie保存技术不甚了解,他们不大可能彻底清除某一Cookie。

c6

目前,其支持的存储机制如上图,开源代码:https://github.com/samyk/evercookie

3. Cookie同步

Cookie同步一般是指用户访问某A网站时,该网站通过页面跳转等方式将用户的Cookie发送到B网站,使得B网站获取到用户在A网站的用户隐私信息,然后通过RTB(Real Time Bidding)、AdNetwork等一系列平台进行有效的广告推送服务(此部分涉及SSP、DSP、RTB、DMP等一系列广告推送服务和平台)。

c7

如上图,用户通过浏览器访问A网站,浏览器将A网站的Cookie一同发送到A服务器,A网站服务器通过该Cookie获取到用户的跟踪ID信息,并构造一个包含用户ID信息的跳转URL,浏览器接收后进行页面跳转,跳转到B网站的同时将B网站的Cookie信息一同发送到B网站,B网站便可将该用户在A网站的信息和本网站的信息进行关联,从而进行后续的针对性的广告推送等服务。

研究人员通过访问了Alexa排名前1500网站,发现两个追踪者进行Cookie同步以后,可以把数据完全共享,就像是一个追踪者一样。利用Cookie同步可以一定程度防止用户清除Cookie,当用户清除同步网站一方的Cookie后,如果同步的另一方利用一定手段(如上述Evercookie)恢复了Cookie,则经过同步后可以将网站双方Cookie数据重新恢复关联。

c8

如上图,步骤1,用户访问A网站,其User ID为123,Cookie记录其历史记录(cnn.com,nyt.com)。步骤2,其与B网站进行Cookie同步,B网站的Cookie为ABC。此时B网站将两者进行关联,得知ABC用户在A网站的历史记录。步骤3,用户删除本地存储的Cookie,并重新浏览A网站,此时A网站之前的Cookie已经失效,便重新生成Cookie,其User ID为456,历史记录为yahoo.com等。步骤4,假设网站B利用Evercookie恢复了其Cookie(上图未表示),并重新进行Cookie同步,因其User ID都是ABC,此时便可将456的User ID和123的User ID进行关联,得知用户的所有历史记录。

不少安全工具甚至是浏览器都允许或者引导关闭追踪Cookie,Cookie追踪越来越受限制,浏览器指纹追踪渐渐成为了Web追踪的重要技术手段,且听下回分解。

c9

三、 参考资料

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,776评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,527评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,361评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,430评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,511评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,544评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,561评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,315评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,763评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,070评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,235评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,911评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,554评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,173评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,424评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,106评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,103评论 2 352

推荐阅读更多精彩内容