數字隱私和流量分析那些事兒

达摩俱乐部
·
·
IPFS
·

流量分析能為網站提供關鍵運營數據,大型成熟的網站都有不同類型的流量分析。互聯網行業常用Analytics來描述流量分析,實現方式有多種:瀏覽器端、網頁端、網絡環節、服務器端。本文只是簡單掃盲,歡迎各位行家拍磚。

瀏覽器端

比如你的瀏覽器安裝了某種流量分析插件,那麼這個插件可能將你的所有瀏覽數據傳到分析公司的數據庫,常見的如SimilarWeb . 如果你的瀏覽器裝有流量分析插件,那麼無論你是通過代理、VPN、Tor訪問網絡,你的真實IP地址、操作系統、瀏覽器指紋等信息都會被分析公司蒐集。很明顯瀏覽器端的流量分析危險等級最高,這也是為什麼某些極權政府熱衷於推廣國產瀏覽器的原因。詳見這裡。

Cookies

網頁端的流量分析通常是通過cookies和網頁插件來實現的。 Cookies是很多網站必不可少的元素,但凡要你登錄操作的網站都需要cookies,它是網站分發給你的一個臨時記號。

打個比方,你晚上去蘭桂坊這樣的夜店街玩,每進一個場子,夜店保安就會在你手臂上蓋一個他們特有的圖案,這樣你出去吃完燒烤或打個電話回來,門口保安檢查你有這個章就可以直接讓你進去,而不是讓你重新買票。 Cookies就是網站給你的瀏覽器蓋的章,但網站不會像夜店那樣給每個客人蓋同樣的章,而是會給每人一個唯一的臨時號碼,這樣網站不但知道你什麼時候來的,還知道你是你而不是同時登錄網站的張三或李四。人類保安能根據外表和聲音來區別你跟張三李四不是同一個人,而你的長相聲音具有唯一性。

Cookies有什麼危險呢?想像一下你在夜店街從9點玩到6點,回家剛好撞見你老爸出門晨練,你剛打算拿出事先練得滾掛爛熟的瞎話說自己昨晚同學聚會喝醉了住遠近聞名的老實人劉帥家,結果你老爸二話不說一把拉起你的袖子,露出手臂上十多家不同夜店的章…… 所以,為了防止發生這種隱私洩露的尷尬,你得用一個關閉窗口就自動刪除所有cookies的瀏覽器,你爸拉起你袖子的時候只能看到白白的手臂。

夜店章時間久了會自動消失,cookies同樣會有長短不同的有效期,某些cookies能保存很長時間這樣你每次打開這個網站都不需要再輸入一次帳號密碼,方便,但問題是隱私。而某些網站則給cookies設置了一個壽命,過期就不認了,就像夜店章一樣,否則你買一次票就能天天免費去玩,夜店老闆不虧死了?

Http Cookies也分不同總類,詳見維基百科.

網頁插件

有很多網站不需要使用Cookies,比如你現在正在看的這種根本不需要登錄的靜態頁面。但網站是怎樣知道自己的客流量多大,包括詳細到具體內容的流量呢?通常有網頁插件和服務器端兩種方法。

網頁插件可以是javascript或者圖片。網站使用網頁插件來分析流量的原因無外乎以下兩點:

1.方便 網頁插件好用啊,比如Google Analytics能直接提供各種分析數據、圖表,部署也比自己在服務器端安裝分析軟件方便多少倍。

2.權威 你自己服務器上的流量分析只有你自己知道,遇到那種吹牛逼的人怎麼辦?明明瀏覽量只有1000它說是一百萬,而第三方插件則可以在必要時,比如面對投資人或廣告投放商直接展示出你的Google Analytics。

3.不是自己的服務器 現在很多網站都可以不用自己的服務器就能搭建,比如你現在正在看這個就是託管在Github Pages上的。這種情況Github知道我的流量,但我自己不知道,所以我只能裝網頁插件來分析流量了。

網頁插件很容易識別,你只需要在網頁上點擊鼠標右鍵,查看網頁代碼,就能看到插件了。好吧你不會讀代碼,當我沒說。不過市面上有很多瀏覽器插件專門檢測或屏蔽網頁插件,常見的廣告屏蔽器(Ad Blocker)或腳本屏蔽器no script, 或者跟踪插件屏蔽器uBlock Origin ,都可以告訴你哪些插件有問題,或者直接幫你屏蔽掉它們。這樣,你對於流量分析來說就是隱形的了。 Cheers~

Note: 用戶跟踪流量分析的網頁插件的使用是一個極為普遍的現象,請在頂部導航欄查看本站所作的簡要統計

服務器端

你打開一個網站的過程大致如下:

