Posted by Rich Cannings, Jason Woloz, Neel Mehta, Ken Bodzak, Wentao Chang, Megan RuthvenGoogle is constantly working to improve our systems that protect users from
PotentiallyHarmful Applications (PHAs). Usually, PHA authors attempt to install theirharmful apps on as many devices as possible. However, a few PHA authors spendsubstantial effort, time, and money to create and install their harmful app onone or a very small number of devices. This is known as a
targeted attack.
In this blog post, we describe Chrysaor, a newly discovered family of spywarethat was used in a targeted attack on a small number of Android devices, and howinvestigations like this help Google protect Android users from a variety ofthreats.
What is Chrysaor?
Chrysaor is spyware believed to be created by
NSO Group Technologies,specializing in the creation and sale of software and infrastructure fortargeted attacks. Chrysaor is believed to be related to the Pegasus spyware thatwas
firstidentified on iOS and analyzed by
CitizenLab and
Lookout.
Late last year, after receiving a list of suspicious package names from Lookout,we discovered that a few dozen Android devices may have installed an applicationrelated to Pegasus, which we named Chrysaor. Although the applications werenever available in Google Play, we immediately identified the scope of theproblem by using
Verify Apps. We gathered information from affected devices, and concurrently, attempted toacquire Chrysaor apps to better understand its impact on users. We've contactedthe potentially affected users, disabled the applications on affected devices,and implemented changes in Verify Apps to protect all users.
What is the scope of Chrysaor?
Chrysaor was never available in Google Play and had a very low volume ofinstalls outside of Google Play. Among the over 1.4 billion devices protected byVerify Apps, we observed fewer than 3 dozen installs of Chrysaor on victimdevices. These devices were located in the following countries:
How we protect you
To protect Android devices and users, Google Play provides a complete set ofsecurity services that update outside of platform releases. Users don't have toinstall any additional security services to keep their devices safe. In 2016,these services protected over 1.4 billion devices, making Google one of thelargest providers of on-device security services in the world:
Additionally, we are providing detailed technical information to help thesecurity industry in our collective work against PHAs.
What do I need to do?
It is extremely unlikely you or someone you know was affected by Chrysaormalware. Through our investigation, we identified less than 3 dozen devicesaffected by Chrysaor, we have disabled Chrysaor on those devices, and we havenotified users of all known affected devices. Additionally, the improvements wemade to our protections have been enabled for all users of our securityservices.
To ensure you are fully protected against PHAs and other threats, we recommendthese 5 basic steps:
- Install apps only from reputable sources:Install apps froma reputable source, such asGoogle Play. NoChrysaor apps were on Google Play.
- Enable asecure lock screen: Pick a PIN, pattern, or password that is easyfor you to remember and hard for others to guess.
- Updateyour device: Keep your device up-to-date with the latest securitypatches.
- VerifyApps: Ensure Verify Apps is enabled.
- Locate your device: Practice finding your device withAndroid Device Managerbecause you are far more likely to lose your device than install aPHA.
How does Chrysaor work?
To install Chrysaor, we believe an attacker coaxed specifically targetedindividuals to download the malicious software onto their device. Once Chrysaoris installed, a remote operator is able to surveil the victim's activities onthe device and within the vicinity, leveraging microphone, camera, datacollection, and logging and tracking application activities on communicationapps such as phone and SMS.
One representative sample Chrysaor app that we analyzed was tailored to devicesrunning Jellybean (4.3) or earlier. The following is a review of scope andimpact of the Chrysaor app named
com.network.androidtailored for aSamsung device target, with SHA256 digest:
ade8bef0ac29fa363fc9afd958af0074478aef650adeb0318517b48bd996d5d5
Upon installation, the app uses known framaroot exploits to escalate privilegesand break Android's application sandbox. If the targeted device is notvulnerable to these exploits, then the app attempts to use a superuser binarypre-positioned at
/system/csk to elevate privileges.
After escalating privileges, the app immediately protects itself and starts tocollect data, by:
- Installing itself on the
/system partition to persist acrossfactory resets - Removing Samsung's system update app(
com.sec.android.fotaclient) and disabling auto-updates to maintainpersistence (setsSettings.System.SOFTWARE_UPDATE_AUTO_UPDATE to 0) - Deleting WAP push messages and changing WAP message settings, possibly foranti-forensic purpose.
- Starting content observers and the main task loop to receive remote commandsand exfiltrate data
The app uses six techniques to collect user data:
- Repeated commands: use alarms to periodically repeatactions on the device to expose data, including gathering location data.
- Data collectors: dump all existing content on the deviceinto a queue. Data collectors are used in conjunction with repeated commands tocollect user data including, SMS settings, SMS messages, Call logs, BrowserHistory, Calendar, Contacts, Emails, and messages from selected messaging apps,including WhatsApp, Twitter, Facebook, Kakoa, Viber, and Skype by making/data/data directories of the apps world readable.
- Content observers: use Android'sContentObserverframework to gather changes in SMS, Calendar, Contacts, Cell info, Email,WhatsApp, Facebook, Twitter, Kakao, Viber, and Skype.
- Screenshots: captures an image of the current screen viathe raw frame buffer.
- Keylogging: record input events by hooking
IPCThreadState::Transact from/system/lib/libbinder.so, and intercepting android::parcel with theinterfacecom.android.internal.view.IInputContext. - RoomTap: silently answers a telephone call and staysconnected in the background, allowing the caller to hear conversations withinthe range of the phone's microphone. If the user unlocks their device, they willsee a black screen while the app drops the call, resets call settings andprepares for the user to interact with the device normally.
Finally, the app can remove itself through three ways:
- Via a command from the server
- Autoremove if the device has not been able to check in to the server after60 days
- Via an antidote file. If
/sdcard/MemosForNotes was present onthe device, the Chrysaor app removes itself from the device.
Samples uploaded to VirusTotal
To encourage further research in the security community, we’ve uploaded these sample Chrysaor apps to Virus Total.
Package Name | SHA256 digest | SHA1 certificate |
com.network.android | ade8bef0ac29fa363fc9afd958af0074478aef650adeb0318517b48bd996d5d5 | 44f6d1caa257799e57f0ecaf4e2e216178f4cb3d |
com.network.android | 3474625e63d0893fc8f83034e835472d95195254e1e4bdf99153b7c74eb44d86 | 516f8f516cc0fd8db53785a48c0a86554f75c3ba |
Additional digests with links to Chrysaor
As a result of our investigation we have identified these additional Chrysaor-related apps.
Package Name | SHA256 digest | SHA1 certificate |
com.network.android | 98ca5f94638768e7b58889bb5df4584bf5b6af56b188da48c10a02648791b30c | 516f8f516cc0fd8db53785a48c0a86554f75c3ba |
com.network.android | 5353212b70aa096d918e4eb6b49eb5ad8f59d9bec02d089e88802c01e707c3a1 | 44f6d1caa257799e57f0ecaf4e2e216178f4cb3d |
com.binary.sms.receiver | 9fae5d148b89001555132c896879652fe1ca633d35271db34622248e048c78ae | 7771af1ad3a3d9c0b4d9b55260bb47c2692722cf |
com.android.copy | e384694d3d17cd88ec3a66c740c6398e07b8ee401320ca61e26bdf96c20485b4 | 7771af1ad3a3d9c0b4d9b55260bb47c2692722cf |
com.android.copy | 12e085ab85db887438655feebd249127d813e31df766f8c7b009f9519916e389 | 7771af1ad3a3d9c0b4d9b55260bb47c2692722cf |
com.android.copy | 6348104f8ef22eba5ac8ee737b192887629de987badbb1642e347d0dd01420f8 | 31a8633c2cd67ae965524d0b2192e9f14d04d016 |
Lookout has completed their own independent analysis of the samples we acquired, their report can be viewed
here.