Overview
Stagefright is the media playback service for Android, introduced in Android 2.2 (Froyo). Stagefright in versions of Android prior to 5.1.1_r9 may contain multiple vulnerabilities, including several integer overflows, which may allow a remote attacker to execute code on the device.
Description
According to a Zimperium zLabs blog post, Android's Stagefright engine contains multiple vulnerabilities, including several integer overflows, allowing a remote attacker to access files or possibly execute code on the device. This vulnerability may at least partially affect all versions of Android starting from 2.2 (Froyo) and prior to 5.1.1_r9 (Lollipop). An attacker with a victim's cell phone number may send maliciously crafted multimedia messages (MMS) which may be improperly parsed by the Stagefright tool. Other attack vectors include client-side (web browsers, downloads, email), physically adjacent (NFC, Bluetooth, VCards), physical (SD cards, USB on-the-go, USB Media Transfer Protocol and Picture Transfer Protocol), Gallery, and possibly others not yet identified.
In the November 2015 Security Bulletin, Google announced fixes for the Stagefright 2.0 vulnerabilities will soon be applied to the Android Open Source Project (AOSP) code. Address Space Layout Randomization (ASLR) appears to partially mitigate this issue; Forbes reports that Android before 4.1 (Jelly Bean) have "inadequate exploit mitigations." ASLR was introduced in Android 4.0 and fully enabled in Android 4.1. |
Impact
A remote attacker may be able to execute code on the Android device. |
Solution
Apply an update |
Block all text messages from unknown senders If your default text messaging app does not allow blocking of senders, you may also disable the auto retrieve feature for multimedia messages. This may prevent the autoloading of MMS content into Stagefright. |
Vendor Information
CVSS Metrics
Group | Score | Vector |
---|---|---|
Base | 5.8 | AV:N/AC:M/Au:N/C:P/I:P/A:N |
Temporal | 4.7 | E:POC/RL:W/RC:UR |
Environmental | 3.5 | CDP:ND/TD:M/CR:ND/IR:ND/AR:ND |
References
- https://groups.google.com/forum/#!topic/android-security-updates/n1aw2MGce4E
- https://blog.zimperium.com/zimperium-zlabs-is-raising-the-volume-new-vulnerability-processing-mp3mp4-media/
- https://blog.zimperium.com/the-latest-on-stagefright-cve-2015-1538-exploit-is-now-available-for-testing-purposes/
- https://blog.zimperium.com/stagefright-vulnerability-details-stagefright-detector-tool-released/
- http://blog.zimperium.com/experts-found-a-unicorn-in-the-heart-of-android/
- http://www.forbes.com/sites/thomasbrewster/2015/07/27/android-text-attacks/
- http://www.zdnet.com/article/stagefright-just-how-scary-is-it-for-android-users/
- http://arstechnica.com/security/2015/07/950-million-android-phones-can-be-hijacked-by-malicious-text-messages/
- https://android.googlesource.com/platform/frameworks/av/+/0e4e5a8%5E!/
- https://android.googlesource.com/platform/frameworks/av/+/5c134e6%5E!/
- https://android.googlesource.com/platform/frameworks/av/+/030d8d0%5E!/
- http://source.android.com/devices/media.html
- https://developers.google.com/android/nexus/images
- https://www.duosecurity.com/blog/exploit-mitigations-in-android-jelly-bean-4-1
- https://blog.exodusintel.com/2015/08/13/stagefright-mission-accomplished/
- https://twitter.com/zimperium/status/629057085544660992
- http://www.theregister.co.uk/2015/08/17/botched_google_stagefright_fix_wont_be_resolved_until_september/
- http://www.htc.com/us/support/htc-one-m8-att/news/
- http://www.droid-life.com/2015/09/10/download-lmy48m-ota-updates-for-nexus-devices/
- https://developers.google.com/android/nexus/images?hl=en
Acknowledgements
Thanks to Joshua Drake at Zimperium’s zLabs for working with Google to develop patches and publicly disclose these vulnerabilities. Thanks to Jordan Gruskovnjak and Aaron Portnov of Exodus Intelligence for identifying and disclosing the issues with the original patches.
This document was written by Garret Wassermann.
Other Information
CVE IDs: | CVE-2015-1538, CVE-2015-1539, CVE-2015-3824, CVE-2015-3826, CVE-2015-3827, CVE-2015-3828, CVE-2015-3829, CVE-2015-3864, CVE-2015-6602 |
Date Public: | 2015-07-21 |
Date First Published: | 2015-07-28 |
Date Last Updated: | 2016-01-08 14:19 UTC |
Document Revision: | 127 |