Welcome to the VB2021 conference!

arrow left Back

Android stalkerware: hunting automation, analysis and detection

Shankar Raman Ravindran (NortonLifeLock)
Stalkerware can be considered as a variant of spyware. With the advent of smartphones, stalkerware apps are now available to everyone under the pretense of regular parental control and tracking applications. Stalkerware is the term we use when they violate certain conditions that affect the user’s privacy.

Stalkerware applications have been made available to the public via Play Store, third-party app stores, and vendor websites. Google removed most of them from Play Store a couple of years back, but many app stores did not. Despite Google’s efforts, developers are finding ways to spread stalkerware applications using Play Store. We came across one such case during our research and reported it to Play Store.

Third-party app stores are widespread and highly used across different countries and languages. Stalkerware applications residing in the app stores are still freely available for the public to download. With such an app, unskilled mobile users can snoop around their partners, friends, and family members. We found that search engine operators (Google, Bing) can come in handy for hunting stalkerware applications. It is also possible to automate the hunting process using these search operators with the help of SERP APIs. We will discuss the hunting techniques here.

Stalkerware applications have grown a lot in recent times in terms of the functionalities offered: from a simple program that silently transmits SMS and location details to a complex one that exfiltrates WhatsApp messages, keystrokes, and other sensitive information. The popular stalkerware programs on the market usually collect these data and store them on a remote server, while applications on app stores provide options to transmit these sensitive data via email, SMS, or even to a configured IP address. We will show a couple of them and explore the technical details required for the next section of the talk.

Android provides a wide range of APIs, and developers use these APIs to implement features in their applications. So, APIs reflect the behaviour of the applications. Chaining API calls is one of the techniques used in detecting (static) malicious applications. A class of stalkerware applications can be detected effectively using this technique – by chaining the standard Android API method/class names, alongside the string constants (such as the content URI path) and forensic artifacts found in the application. We demonstrate detection with the help of a simple PoC written using the androguard Python library.

Towards the end of the talk, we will say a few words about the Stalkerware Threat List platform and invite researchers and organizations to contribute to our community, thereby putting an end to the growing stalkerware threats.

Key points of the talk:
  • Hunting and automated hunting of stalkerware applications using search engine operators.

  • Technical analysis of the implementation techniques used in the stalkerware applications.

  • Static detection of stalkerware applications using the method mentioned above.

Got a question about this presentation? To get in touch with the speaker, contact Shankar on Twitter at @h1dd3ntru7h.
Shankar Raman Ravindran

Shankar is a passionate security researcher. He has a dual Master's degree specialized in cyber security systems and software architecture. At Norton LifeLock, he works as a senior threat researcher. He takes part in CTF competitions and has won several contests under the team handle bi0s. He solves challenges related to forensics and binary exploitation. Before joining NortonLifeLock, he worked at SPEE labs in the home automation security field. During the period, he has reported several security bugs. His interest includes DFIR, malware analysis, and binary exploitation.