Vulnerabilities discovered by a couple of researchers in the Android version of the secure messaging application Signal can be exploited by remote hackers to alter attachments and cause the app to crash.
Developed by Moxie Marlinspike’s Open Whisper Systems, Signal is a privacy-focused application that provides encrypted instant messaging and voice calling features for iOS and Android. The app is recommended by several renowned privacy advocates, including Edward Snowden, and cryptography experts.
Researchers Markus Vervier and Jean-Philippe Aumasson have analyzed the Android version of Signal and discovered several security issues. One of them is related to the message authentication code (MAC) used to verify attachments.
When users send a file, the attachment is first encrypted and then assigned a MAC that is used to verify the sender and the file’s integrity. The attached file is stored on Amazon’s S3 storage servers and downloaded from there via HTTPS to the recipient’s device.
Vervier and Aumasson determined that a man-in-the-middle (MitM) attacker who has access to the Amazon S3 storage or any of the CA certificates trusted by Android can serve the targeted user an altered attachment. The problem is that the MAC verification function can be bypassed by padding the attachment with 4 Gb plus 1 byte of data.
Experts noted that in practice the attacker does not need to send 4 Gb of data to the victim – they can use HTTP stream compression to reduce the attachment to just 4 Mb.
Another flaw disclosed by Vervier and Aumasson is related to the application’s CallAudioManager class and how it handles Real-time Transport Protocol (RTP) packets. The security hole allows a remote attacker to crash the messaging app, but experts believe it could also be possible to exploit it for other purposes. The problematic code may be present in other applications as well.
The vulnerabilities were reported to Signal developers on September 13 and fixes were committed to GitHub on the same day, but the latest version of the app available on Google Play was released on September 9, which means that a patched Android version has yet to be released. Other issues discovered by the researchers in Signal will be disclosed at a later time.