德研究員分析「匿名」瀏覽記錄,竟可發現法官愛看哪類色情片

德研究員分析「匿名」瀏覽記錄,竟可發現法官愛看哪類色情片
Image Credit: Depositphotos

我們想讓你知道的是

你的瀏覽記錄可能已經被儲下來牟利,即使這些記錄不帶個人資料,專家和黑客仍然能夠「起底」辨認出你的身份,從而得悉你上過甚麼網站。

「所有接觸必留痕跡」這項鑑證科學的重要原則,在網絡私隱方面一樣適用。即使你沒有被入侵,只要有上網,仍有可能洩漏最私密的資訊。

網絡上很多免費服務,其實真正「服務費」是以用家數據支付。例如網站會放廣告,而廣告服務商也會安裝追蹤器,以確保流量數據,同時可以更了解「目標客戶」的喜好、傾向——甚至無須知道你的個人資料。相信不少人也試過在搜尋一些有意購買的商品後,往往發現會見到更多相關廣告,誘使你去購買。

近日在拉斯維加斯舉辦的電腦安全會議DEF CON上,來自德國的記者Svea Eckert及研究員Andreas Dewes講述他們掘挖數據的發現,藉此提醒人們瀏覽記錄會揭露比我們想像中還要多的私隱,而且在電腦上刪除記錄無補於事。他們更提醒政策制訂者,如果容許網絡服務供應商(ISP)販賣客戶瀏覽記錄,很可能會導致私隱災難。

暗中販賣數據的公司

Eckert指出,當我們想到監控時,往往會擔心政府機關如美國中情局,或者大企業如Google及Facebook等。但事實上,有數以百計的公司暗中以收集數據來牟利,這些公司可能規模甚大,有數千員工,我們卻從來沒聽過其名字。因此他們決定做一個實驗,利用社交工程技巧取得瀏覽數據,再看看從中可以得到甚麼訊息。

兩人先設立一家假的數據分析顧問公司「Meez Technology」,以及製作一個假身份︰在Meez工作的高級顧問Anna Rosenberg。他們只需要打幾個電話,數星期內就取得多達300萬德國網民整整1個月的瀏覽數據,由網上銀行、跟保險公司通訊以至色情影片都有。

雖然這些數據只是一堆網址及相關的用戶代號,但結合網上公開可以取得的資訊來分析,兩人就能夠辨認出這些用戶代號背後的真正身份,從而得悉他們的瀏覽習慣。這個過程稱為「去匿名化」(de-anonymization)。從得到的數據中,他們成功找到一名法官的色情片喜好、有警察在調查一宗數碼罪行、一名政客訂購的藥物資料等。

Eckert和Dewes指出,瀏覽器安裝的擴充功能程式可能會偷偷記錄用戶上過甚麼網站,再把資料賣給第三方。他們取得的數據當中,就有95%僅來自10個擴充程式。

如何「去匿名化」?

去匿名化有數個方法,最簡單的一種,就是從獨特的網址立即就可以看到相關用戶身份。簡報中Dewes以自己的Twitter帳戶作例子︰Twitter的分析工具網址會包含其用戶帳號「japh44」,因此會上這個網站的人就很可能是Dewes本人。

另一種方法,就是結合兩個不同網站的數據,其中一個是匿名,另一個則具名(未必是真正身份,可以是自行設定的帳戶名稱)。例如德州大學奧斯汀分校的Arvind Narayanan及Vitaly Shmatikov就曾經研究,把Netflix的匿名訂戶評分數據跟互聯網電影資料庫(IMDb)用戶的電影評分比較,發現僅需要8套電影的評分以及誤差達14天的日期數據,就可以辨認出99%的記錄。

而在Eckert及Dewes的簡報中,他們亦舉出三個例子,說明如何取得公開資訊。第一個是Twitter,他們可以透過Twitter的API下載相關時段內的所有貼文,再抽取貼文中的網址以及相關網域,再搜尋出吻合的用戶——往往只需要數條連結就可以辨認身份。

