web追蹤:如何用瀏覽器指紋鎖定你的身份

指紋是一個(gè)人的身份信息,在網(wǎng)絡(luò)上你通過瀏覽器訪問網(wǎng)站五辽,也會(huì)在網(wǎng)站留下自己的信息。有的人會(huì)覺得自己沒有登錄賬號(hào)厕隧,網(wǎng)站就不知道自己是誰奔脐。其實(shí)真有很多種方法知道你是誰。最簡單的就是記錄下你的ip地址吁讨。ip地址就含有足夠多的信息髓迎。其實(shí)關(guān)鍵還是因?yàn)閕p是穩(wěn)定的,可以通過關(guān)聯(lián)分析建丧、交叉分析確定你的身份排龄。那可以想一下,除了ip還有其他穩(wěn)定的信息嗎翎朱?其實(shí)有的橄维,例如你的上網(wǎng)習(xí)慣,只要有足夠多的數(shù)據(jù)拴曲,足以分析出來是否是你争舞。這些信息是潛在的而且不容易察覺的。但是這篇文章主要想講一個(gè)是澈灼,瀏覽器指紋竞川,偏向技術(shù)類的文章店溢。ip你有很多方式可以更換,但是只要你不是每次訪問這個(gè)網(wǎng)站就換一個(gè)瀏覽器委乌,而且也沒這么多瀏覽器給你換床牧,所以瀏覽器指紋可以算是一個(gè)穩(wěn)定的特征。

有些人把瀏覽器指紋分為1代遭贸、2代戈咳、2.5代,我是不太習(xí)慣這種說法壕吹,因?yàn)槿绻创^(qū)分的話著蛙,應(yīng)該是相互替代的關(guān)系的,但是其實(shí)它們是可以共用的算利。

最簡化版本的瀏覽器指紋就是cookie册踩,就是網(wǎng)站可以設(shè)置一個(gè)文件在你的瀏覽器上,并且可以讀取到它效拭,也就是說即使你換了ip暂吉,只要有cookie在,你就能被認(rèn)出來缎患。但是cookie是可以清除的慕的,或者使用無痕模式,退出后輕松清除cookie挤渔。

在HTTP協(xié)議中肮街,header包含了客戶端信息,內(nèi)容如下

{
"headers": {
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3",
"Accept-Encoding": "gzip, deflate, br",
"Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8",
"Host": "httpbin.org",
"Sec-Fetch-Mode": "navigate",
"Sec-Fetch-Site": "none",
"Sec-Fetch-User": "1",
"Upgrade-Insecure-Requests": "1",
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36"
}
}

解析一下這header頭的內(nèi)容:

Accept:客戶端可以接受的內(nèi)容判导,常見的html文件嫉父、圖片等。

Accept-Encoding : 客戶端可以接受的壓縮編碼類型眼刃。

Accept-Language :客戶端語言绕辖,其中q=0.9的意思是客戶端偏向的語言,越大表示客戶端越希望獲得的語言擂红。

Host:請求的域名仪际。

Sec-Fetch-Mode、Sec-Fetch-Site昵骤、Sec-Fetch-User這三個(gè)是chrome特有的树碱,所以當(dāng)出現(xiàn)了這三個(gè)的時(shí)候就可以知道客戶端為chrome瀏覽器。Sec-Fetch-Mode標(biāo)識(shí)訪問類型变秦,例如navigate表示自然訪問成榜,Sec-Fetch-Site標(biāo)識(shí)來源網(wǎng)站,可以知道是同源還是跨域蹦玫,Sec-Fetch-User標(biāo)識(shí)請求是否來自互動(dòng)赎婚,例如點(diǎn)擊了按鈕雨饺。如果是通過機(jī)器發(fā)出的請求,這個(gè)參數(shù)就是false惑淳,也就是0,則可以判斷是否是機(jī)器惡意請求饺窿。

Upgrade-Insecure-Requests :標(biāo)識(shí)客戶端樂于接受并且可以處理安全鏈接(https)歧焦;

User-Agent:這個(gè)是最為豐富的信息了,包含客戶端類型肚医、系統(tǒng)平臺(tái)绢馍、軟件版本等信息。通過這條信息可以用來處理例如區(qū)分各個(gè)瀏覽器肠套、系統(tǒng)的訪客舰涌。通過這條可以模糊的判斷身份。但是這個(gè)信息卻是可以隨便偽造和篡改的你稚。所以也不可信瓷耙。

