網(wǎng)絡(luò)廣告代理商是如何通過(guò)Cookie收集用戶(hù)信息的
更多博文請(qǐng)關(guān)注:https://blog.bigcoder.cn
不知道大家有沒(méi)有這樣的經(jīng)歷,我在某寶上搜索一個(gè)商品,然后再打開(kāi)其它網(wǎng)站,它會(huì)非常“智能”的給我推薦同一商品。

這樣的操作大多都是因?yàn)镃ookie在搞鬼,在了解廠商這些騷操作前,我們先了解一下瀏覽器的同源策略。
一. 同源策略
由于瀏覽器默認(rèn)的同源策略只能獲取到“自己”的Cookie。
所謂的同源策略就是指A網(wǎng)頁(yè)設(shè)置的 Cookie,B網(wǎng)頁(yè)不能打開(kāi),除非這兩個(gè)網(wǎng)頁(yè)"同源"。所謂"同源"指的是"三個(gè)相同"
- 協(xié)議相同
- 域名相同
- 端口相同
瀏覽器的同源策略會(huì)限制瀏覽器如下行為:
(1) Cookie、LocalStorage 和 IndexDB 無(wú)法讀取。
(2) DOM 無(wú)法獲得。
(3) AJAX 請(qǐng)求不能發(fā)送。
嚴(yán)格意義上的同源策略需要協(xié)議、域名、端口都保持一致,但是Cookie的同源策略只需要保證域名一致就行,默認(rèn)情況下你訪問(wèn)https://zhidao.baidu.com產(chǎn)生的Cookie只有在訪問(wèn)zhidao.baidu.com這個(gè)三級(jí)域名(嚴(yán)格意義上.com .cn這種域名才屬于一級(jí)域名)上才能使用,只是因?yàn)槟J(rèn)將Cookie的Domain設(shè)置為當(dāng)前訪問(wèn)的域名。
但是很多情況下三級(jí)子域名之間也需要實(shí)現(xiàn)Cookie共享,例如:
https://zhidao.baidu.com
https://ditu.baidu.com
我們只需要在設(shè)置將Cookie的Domain設(shè)置為二級(jí)域名即可:

這樣我們只要訪問(wèn)的是baidu.com下任意三級(jí)域名網(wǎng)站,都能夠共享Cookie。
二. 廣告策略
2.1 站內(nèi)廣告
有了Cookie這樣一個(gè)寶貝,廠商們就只需要在Cookie中設(shè)置一個(gè)名為xxxxxId(或者是其它奇奇怪怪的名字)的一個(gè)Key,這個(gè)key后面跟著一段很長(zhǎng)的值,你的所有瀏覽行為都會(huì)與該值綁定,哪怕你并未登錄,廠商也能將你的用戶(hù)喜好和你的設(shè)備(瀏覽器)綁定。由于Cookie能夠設(shè)置過(guò)期時(shí)間,這樣廠商就能在你下次訪問(wèn)時(shí)推薦相似的商品。
2.2 跨站廣告
網(wǎng)站不能訪問(wèn)不同域名的 cookie。這一點(diǎn)是瀏覽器控制的。網(wǎng)站無(wú)法繞過(guò)這一點(diǎn)。所以,廣告一般是通過(guò) <iframe> 嵌入在正規(guī)的內(nèi)容網(wǎng)站中,這樣它通過(guò)自己的域名一樣能使用 cookie 存取用戶(hù)的瀏覽記錄。
用戶(hù)正在訪問(wèn)的的正規(guī)網(wǎng)站的域名為 A,廣告商的域名為 B。那么即使用戶(hù)瀏覽器地址欄顯示為A,但實(shí)際上瀏覽器做了兩次請(qǐng)求,一次給 A 為了顯示正常內(nèi)容,一次給 B 為了顯示廣告內(nèi)容。這樣的話 A 和 B 實(shí)際上都可以通過(guò)瀏覽器使用 cookies。區(qū)別在于,A 的 cookie 值只屬于A,B 的 cookie 值只屬于 B。下次用戶(hù)在進(jìn)入網(wǎng)站 C 里面如果還有 B 的<iframe>廣告,那么 B 就可以通過(guò)之前在 A 網(wǎng)站上做的記錄,給用戶(hù)精準(zhǔn)投放廣告。至于 B是怎么知道用戶(hù)在A上看過(guò)什么,那就是 A 和 B 之間的事了(就像某寶和某東在私底下有沒(méi)什么PY交易,誰(shuí)能知道呢)。
有可能 B 本身就是一個(gè)比較流行的網(wǎng)站,例如某寶和某東,它自己就可以記錄用戶(hù)習(xí)慣,然后再投到它的其他廣告里。這就是為什么你在某寶進(jìn)行了搜索,然后再新浪微博頁(yè)面上居然能看到該搜索有關(guān)的廣告。這就是因?yàn)樾吕宋⒉┑捻?yè)面上有一個(gè)<iframe> 顯示了淘寶的廣告。
舉個(gè)實(shí)際的例子,我們?cè)跒g覽百度、優(yōu)酷、天貓等網(wǎng)站時(shí),都能看到幾個(gè) .mmstat.com 這個(gè)域下的 Cookie