1. 你的瀏覽器要先問DNS服務器你輸入這個網址的服務器在哪裡,DNS服務器告訴你的瀏覽器一個IP地址。

2. 然後你的瀏覽器就向那個IP地址的服務器發出請求,那個服務器在收到你的請求之後把網頁文件傳送給你的瀏覽器。

3. 你的瀏覽器把接收到的網頁文件 渲染 成你看到的漂亮網頁。

好吧,上述過程有點長,不過你反复讀兩遍就會發現這個過程有兩個“服務器”知道你訪問過這個網站的事兒。假如你訪問的是pornhub,那麼DNS服務器知道你曾經問過pornhub的網址在哪裡,雖然你只是問了它pornhub怎麼走,不代表你一定就去了pornhub,但,呵呵,come on,大家都知道問pornhub怎麼走的人裡頭有99.99%都去了。第二個知道你訪問過pornhub的當然就是pornhub自己啦,你向它要了網頁呢,那還能賴掉?

不過,你對pornhub很信任,因為你知道pornhub絕對不會出賣你,否則這事兒傳出去以後誰還敢去它那兒? DNS服務器就沒辦法了。

你是不是在想“我這次知道pornhub怎麼走了,下次再去的時候就不用問DNS服務器了,這樣DNS服務器就不知道我看過多少”。這個理論上是可以的,不過因為各種原因並不現實。像pornhub這種人民群眾喜聞樂見的網站,至少有成千上萬台服務器,名副其實的連鎖店。你訪問pornhub更像是在一個大城市裡找中石化的加油站,你上次加油的地方現在可能排著長長的隊,所以你每次加油前都得先查查哪個加油站不用排隊。用夜店比喻的話,就是pornhub每次都會讓接待你的服務生帶你去一個空的卡座。所以一般來說,你還得每次都問DNS服務器pornhub怎麼走。

服務器端的流量分析是無法避免的,服務器知道你在這里幹的一切,如果你每次都換IP且不登錄的話還好,服務器認不出你是同一個人,但如果你登錄帳號的話……

網絡環節

互聯網是一張網,前面描述的打開過程只是在應用層面,看上去只有DNS服務器和網站服務器(Pornhub)知道這事兒。實際上在更底層的網絡,你發送的和接收到的每一個數據包都是經過很多服務器層層接力轉發,就像你在淘寶剁手之後包裹是由網店老闆交給快遞收件員,途經收件站,經貨車轉運到機場或火車站,經鐵路或航空送到你的城市總站,再經兩三次轉發送到快遞門店,再由快遞小哥送到你(或者小區門衛大爺)的手上。這中間很多人都可能打開你的包裹偷看一下你買了個啥好東西,這中間的每個環節都可能記錄下你買了多少東西,比如快遞門店一查這個月給你發了多少條短信就能統計你這個流量了。互聯網上的數據包傳輸在本質上跟上述實物包裹是一樣的,只不過各種中轉站是由各種昂貴的路由器、網關等設備構成,整個過程時間短一點而已(好吧,短幾個數量級)。

所以,網絡中除了DNS服務器能做流量分析外,還有很多環節可能做流量分析。順便說一句,看到這裡,你大概明白防火長城是怎麼封鎖你的吧?一種方法是像機場安檢,一掃你的包裹裡有把槍或者一個炸彈,直接就攔下來了。第二種方法,看到你的發件地址是不允許的地方(比如收件人:台灣總統府)直接攔下,第三種也是最廉價的方法就是當你問DNS服務器pronhub怎麼走的時候直接告訴你一個錯誤的地址(DNS污染)。

好啦,回到正題,除了DNS方的分析,你的ISP服務商(就是每個月收你網費的公司,或者給你網用的組織)通常會分析你訪問了哪些網站,因為你所有的流量都會經過它控制的服務器。用前面送快遞來比喻,你的ISP服務商就是專門負責你那個片區的快遞門店,你的公司或機構網絡則相當於負責收發件的門衛大爺。

總結

前面這些分析無外乎是想告訴大家,不是只有你登錄或訪問的網站能夠分析你在互聯網上的活動,而且你的活動是否被記錄和分析絕不僅能通過看一個網站的源代碼發現。整個網絡裡有無數個環節可以用來分析和跟踪你,服務器有你的所有信息,網路中間設施有很多環節可以監聽、審查你的信息流。當你凝視深淵的時候,深淵也在凝視你。保護隱私要從自己的電腦這邊源頭做起,而不是僅僅去指望或指責別人。

更多工具請參考https://www.privacytools.io/https://prism-break.org/en/

來源: https://diymysite.github.io/analytics/#!pages/analytics.md

CC BY-NC-ND 2.0 授權

喜歡我的作品嗎?別忘了給予支持與讚賞,讓我知道在創作的路上有你陪伴,一起延續這份熱忱!