那難道沒有牢靠的方法鎖定你的身份了嗎?當(dāng)然是有刁赖,這表主要介紹一種最簡單有效的方法——canvas指紋搁痛。任何普通開發(fā)者都可以掌握。

canvas指紋的原理如下

相同的HTML5 Canvas元素繪制操作宇弛,在不同操作系統(tǒng)鸡典、不同瀏覽器上,產(chǎn)生的圖片內(nèi)容不完全相同枪芒。在圖片格式上彻况,不同瀏覽器使用了不同的圖形處理引擎、不同的圖片導(dǎo)出選項(xiàng)舅踪、不同的默認(rèn)壓縮級別等纽甘。在像素級別來看,操作系統(tǒng)各自使用了不同的設(shè)置和算法來進(jìn)行抗鋸齒和子像素渲染操作硫朦。即使相同的繪圖操作贷腕,產(chǎn)生的圖片數(shù)據(jù)的CRC檢驗(yàn)也不相同。

知道了原理咬展,就懂得怎么實(shí)現(xiàn)了泽裳。很簡單,只要?jiǎng)?chuàng)建一個(gè)canvas破婆,然后繪制一個(gè)任意突然涮总,然后獲取它的base64編碼,就可以了祷舀。相同的瀏覽器瀑梗,訪問不同的網(wǎng)站烹笔,得到的編碼是一致的。而且這個(gè)特征是無法清除的抛丽。

防范的辦法也很簡單谤职,換個(gè)瀏覽器就行了。但是因?yàn)闉g覽器的可選范圍比較少亿鲜,而且用戶換瀏覽器的習(xí)慣也比較少允蜈,所以這個(gè)方法的還算是比較可靠。

至于應(yīng)用場景蒿柳,就有很多了饶套。例如你訪問了某個(gè)評測網(wǎng)站,看某款產(chǎn)品的評測垒探,這個(gè)網(wǎng)站記錄下了你的canvas指紋妓蛮,然后賣給電商網(wǎng)站。等你上電商網(wǎng)站的時(shí)候圾叼,你就能看到給你推薦你剛剛看到的產(chǎn)品了蛤克。

獨(dú)立博客:http://xianchen.cc

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市褐奥,隨后出現(xiàn)的幾起案子咖耘,更是在濱河造成了極大的恐慌,老刑警劉巖撬码,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件儿倒,死亡現(xiàn)場離奇詭異,居然都是意外死亡呜笑,警方通過查閱死者的電腦和手機(jī)夫否,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來叫胁,“玉大人凰慈,你說我怎么就攤上這事⊥斩欤” “怎么了微谓?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長输钩。 經(jīng)常有香客問我豺型,道長,這世上最難降的妖魔是什么买乃? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任姻氨,我火速辦了婚禮,結(jié)果婚禮上剪验,老公的妹妹穿的比我還像新娘肴焊。我一直安慰自己前联,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布娶眷。 她就那樣靜靜地躺著似嗤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪届宠。 梳的紋絲不亂的頭發(fā)上双谆,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天,我揣著相機(jī)與錄音席揽,去河邊找鬼。 笑死谓厘,一個(gè)胖子當(dāng)著我的面吹牛幌羞,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播竟稳,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼属桦,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了他爸?” 一聲冷哼從身側(cè)響起聂宾,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎诊笤,沒想到半個(gè)月后系谐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡讨跟,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年纪他,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片晾匠。...
    茶點(diǎn)故事閱讀 40,503評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡茶袒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出凉馆,到底是詐尸還是另有隱情薪寓,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布澜共,位于F島的核電站向叉,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏咳胃。R本人自食惡果不足惜植康,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望展懈。 院中可真熱鬧销睁,春花似錦供璧、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至冗栗,卻和暖如春演顾,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背隅居。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工钠至, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人胎源。 一個(gè)月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓棉钧,卻偏偏與公主長得像,于是被迫代替她去往敵國和親涕蚤。 傳聞我的和親對象是個(gè)殘疾皇子宪卿,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評論 2 359

推薦閱讀更多精彩內(nèi)容