當(dāng)你在百度、優(yōu)酷、淘寶(阿里系)等進(jìn)行一系列的操作時(shí),.mmstat.com 已經(jīng)悄悄的通過(guò)三方 Cookie 把你的個(gè)人信息運(yùn)送到了他們那邊。 .mmstat.com 應(yīng)該就是阿里旗下的大數(shù)據(jù)營(yíng)銷(xiāo)平臺(tái)阿里媽媽旗下的域名(只是個(gè)人猜測(cè))。打開(kāi)阿里媽媽首頁(yè),可以看到,其號(hào)稱(chēng)是更懂消費(fèi)者的數(shù)據(jù)金礦,已經(jīng)建立起5億用戶(hù)的身份識(shí)別體系。你的每一次搜索、每一次購(gòu)買(mǎi)、都會(huì)讓它變的更精準(zhǔn),下一次你就收到更精準(zhǔn)的推薦。
三方 Cookie 只是眾多獲取你喜好信息的一種方式,只不過(guò)這種方式更便捷,成本更低。
三. 逐漸禁用的三方Cookie
蘋(píng)果公司前不久對(duì) Safari 瀏覽器進(jìn)行一次重大更新,這次更新完全禁用了第三方 Cookie,這意味著,默認(rèn)情況下,各大廣告商或網(wǎng)站將無(wú)法對(duì)你的個(gè)人隱私進(jìn)行追蹤。而微軟和 Mozilla 等也紛紛采取了措施禁用第三方 Cookie,但是由于這些瀏覽器市場(chǎng)份額較小,并沒(méi)有給市場(chǎng)帶來(lái)巨大的沖擊。
我們將正在訪問(wèn)的站點(diǎn)的Cookie成為第一方Cookie,你如你正在訪問(wèn)的baidu.com,那么所有baidu.com的Cookie就稱(chēng)為第一方Cookie;而那些通過(guò)內(nèi)嵌第三方代碼,或者請(qǐng)求三方API產(chǎn)生的Cookie就稱(chēng)為第三方Cookie。
一旦瀏覽器完全禁用第三方Cookie,現(xiàn)階段使用三方Cookie實(shí)現(xiàn)的技術(shù)方案都需要作出相應(yīng)改變。
3.1 前端打點(diǎn)

大多數(shù) Web 站點(diǎn)都會(huì)引用一些第三方 SDK 來(lái)進(jìn)行前端異常或性能監(jiān)控,這些 SDK 會(huì)通過(guò)一些接口將監(jiān)控到的信息上傳到他們的服務(wù)器。一般它們都需要標(biāo)識(shí)每個(gè)用戶(hù)來(lái)方便排查問(wèn)題或者統(tǒng)計(jì) UV 數(shù)據(jù),所以當(dāng)你一此請(qǐng)求這個(gè)站點(diǎn)的時(shí)候,它們可能會(huì)在你的站點(diǎn)上 set 一個(gè) Cookie,后續(xù)所有的日志上報(bào)請(qǐng)求都會(huì)帶上這個(gè) Cookie 。
由于一般這些第三方 SDK 都是用于監(jiān)控的通用服務(wù),它們肯定會(huì)擁有自己獨(dú)立的域名,比如 log.com,它在你的域名 mysite.com 下種下的 Cookie 就屬于第三方 Cookie。
3.2 無(wú)法追蹤轉(zhuǎn)化率

當(dāng)你查看一則廣告時(shí),該廣告會(huì)在你的瀏覽器中放置一個(gè) Cookie,表示你已經(jīng)看到它。如果隨后你進(jìn)入轉(zhuǎn)化階段(購(gòu)買(mǎi)、下載等),廣告主們需要能追蹤每一個(gè)他們投放到你網(wǎng)站上的轉(zhuǎn)化率,這樣他們才能計(jì)算投放的效果,從而作出優(yōu)化策略,如果你無(wú)法再追蹤廣告轉(zhuǎn)化率了,那么也很難再進(jìn)行投放了。
當(dāng)然,以上只是建立在你沒(méi)有進(jìn)行任何改變的基礎(chǔ)上,距離全面禁用三方 Cookie 還有一年多的時(shí)間,這應(yīng)該是一個(gè)足夠的時(shí)間讓你及時(shí)作出應(yīng)對(duì)。
3.3 智能廣告推薦消失
上文中依賴(lài)于三方Cookie的智能廣告推薦將會(huì)消失。
本文參考:

浙公網(wǎng)安備 33010602011771號(hào)