Location Tracking

Adversaries may track a device’s physical location through use of standard operating system APIs via malicious or exploited applications on the compromised device.

On Android, applications holding the ACCESS_COAURSE_LOCATION or ACCESS_FINE_LOCATION permissions provide access to the device’s physical location. On Android 10 and up, declaration of the ACCESS_BACKGROUND_LOCATION permission in an application’s manifest will allow applications to request location access even when the application is running in the background.[1] Some adversaries have utilized integration of Baidu map services to retrieve geographical location once the location access permissions had been obtained.[2][3]

On iOS, applications must include the NSLocationWhenInUseUsageDescription, NSLocationAlwaysAndWhenInUseUsageDescription, and/or NSLocationAlwaysUsageDescription keys in their Info.plist file depending on the extent of requested access to location information.[4] On iOS 8.0 and up, applications call requestWhenInUseAuthorization() to request access to location information when the application is in use or requestAlwaysAuthorization() to request access to location information regardless of whether the application is in use. With elevated privileges, an adversary may be able to access location data without explicit user consent with the com.apple.locationd.preauthorized entitlement key.[5]

ID: T1430
Sub-techniques:  T1430.001, T1430.002
Tactic Type: Post-Adversary Device Access
Tactics: Collection, Discovery
Platforms: Android, iOS
MTC ID: APP-24
Version: 1.2
Created: 25 October 2017
Last Modified: 20 March 2023

Procedure Examples

ID Name Description
S1061 AbstractEmu

AbstractEmu can access a device's location.[6]

S0309 Adups

Adups transmitted location information.[7]

S0304 Android/Chuli.A

Android/Chuli.A stole geo-location data.[8]

S0292 AndroRAT

AndroRAT tracks the device location.[9]

S0422 Anubis

Anubis can retrieve the device’s GPS location.[10]

S1079 BOULDSPY

BOULDSPY can get a device’s location using GPS or network.[11]

S0655 BusyGasper

BusyGasper can collect the device’s location information based on cellular network or GPS coordinates.[12]

S0529 CarbonSteal

CarbonSteal can access the device’s location and track the device over time.[13]

S0480 Cerberus

Cerberus can collect the device’s location.[14]

S1083 Chameleon

Chameleon can gather device location data.[15]

S0323 Charger

Charger checks the local settings of the device and does not run its malicious logic if the device is located in Ukraine, Russia, or Belarus.[16]

S0555 CHEMISTGAMES

CHEMISTGAMES has collected the device’s location.[17]

S0425 Corona Updates

Corona Updates can track the device’s location.[18]

S0505 Desert Scorpion

Desert Scorpion can track the device’s location.[19]

S1092 Escobar

Escobar can request coarse and fine location permissions to track the device.[20]

S0507 eSurv

eSurv can track the device’s location.[21]

S0405 Exodus

Exodus Two can extract the GPS coordinates of the device.[22]

S1080 Fakecalls

Fakecalls can access a device’s location.[23]

S0182 FinFisher

FinFisher tracks the latitude and longitude coordinates of the infected device.[24]

S0408 FlexiSpy

FlexiSpy can track the device's location.[25]

S1093 FlyTrap

FlyTrap can collect device geolocation data.[26]

S0577 FrozenCell

FrozenCell has used an online cell tower geolocation service to track targets.[27]

S0535 Golden Cup

Golden Cup can track the device’s location.[28]

S0551 GoldenEagle

GoldenEagle has tracked location.[13]

S0421 GolfSpy

GolfSpy can track the device’s location.[29]

S0536 GPlayed

GPlayed can request the device’s location.[30]

S0544 HenBox

HenBox can track the device’s location.[3]

S1077 Hornbill

Hornbill can access a device’s location and check if GPS is enabled. Hornbill has logic to only log location changes greater than 70 meters.[31]

S0463 INSOMNIA

INSOMNIA can track the device’s location.[5]

S0485 Mandrake

Mandrake can collect the device’s location.[32]

S0407 Monokle

Monokle can track the device's location.[33]

S0399 Pallas

Pallas tracks the latitude and longitude coordinates of the infected device.[24]

S0289 Pegasus for iOS

Pegasus for iOS update and sends the location of the phone.[34]

S0291 PJApps

PJApps has the capability to collect and leak the victim's location.[9]

S0295 RCSAndroid

RCSAndroid can record location.[35]

S0549 SilkBean

SilkBean has access to the device’s location.[13]

S0327 Skygofree

Skygofree can track the device's location.[36]

S0324 SpyDealer

SpyDealer harvests location data from victims.[2]

S0305 SpyNote RAT

SpyNote RAT collects the device's location.[37]

S0328 Stealth Mango

Stealth Mango can perform GPS location tracking as well as capturing coordinates as when an SMS message or call is received.[38]

S1082 Sunbird

Sunbird can access a device’s location.[31]

