Remote exploitation of a man-in-the-disk vulnerability in WhatsApp (CVE-2021-24027)
CENSUS has been investigating for some time now the exploitation potential of Man-in-the-Disk (MitD) [01] vulnerabilities in Android. Recently, CENSUS identified two such vulnerabilities in the popular WhatsApp messenger app for Android [34]. The first of these was possibly independently reported to Facebook and was found to be patched in recent versions, while the second one was communicated by CENSUS to Facebook and was tracked as CVE-2021-24027 [33]. As both vulnerabilities have now been patched, we would like to share our discoveries regarding the exploitation potential of such vulnerabilities with the rest of the community.
WhatsApp exposure of TLS 1.2 cryptographic material to third party apps
CENSUS ID: | CENSUS-2021-0002 |
CVE ID: | CVE-2021-24027 |
Affected Products: | WhatsApp Messenger for Android, versions prior to 2.21.4.18 |
Class: | Exposure of Sensitive Information to an Unauthorized Control Sphere (CWE-497) |
Discovered by: | Chariton Karamitas |
CENSUS identified that versions prior to 2.21.4.18 of WhatsApp for Android allowed third party apps to access WhatsApp TLS 1.2 cryptographic material, as this was stored in "app-specific external storage". On Android 9 and previous versions of Android, the material is exposed to any third party app that bears the READ_EXTERNAL_STORAGE or WRITE_EXTERNAL_STORAGE permission. On Android 10 a malicious app would also require the requestLegacyExternalStorage attribute to access the files. Through the installation of a malicious app, or alternatively, through the exploitation of a vulnerable app (or Android component) that resides on a WhatsApp user's mobile device, remote actors were able to control the victim user's TLS session cryptographic secrets and could thus perform Man-in-The-Middle attacks to WhatsApp communications. Research has shown that exploitation of this vulnerability can lead to remote code execution on the victim device. CENSUS strongly recommends updating WhatsApp to version 2.21.4.18 or greater. This is a serious vulnerability which could be abused for surveillance purposes.
Samsung Hypervisor (RKP) arbitrary zero write
CENSUS ID: | CENSUS-2020-0002 |
CVE ID: | CVE-2019-19273 |
Samsung ID: | SVE-2019-16265 (Look for SVE-2019-16265) |
Affected Products: | Samsung mobile devices running Android O(8.0) and P(9.0) with Exynos 8895 chipset (tested on S8 and Note8 firmware) |
Class: | "Write What Where" Condition where "What" is always zero (CWE-123) |
Discovered by: | Aristeidis Thallas |
CENSUS identified a bug in RKP, the Samsung EL2 Hypervisor implementation. The bug allows to write the zero 64-bit value to an arbitrary memory address. For the bug to be triggered, code execution is required in the context of the EL1 kernel. The bug was verified on the Samsung S8 and Note8 devices and was fixed by Samsung in the "SMR February-2020 Release 1". The bug may allow an adversary with kernel execution access to circumvent established security controls through the corruption of device memory. Users are urged to follow the latest security updates offered by Samsung for their mobile devices.
Emulating Hypervisors: a Samsung RKP case study (OffensiveCon 2020)
Hello, I'm Aris Thallas, a computer security researcher working at CENSUS. Back in February 2020 I had the pleasure of presenting my work on proprietary hypervisor emulation and bug discovery at the OffensiveCon 2020 conference.