IG、TikTok 為何注入 JS 代碼,開發者推出開源工具一探究竟
本周,一件有關 iOS 隱私安全的事件在國外引發了熱議,事件的起因是安全研究員 Felix Krause 發現 Meta 公司旗下的多款軟件(Facebook、Instagram、Messenger)通過使用應用內網絡瀏覽器(in-app web browser)和注入的 JavaScript 代碼來跟蹤用戶數據,能夠獲得的數據包括訪問的網站、屏幕點擊、鍵盤輸入,以及文本選擇等內容。
除了 Meta,之后 Felix Krause 還發現 TikTok 也會采用類似的方式來收集用戶數據。
為了讓所有用戶都可以清楚地看到通過應用內瀏覽器注入的 JavaScript 代碼,安全研究員 Felix Krause 推出了一個全新的開源工具 —— InAppBrowser,這個工具使用起來毫無門檻(稍后會介紹),用戶可以使用它來檢查嵌入在應用程序中的網絡瀏覽器如何注入 JavaScript 代碼來跟蹤用戶。
對于那些不熟悉應用內瀏覽器的人來說,這是還是先解釋一下。應用內瀏覽器通常在用戶點擊應用內的一個 URL 時開始運作,通常都是通過創建 WebViews 的實例,并將公共 URL 或應用資源中的一些內容加載到這個實例中。這樣應用程序就會直接顯示網頁,而不必將用戶重定向到外部瀏覽器。iOS 和 Android 的應用內瀏覽器在很多方面都很相似,當然兩者也提供了各自的平臺特定方法,用于啟用 / 禁用一些功能。
以此次安全研究員 Felix Krause 的發現為例,盡管 Meta 和 TikTok 應用內瀏覽器使用的是基于 iOS 上的 Safari WebKit,但開發者可以修改它們來運行自己的 JavaScript 代碼。因此,用戶更容易在不知情的情況下被追蹤。例如,一個應用程序可以使用自定義的應用內瀏覽器來收集網頁上的所有點擊、鍵盤輸入、網站標題等等。
通過收集這些數據,這些應用可以創建用戶的數字指紋,并以此為基礎向用戶推送更加有針對性的廣告、視頻和帖子等。除此之外,由于可以監測用戶屏幕點擊和鍵盤輸入,如果用戶在應用內瀏覽器中輸入了銀行賬號、身份信息等敏感內容,面臨的風險將會更高。Krause 指出,InAppBrowser 目前還不能檢測所有的 JavaScript 代碼,但它仍然可以讓用戶更深入地了解應用程序正在收集哪些數據。
如何使用 InAppBrowser 工具
使用 InAppBrowser 工具是非常簡單的。首先打開一個你想分析的應用程序,然后在應用內的某個地方分享這個 URL(https://InAppBrowser.com,例如將 URL 以私信的方式發送給朋友),最后在應用內點擊這個鏈接打開它,就可以得到一份關于 JavaScript 注入代碼的報告。
當然開發者還指出,并不是每個將 JavaScript 代碼注入應用內瀏覽器的應用都是出于惡意的,因為 JavaScript 是許多網絡功能的基礎。
InAppBrowser 已在 GitHub 開源,并以 MIT 協議分發。
本文轉自OSCHINA
本文標題:IG、TikTok 為何注入 JS 代碼,開發者推出開源工具一探究竟
本文地址:https://www.oschina.net/news/207252/in-app-browser-javascript-tool