TikTok, Meta, X, and others exploit push notifications on iOS to collect data about users

Apple has long said that fingerprinting — tracking a user through the hardware and software features of their device — is not allowed. But apparently some popular apps have found a backdoor that they are exploiting in plain sight.

Privacy researcher Tommy Mysk has discovered that a number of popular iOS apps are using a push notification feature, first introduced in 2016, to send detailed data about the user’s device to their companies’ servers.

Mysk explained that he noticed this disturbing and seemingly persistent pattern when he examined several social media apps, including TikTok, Facebook, FB Messenger, Instagram, Threads, and X. All of these apps took advantage of the feature that allowed them to customize their push notifications even when not running.

This feature is not intrinsically malicious and serves an important purpose. For example, it can be useful for apps that need to decode the notification payload or download additional content to best present the notification to the user. When an app receives a push notification, iOS signals the app to wake up and run for a short time. During this time, the app can do whatever the developer wants, including tweaking the push notification’s appearance in some way. The latter would be the original purpose of the feature, but the problem is that the app may also be collecting data or sending information about the user during that time.

Mysk has observed that the apps he has studied have learned to take full advantage of this limited run time to collect data from the device and send that data to remote servers. The researcher calls the ability to run code in the background “a gold mine for data-hungry apps.”

So how does it all work, according to Mysk?

  • The app developer comes up with a code they want the app to run in the background
  • The developer sends a push notification to the user of the app. The push can be about anything, from a news update, a live sports score to a new friend request
  • The user’s device receives the push notification, but does not show it on the screen yet. iOS recognizes that the push notification is from the social app and wakes it up in the background. The app is now running, but the user can’t see it or interact with it
  • The app runs the code that the developer has prepared in the background. And while it may be innocuous, for example, be used to add more information, such as images, to the notification, it can also be used to harvest data from the user’s device and send that data to the developer’s servers

This scheme can provide developers with a unique combination of the software and hardware characteristics of the user’s device.

Many apps are using this feature as an opportunity to send detailed device information while running quietly in the background. This includes: system uptime, locale, keyboard language, available memory, battery status, device model, display brightness, to mention a few.

This data can subsequently be used to track the user across applications, Mysk points out.

What data is being collected?

In the video describing the examples of such trickery, Mysk shows the types of data that can be collected by social media companies through the push notification loophole. The collection is done either through the company’s own services or with the help of third-party tools, such as Google’s analytics tools — Google Analytics and Firebase.

TikTok

With TikTok, for example, the app sends the iPhone’s boot time to the remote servers every time it receives a push notification.

TikTok sends a lot of data to external servers

That means that TikTok knows exactly when the user last restarted their iPhone. If collected over a period of time, the boot time can tell how often the user reboots their iPhone, which can indicate how much they use it or how stable it is. It can be also used to identify the user’s device or track their activity.

When the Facebook app sends a push notification to the same device, Facebook receives the same data about the user’s iPhone last boot time.

Facebook

As the researcher notes, this may facilitate tracking the user across different apps. That is because the boot time can be used as a unique identifier for the user’s device. If the same device has multiple apps that collect and send the boot time to the same or different servers, these servers can compare the boot time data and link it to the same device. This way, they can track the user’s behavior and preferences across different apps, even if the user does not use the same account or login information for each app. All of this makes the exploitation of the push notification feature by social media companies a legitimate privacy threat.

Moreover, Mysk notes that some apps, for example Facebook and TikTok, also send data when clearing their notifications in Notification Center, which is an iOS feature that provides an overview of alerts from applications.

For example, when a user clears a Facebook notification, the app sends a request with detailed information, including the information about available memory, the last app event, such as liking a post, the time since last app event, the actor ID, that identifies the user’s account on Facebook, the preferred content size, the timestamp (i.e. the exact date and time) when the notification was cleared, the connection type, and so forth.

When a user clear a Facebook notification, the app sends detailed information about the user to the external servers

Twitter (X) handles the collection of the user’s information more or less the same way as Facebook and TikTok do.

X/Twitter

All three companies are using Firebase, a service offered by Google, Mysk notes, adding that “the frequency at which many apps send device information after being triggered by a notification is mind-blowing.”

New Apple rule for devs: what will they change?

Mysk pins a lot of hopes on the new rules for developers that Apple has put in place and that will come into effect this spring. As it unveiled the rules, Apple announced that developers would need to explain why their apps have to use certain APIs (Application Programming Interfaces), which are methods for different apps to communicate and share data.

The developers will have to explain why they need to access device information not only for their own code, but also for third-party SDKs (software development kits) that they add to their apps. Both apps and third-party SDKs will need to write one or more “approved reasons” for why they need to access device information through specific APIs in separate documents called “privacy manifest files.” These reasons should be “consistent with the app’s functionality.” We wrote a detailed review of Apple’s new requirement for developers in August — check it out here.

But the question is, will it stop companies from harvesting data from apps through the push notification backdoor? In theory, it should, but only if Apple seriously enforces these rules and monitors developers’ compliance. Which is by no means guaranteed.