S0329 Tangelo

Tangelo contains functionality to gather GPS coordinates.[38]

S1069 TangleBot

TangleBot can request location permissions.[39]

S0558 Tiktok Pro

Tiktok Pro can track the device’s location.[40]

S0418 ViceLeaker

ViceLeaker can collect location information, including GPS coordinates.[41][42]

S0506 ViperRAT

ViperRAT can track the device’s location.[43]

G0112 Windshift

Windshift has included location tracking capabilities in the malicious apps deployed as part of Operation BULL and Operation ROCK.[44]

S0314 X-Agent for Android

X-Agent for Android was believed to have been used to obtain locational data of Ukrainian artillery forces.[45]

Mitigations

ID Mitigation Description
M1012 Enterprise Policy

If devices are enrolled using Apple User Enrollment or using a profile owner enrollment mode for Android, device controls prevent the enterprise from accessing the device’s physical location. This is typically used for a Bring Your Own Device (BYOD) deployment.

M1014 Interconnection Filtering

Filtering requests by checking request origin information may provide some defense against spurious operators.[46]

M1006 Use Recent OS Version

On Android 11 and up, users are not prompted with the option to select "Allow all the time" and must navigate to the settings page to manually select this option. On iOS 14 and up, users can select whether to provide Precise Location for each installed application.

M1011 User Guidance

Users should be wary of granting applications dangerous or privacy-intrusive permissions, such as access to location information. Users should also protect their account credentials and enable multi-factor authentication options when available.

Detection

ID Data Source Data Component Detects
DS0041 Application Vetting Permissions Requests

Android applications requesting the ACCESS_COARSE_LOCATION, ACCESS_FINE_LOCATION, or ACCESS_BACKGROUND_LOCATION permissions and iOS applications including the NSLocationWhenInUseUsageDescription, NSLocationAlwaysAndWhenInUseUsageDescription, and/or NSLocationAlwaysUsageDescription keys in their Info.plist file could be scrutinized during the application vetting process.

DS0042 User Interface System Settings

In both Android (6.0 and up) and iOS, the user can view which applications have the permission to access the device location through the device settings screen and revoke permissions as necessary.

