Telegram, a messaging application that markets itself as a secure communication tool, doesn’t handle encrypted conversations securely, according to the founder of a mobile security company.
Zuk Avraham of Zimperium wrote in a blog post Monday that he found several weak points that allowed him to recover plain text messages.
Avraham didn’t try to directly crack messages encrypted by Telegram, which is backed by Pavel Durov, founder of the popular Russian social networking site Vkontakte. Instead, Avraham focused on an alternative attack using a kernel exploit to gain root access on an Android device and then looking at how Telegram handled messages in memory.
Telegram spokesman Markus Ra contends that Avraham’s attack is one that no application can defend against.
“If you assume that the attacker has root access—no app can be secure,” Ra said via email. “For example, in order to show anything on the screen, you need to put it [in] the device’s memory. An attacker with root access can simply read your device’s memory.”
System-level vulnerabilities such as the one used by Avraham for his research can only be fixed by an OS manufacturer, Ra said.
Attackers are more likely to try and find an OS-level flaw, which would then allow them to probe apps on the phone, Avraham argued in his post.
For his research, Avraham used a device running an older version of Android, 4.2.2. His attack used an application vulnerability that allows an attacker to gain higher level privilege through the Android kernel exploit, CVE-2014-3153, the so-called TowelRoot exploit.
He then looked at how Telegram stores its “secret chat” communications. Telegram doesn’t implement end-to-end encryption on all messages by default. Users must initiate a secret chat to ensure messages are encrypted from the point of creation until they’re decrypted on a recipient’s device.
Avraham dumped Telegram’s process memory and looked for traces of messages he created. He found the words he’d written in Telegram stored in clear text.
“Any attacker that gains access to the device can read the messages without too much effort,” Avraham wrote.
Further investigation showed secret chats stored in a file called “cache4.db” in Telegram’s “files” folder, he wrote. The supposedly secret messages were also there in clear text.
Avraham then set out to see if he could recover messages that had been deleted. He wrote he was still able to find a deleted conversation in memory.
Telegram was notified by Zimperium of the problems on Jan. 18. Avraham wrote that his company contacted Telegram three times over the next three weeks but received no response.
Zimperium has a policy whereby it will publicize some information related to a vulnerability after 30 days if the affected vendor has not responded.