We believe that the new rules will improve the situation, but by how much? It is a difficult question with many variables. Developers will have to take the new rules into account, so there’s a chance they’ll try to follow them in good faith. However, those who are hell-bent on continuing to collect this data will likely choose to take risks. And then it’ll be up to Apple and its reviewers to catch these apps in the act.

In any case, we hope Apple takes a proactive and transparent approach to privacy enforcement, or users’ data will continue to be at risk.

喜歡這篇文章嗎?
AdGuard DNS AdGuard Mail AdGuard Wallet
AdGuard DNS AdGuard Mail AdGuard Wallet
AdGuard Windows 版主畫面
AdGuard Windows 版的防護畫面,顯示防護功能與設定。
AdGuard Windows 版的統計畫面,顯示已封鎖的廣告與追蹤器資料。
AdGuard Windows 版的應用程式管理畫面,顯示裝置上已安裝應用程式的防護管理選項
21,758 21758 使用者評論
極好的!

AdGuard Windows 版:PC 廣告阻擋器

Windows 版 AdGuard 不只是廣告封鎖程式,它是集成所有讓您享受最佳網路體驗的主要功能的多用途工具。其可封鎖廣告和危險網站,加速網頁載入速度,並且保護兒童的線上安全。
透過下載該程式,您接受授權協定的條款
Microsoft Store
透過下載該程式,您接受授權協定的條款
AdGuard for Windows 8.0 版本,14 天的試用期
AdGuard Mac 版主畫面
AdGuard Mac 版的隱身模式介面
21,758 21758 使用者評論
極好的!

AdGuard Mac 版:全系統廣告攔截器

Mac 版 AdGuard 是一款獨一無二的專為 MacOS 設計的廣告封鎖程式。除了保護使用者免受瀏覽器和應用程式裡惱人廣告的侵擾外,應用程式還能保護使用者免受追蹤、網路釣魚和詐騙。
透過下載該程式,您接受授權協定的條款
閱讀更多
AdGuard for Mac 2.19 版本,14 天的試用期
AdGuard Android 版主畫面
AdGuard Android 版的追蹤保護畫面
AdGuard Android 版的應用程式管理畫面,顯示裝置上已安裝應用程式的防護管理選項
AdGuard Android 版的統計畫面,顯示已封鎖的廣告與追蹤器資料。
AdGuard Android 版隱私瀏覽器主畫面
下載 AdGuard Android 版的 QR 碼
21,758 21758 使用者評論
極好的!

Android 版 AdGuard —廣告封鎖器

在所有瀏覽器、遊戲及其他應用中封鎖廣告和追蹤器。保護個人隱私,並讓您控制應用如何使用網路。通過 APK 安裝。
透過下載該程式,您接受授權協定的條款
閱讀更多
掃描下載
可以使用任何一款 QR 碼閱讀器
AdGuard for Android 4.14 版本,14 天的試用期
AdGuard iOS 版主畫面
AdGuard iOS 版的防護畫面,顯示防護功能與設定。
AdGuard iOS 版的統計畫面,顯示已封鎖的廣告與追蹤器資料。
下載 AdGuard iOS 版的 QR 碼
21,758 21758 使用者評論
極好的!

iOS 版 AdGuard —廣告封鎖器

適用於 iPhone 和 iPad 的最佳 iOS 廣告攔截器。AdGuard 可在 Safari 中消除各種廣告與追蹤器,並在 DNS 層級保護您在所有應用程式中的隱私。
透過下載該程式,您接受授權協定的條款
閱讀更多
掃描下載
可以使用任何一款 QR 碼閱讀器
AdGuard for iOS 版本 4.5
AdGuard 內容阻擋器主畫面
AdGuard 內容阻擋器的過濾器畫面
AdGuard 內容阻擋器的設定畫面
21,758 21758 使用者評論
極好的!

AdGuard 內容阻擋器

AdGuard 內容阻擋器可以全面阻止所有支援內容封鎖技術的行動瀏覽器中的廣告,目前包括 Samsung Internet 瀏覽器和 Yandex 瀏覽器。雖然其功能相比 Android 版 AdGuard 有所限制,但它完全免費、安裝簡單且封鎖高效。
透過下載該程式,您接受授權協定的條款
閱讀更多
AdGuard 內容阻擋器 版本 2.8
AdGuard 瀏覽器擴充功能的主畫面
AdGuard 瀏覽器擴充功能的追蹤防護畫面
21,758 21758 使用者評論
極好的!

AdGuard 瀏覽器擴充功能

AdGuard 是有效地封鎖於全部網頁上的所有類型廣告之最快的和最輕量的廣告封鎖擴充功能!為您使用的瀏覽器選擇 AdGuard,然後取得無廣告的、快速的和安全的瀏覽。
安裝
透過下載該程式,您接受授權協定的條款
安裝
透過下載該程式,您接受授權協定的條款
安裝
透過下載該程式,您接受授權協定的條款
安裝
透過下載該程式,您接受授權協定的條款
安裝
透過下載該程式,您接受授權協定的條款
閱讀更多
安裝
透過下載該程式,您接受授權協定的條款
閱讀更多
AdGuard 瀏覽器擴充功能 版本 5.5
AdGuard 助理主畫面
21,758 21758 使用者評論
極好的!