第二個是YouTube,用戶常透過Google+帳戶連結YouTube,並把播放清單公開。兩人以YouTube的API取得影片編號,再從瀏覽數據中比對,例子中只需要9段影片就可以辨認出相關用戶。第三個例子則是透過地域資訊對比,首先查看匿名瀏覽記錄中,從Google地圖網址抽取相關的座標。然後兩人再透過公開可見的圖片評分(圖片有機會包含拍攝地點座標),或者在社交媒體上公開到過某些地方的記錄,從中對比出用戶身份。

避無可避?

有人或會嘗試以隨機連上其他網站,希望增加數據中的噪訊,減少被辨認身份的風險。例如網站「Internet Noise」可以讓你打開隨機的Google搜尋頁面,意圖擾亂視線。不過兩人在簡報中表明,這個方法很多情況都不會奏效,分析不會受個別噪訊影響。

那麼,一般用戶可以怎樣減少私隱外洩?

你可以在瀏覽器安裝軟件,阻截網頁中的追蹤器和廣告,例如跨平台、開放源碼及免費的uBlock Origin。此外,也可以使用不記錄用戶搜尋內容的搜尋器Duckduckgo。不過,更重要的是如何連結外界網站,兩人建議使用TOR或多於一個「出口節點」(exit node)的虛擬私人網絡(VPN)。

相關文章︰

資料來源︰


猜你喜歡


加速敏捷開發腳步!AWS Amplify 協助企業打造高效能應用服務

加速敏捷開發腳步!AWS Amplify 協助企業打造高效能應用服務

我們想讓你知道的是

台灣企業勢必需要明確轉型策略,搭配適合的雲端工具作為入場券,一來降低數位化門檻、二來減少摸索資源的浪費。

打造敏捷開發流程、加速前後端工程師的協作效率,是許多企業在面臨疫情之後,認為亟需將彈性元素納入為企業文化當中。雲端運算服務領導業者 AWS 台灣,觀察到前端工程師主要負責處理最貼近用戶的 Web、行動應用程式,但他們往往需要與後端團隊合作過程,遭遇耗費大量討論時間,才能處理使用者介面事項。

為了降低前後端的溝通成本,有些前端工程師在掌握介面管理能力之後,開始橫跨到後端的伺服器、資料庫開發經驗,甚至進一步培養技能,成為能負責測試、安全、效能多面向的全端工程師。

有的人會透過 Side Project(利用業餘時間開發有興趣的專案)或參加 Hackathon(黑客松)方式,運用 AWS 雲端工具嘗試自行擴展後端,並建立簡單易用的工具程式。究竟,AWS 平台提供哪些資源幫助前端工程師擴展更多元的技能樹?

掌握入門教學!前端工程師如何將 REACT 程式快速上雲

前端工程師運用 AWS Amplify,快速在雲端建立 REACT 應用程式

事實上,AWS 的入門課程指出,運用 AWS Amplify 在雲端建立 React 應用程式及服務集,只需五個學習歷程,包含建立 React 應用程式、初始化本機應用程式、新增身份驗證、新增 API 和資料庫、新增儲存體。如果想快速了解 REACT 程式快速上雲的方法及示範教學,本文節錄 AWS QUICKSTART 學習資源內容,幫助前端工程師更快掌握重點。

首先,何謂 AWS Amplify?AWS Amplify 是一項全托管 Front-End Web & Mobile 服務,採取無伺服器模式,在後端建立、部署和託管單一頁面 Web 應用程式或靜態網站的 Git 型 CI/CD 工作流程,加速開發過程直接整合其他 AWS 服務。舉例來說,像是整合封裝好的 Library 資源、或運用一些 Components UI 軟體去配置後端,以及利用 Admin 的 UI 做資源上的管理。

打造第一個你在 AWS 上的應用程式

AWS Amplify加速Develop、Deliver 與 Manage流程

AWS Amplify 主要優勢展現在三大項工作階段,分別是 Develop、Deliver 和 Manage。Develop 部分可利用 CLI(Command-Line Interface)或 Admin UI 設定後端,使用 GraphQL 或 REST API 設定也是可行的,進而快速建構一個前後端專案。此外,開發者還能搭配 AWS 其他服務,例如使用 AWS Authentication 全托管認證服務,或 DataStore、Storage 等多項 Feature Categories。