References

  1. Android Developers. (2022, March 24). Request Location Permissions. Retrieved April 1, 2022.
  2. Wenjun Hu, Cong Zheng and Zhi Xu. (2017, July 6). SpyDealer: Android Trojan Spying on More Than 40 Apps. Retrieved September 18, 2018.
  3. A. Hinchliffe, M. Harbison, J. Miller-Osborn, et al. (2018, March 13). HenBox: The Chickens Come Home to Roost. Retrieved September 9, 2019.
  4. Apple Developers. (n.d.). Requesting Authorization for Location Services. Retrieved April 1, 2022.
  5. I. Beer. (2019, August 29). Implant Teardown. Retrieved June 2, 2020.
  6. P Shunk, K Balaam. (2021, October 28). Rooting Malware Makes a Comeback: Lookout Discovers Global Campaign. Retrieved February 6, 2023.
  7. Matt Apuzzo and Michael S. Schmidt. (2016, November 15). Secret Back Door in Some U.S. Phones Sent Data to China, Analysts Say. Retrieved February 6, 2017.
  8. Costin Raiu, Denis Maslennikov, Kurt Baumgartner. (2013, March 26). Android Trojan Found in Targeted Attack. Retrieved December 23, 2016.
  9. Lookout. (2016, May 25). 5 active mobile threats spoofing enterprise apps. Retrieved December 19, 2016.
  10. M. Feller. (2020, February 5). Infostealer, Keylogger, and Ransomware in One: Anubis Targets More than 250 Android Applications. Retrieved April 8, 2020.
  11. Kyle Schmittle, Alemdar Islamoglu, Paul Shunk, Justin Albrecht. (2023, April 27). Lookout Discovers Android Spyware Tied to Iranian Police Targeting Minorities: BouldSpy. Retrieved July 21, 2023.
  12. Alexey Firsh. (2018, August 29). BusyGasper – the unfriendly spy. Retrieved October 1, 2021.
  13. A. Kumar, K. Del Rosso, J. Albrecht, C. Hebeisen. (2020, June 1). Mobile APT Surveillance Campaigns Targeting Uyghurs - A collection of long-running Android tooling connected to a Chinese mAPT actor. Retrieved November 10, 2020.
  14. Threat Fabric. (2019, August). Cerberus - A new banking Trojan from the underworld. Retrieved June 26, 2020.
  15. Cyble Research & Intelligence Labs. (2023, April 13). Banking Trojan targeting mobile users in Australia and Poland. Retrieved August 16, 2023.
  16. Oren Koriat and Andrey Polkovnichenko. (2017, January 24). Charger Malware Calls and Raises the Risk on Google Play. Retrieved January 24, 2017.
  17. B. Leonard, N. Mehta. (2019, November 21). The Secret Life of Sandworms. Retrieved December 31, 2020.
  18. T. Bao, J. Lu. (2020, April 14). Coronavirus Update App Leads to Project Spy Android and iOS Spyware. Retrieved April 24, 2020.
  19. A. Blaich, M. Flossman. (2018, April 16). Lookout finds new surveillanceware in Google Play with ties to known threat actor targeting the Middle East. Retrieved September 11, 2020.
  20. B. Toulas. (2022, March 12). Android malware Escobar steals your Google Authenticator MFA codes. Retrieved September 28, 2023.
  21. A. Bauer. (2019, April 8). Lookout discovers phishing sites distributing new iOS and Android surveillanceware. Retrieved September 11, 2020.
  22. Security Without Borders. (2019, March 29). Exodus: New Android Spyware Made in Italy. Retrieved September 3, 2019.
  23. Igor Golovin. (2022, April 11). Fakecalls: a talking Trojan. Retrieved July 21, 2023.
  1. Blaich, A., et al. (2018, January 18). Dark Caracal: Cyber-espionage at a Global Scale. Retrieved April 11, 2018.
  2. Actis B. (2017, April 22). FlexSpy Application Analysis. Retrieved September 4, 2019.
  3. Trend Micro. (2021, August 17). FlyTrap Android Malware Is Taking Over Facebook Accounts — Protect Yourself With a Malware Scanner. Retrieved September 28, 2023.
  4. Michael Flossman. (2017, October 5). FrozenCell: Multi-platform surveillance campaign against Palestinians. Retrieved November 11, 2020.
  5. R. Iarchy, E. Rynkowski. (2018, July 5). GoldenCup: New Cyber Threat Targeting World Cup Fans. Retrieved October 29, 2020.
  6. E. Xu, G. Guo. (2019, June 28). Mobile Cyberespionage Campaign ‘Bouncing Golf’ Affects Middle East. Retrieved January 27, 2020.
  7. V. Ventura. (2018, October 11). GPlayed Trojan - .Net playing with Google Market . Retrieved November 24, 2020.
  8. Apurva Kumar, Kristin Del Rosso. (2021, February 10). Novel Confucius APT Android Spyware Linked to India-Pakistan Conflict. Retrieved June 9, 2023.
  9. R. Gevers, M. Tivadar, R. Bleotu, A. M. Barbatei, et al.. (2020, May 14). Uprooting Mandrake: The Story of an Advanced Android Spyware Framework That Went Undetected for 4 Years. Retrieved July 15, 2020.
  10. Bauer A., Kumar A., Hebeisen C., et al. (2019, July). Monokle: The Mobile Surveillance Tooling of the Special Technology Center. Retrieved September 4, 2019.
  11. Lookout. (2016). Technical Analysis of Pegasus Spyware. Retrieved December 12, 2016.
  12. Veo Zhang. (2015, July 21). Hacking Team RCSAndroid Spying Tool Listens to Calls; Roots Devices to Get In. Retrieved December 22, 2016.
  13. Nikita Buchka and Alexey Firsh. (2018, January 16). Skygofree: Following in the footsteps of HackingTeam. Retrieved September 24, 2018.
  14. Shivang Desai. (2017, January 23). SpyNote RAT posing as Netflix app. Retrieved January 26, 2017.
  15. Lookout. (n.d.). Stealth Mango & Tangelo. Retrieved September 27, 2018.
  16. Felipe Naves, Andrew Conway, W. Stuart Jones, Adam McNeil . (2021, September 23). TangleBot: New Advanced SMS Malware Targets Mobile Users Across U.S. and Canada with COVID-19 Lures. Retrieved February 28, 2023.
  17. S. Desai. (2020, September 8). TikTok Spyware. Retrieved January 5, 2021.
  18. GReAT. (2019, June 26). ViceLeaker Operation: mobile espionage targeting Middle East. Retrieved November 21, 2019.
  19. L. Arsene, C. Ochinca. (2018, August 20). Triout – Spyware Framework for Android with Extensive Surveillance Capabilities. Retrieved January 21, 2020.
  20. M. Flossman. (2017, February 16). ViperRAT: The mobile APT targeting the Israeli Defense Force that should be on your radar. Retrieved September 11, 2020.
  21. The BlackBerry Research & Intelligence Team. (2020, October). BAHAMUT: Hack-for-Hire Masters of Phishing, Fake News, and Fake Apps. Retrieved February 8, 2021.
  22. CrowdStrike Global Intelligence Team. (2016). Use of Fancy Bear Android Malware in Tracking of Ukrainian FIeld Artillery Units. Retrieved February 6, 2017.
  23. Communications Security, Reliability, Interoperability Council (CSRIC). (2017, March). Working Group 10 Legacy Systems Risk Reductions Final Report. Retrieved May 24, 2017.