AdGuard 助理

AdGuard 桌面應用的配套瀏覽器擴充套件。支援封鎖網頁特定內容、將網站新增至允許清單,並直接從瀏覽器提交報告。
AdGuard 助理 版本 1.4
21,758 21758 使用者評論
極好的!

AdGuard Home

AdGuard Home 是一款以網路為基礎的解決方案,用於封鎖廣告和追蹤器。只需在您的路由器上安裝一次,即可涵蓋家庭網路上的所有裝置——無需另外安裝客戶端軟體。這對於經常威脅您隱私的各類物聯網裝置來說尤為重要。
AdGuard Home 版本 0.107
AdGuard Pro iOS 版主畫面
AdGuard Pro iOS 版的保護畫面,顯示保護功能與設定
AdGuard Pro iOS 版的統計畫面,顯示已封鎖的廣告和追蹤器資料
21,758 21758 使用者評論
極好的!

AdGuard Pro iOS 版

AdGuard Pro iOS 版預置全部進階廣告封鎖防護功能,提供與 AdGuard iOS 版付費版完全相同的工具集。其卓越之處在於:不僅能精準封鎖 Safari 瀏覽器內的廣告,更支援自訂的 DNS 設定以精細化防護策略。該產品具備跨瀏覽器與應用的全方位廣告封鎖能力,有效防護兒童遠離不良內容,並全面保障個人資料安全。
透過下載該程式,您接受授權協定的條款
閱讀更多
AdGuard Pro iOS 版 版本 4.5
AdGuard Mini Mac 版主畫面
AdGuard Mini Mac 版的 Safari 保護畫面
AdGuard Mini Mac 版的建立規則畫面
21,758 21758 使用者評論
極好的!

AdGuard Mini Mac 版:Safari 廣告封鎖程式

AdGuard Mini Mac 版是一款強大的 Safari 廣告攔截程式。這款輕量級應用不僅能移除廣告、封鎖追蹤器,還能顯著提升網頁載入速度。它讓您在 Safari 中專注瀏覽、免受干擾,同時確保個人資料安全私密。
安裝
透過下載該程式,您接受授權協定的條款
閱讀更多
AdGuard Mini Mac 版 版本 2.3
開啟防護狀態下的 AdGuard Android TV 版本主畫面
AdGuard Android TV 版本的廣告封鎖畫面,顯示其功能與設定
AdGuard Android TV 版本的設定畫面
AdGuard Android TV 版本的應用程式管理畫面,顯示已封鎖廣告與追蹤器的應用程式。
21,758 21758 使用者評論
極好的!

AdGuard Android TV 版

Android TV 版 AdGuard 是唯一一款能封鎖廣告、保護隱私並充當智慧電視防火墻的應用程式。取得網路威脅警告,使用安全 DNS,並受益於加密流量。有了安全性和零廣告的使用體驗,使用者就可以盡情享受最喜愛的節目了!
AdGuard Android TV 版 4.14 版本,14 天的試用期
AdGuard 吉祥物 Agnar 懷抱 Linux 的企鵝吉祥物
21,758 21758 使用者評論
極好的!

AdGuard Linux 版

AdGuard Linux 版是世界上第一個系統級廣告封鎖器。封鎖廣告和追蹤器,選擇預設過濾器或新增自己的過濾器。管理流程通過命令行介面實現。
AdGuard Linux 版 版本 1.4
21,758 21758 使用者評論
極好的!

AdGuard Temp Mail

免費的臨時電子郵件地址產生器,保持匿名性並保護個人隱私。您的主收件匣中沒有垃圾郵件!
21,758 21758 使用者評論
極好的!

AdGuard DNS

AdGuard DNS 是一種不需要安裝任何的應用程式而封鎖網際網路廣告之極簡單的方式。它易於使用,完全地免費,被輕易地於任何的裝置上設置,並向您提供封鎖廣告、計數器、惡意網站和成人內容之最少必要的功能。
21,758 21758 使用者評論
極好的!

AdGuard Mail

保護個人身份,避免垃圾郵件,並使用我們的別名和臨時電子郵件地址保護收件箱。享受我們的免費電子信箱轉發服務和適用於所有作業系統的應用程式使用體驗。
21,758 21758 使用者評論
極好的!

AdGuard Wallet

一個安全且私密的加密貨幣錢包,讓您完全掌控資產。管理多個錢包,探索上千種加密貨幣以儲存、傳送及兌換。
已開始下載 AdGuard 點擊箭頭所指示的檔案開始安裝 AdGuard。 選擇"開啟"並點擊"確定",然後等待該檔案被下載。在被打開的視窗中,拖曳 AdGuard 圖像到"應用程式"檔案夾中。感謝您選擇 AdGuard! 選擇"開啟"並點擊"確定",然後等待該檔案被下載。在被打開的視窗中,點擊"安裝"。感謝您選擇 AdGuard!
在行動裝置上安裝 AdGuard