到了 Deliver 階段,若是要透過 AWS Amplify 執行 Web Hosting 任務,可拆解出三個流程。首先是將 Repository 與 AWS Amplify 進行連結,這邊可整合 Amplify Console 提供的支援資源包含 Github、Bit Bucket、Gitlab、以及 AWS 的程式碼代管工具 AWS CodeCommit。一旦連結以後,開發者可透過自己的 Configuration,决定在各個不同的 Build 要執行什麽樣的指令,最後再透過 Deploy 方式,幫助工程師進行前端的 Hosting。

在最後一個 Manage 階段,開發者則可利用 AWS Amplify 的 Admin UI,以開啓瀏覽器方式,透過視覺化介面統一管理資源。例如在 Admin UI 介面左側選單,涵蓋 Content、User Management 的區塊,讓參與專案但沒有 AWS Console 權限的使用者,可利用 E-mail 方式邀請使用者進到 Admin UI,進行一些設定或觀看其他相關資源;甚至在 Set Up 區塊還有相關選項,例如要針對 Data Modeling 或 APP User 做權限管理,以及可連結到 AWS 其他服務。

透過 AWS 增加你的雲端技能 在組織發揮你的影響力

運用開放資源 AWS Amplify Framework,打造高效能應用服務

AWS QUICKSTART 學習資源還介紹到另一個 AWS 提供的開放資源 Amplify Framework,一樣可利用 Amplify CLI 的方式,配置 Web 和行動應用程式的前後端,以及開發者需要用到的服務,讓應用程式更易於構建,並獲得安全、高性能的使用體驗。

Amplify CLI 一樣有支援多個不同 Category,例如較常使用的幾個 Comment Line,像是Amplify Init 指令做初始化或創建幾個不同資源;或是 Amplify Status 指令,隨時在開發過程查看各個 Category 狀態;甚至專案結束後,可利用 Amplify Delete 直接把 Amplify 所創建的資源做一次性删除。另外也可透過 AWS Amplify Client 利用比較抽象化方式,讓開發者直接利用 Component 實現想要完成的項目。

實際示範給你看,設定 React 程式可以如此簡單

假設前端工程師現在要快速部署一項有驗證功能(Authentication)還要搭配 Rest API、GraphQL、Analytics 等服務的應用,如何快速設定 React 程式?在 AWS QUICKSTART 的學習資源後半段,有詳細說明要啟動這類型專案的操作方法。

開發者可以先利用 AWS Lambda Function 結合 Amazon API Gateway 方式,創建出一個 Rest API,到了 Authentication 階段,則使用到 AWS Cognito 的服務,接著針對 GraphQL 需求,可利用 AWS AppSync 服務,以及最後如果有 Analytics 的需求,也可以串聯 Amazon Pinpoint 工具。Amazon Pinpoint 是一項彈性而可以擴展的行銷通訊服務,開發人員可利用 Amazon Pinpoint API 追蹤 Web 使用者的行爲,或是針對 APP 推送、電子郵件、簡訊點擊行為蒐集到具體的資訊。

在這整套流程示範之後,值得特別強調的是,AWS AppSync 是一項全托管的服務,能及時更新,甚至在使用者離線時仍可以持續去創建和修改數據。一旦設備連上線之後,這項應用程式就可重新連線,並接到後端同步數據,達成彈性、自動化擴展或減縮各式 API 的請求。

AWS 最後強調,Amplify 是相當適合建構出一個靜態 Web、Apps 服務模式,例如說像是打造部落格,或者是一項 APP 內的代辦事項應用等;加上 Amplify 具全托管服務特色,可串聯上述 AWS 在雲端所提供的資源,都能在部署過程加以整合,加速開發流程及效率,並且有效節省開發資源。如果想用低門檻的雲端解決方案,其實前端工程師是能在開發流程更靈活配置資源,甚至為公司的商業、服務模式挖掘出創新價值。

填寫表單諮詢專人 快速在 AWS 找到適合你的快速上雲服務與工具!

了解更多:AWS 開發者系列


猜你喜歡