State-Sponsored Backdoor Or Programming Faux Pas?Backdoor in Android-based handsets sponsor, bad programming, or a #win for Apple's stringent application QA process?
Earlier this month, a Pastebin post that detailed the presence of a possible backdoor on the Android-based ZTE Score M mobile phone handset caught my attention. For those of you who are unfamiliar, ZTE (formally Zhongxing Telecommunication Equipment Corp.) is a telecommunications manufacturing company and, like the more well-known Huawei, is based out of Shenzhen, China.
The original report of the purported backdoor documents a said root application that could be forked by any nonprivileged process that has file system access to obtain a super-user shell. In order to obtain a shell, the binary (named sync_agent) must be passed a super-secret parameter of "ztex1609523."
The post closes with the statement, "Nice backdoor, ZTE."
Given the geography of the vendor and the nature of the binary, the tweet stream, security forums, and press alike were pretty quick to pick up on this report, speculating over the possible intent of the binary. As it turns out, the offending component was an apk (or Android package) specifically built for the U.S. cellular carrier MetroPCS.
On closer analysis, the "helper" application is dropped by the package in order to facilitate the installation and removal of other software packages and the execution of a number of busybox commands, intended to further facilitate the management of the application. While unorthodox, analysis of the sync_agent binary neither indicates any additional malicious intent nor features any indications of a state-sponsored attack against users of a U.S.-based carrier as several blogs suggested earlier on.
Interestingly, analysis of the sync_agent actually indicates U.S. origin, given various tool-markings in the binary and various debug messages that indicate a native-English speaking author.
Although the binary is unlikely the work of a nation-state or super-criminal, it does bring back memories of BMG, the Sony "rootkit" that was all over the headlines in 2005. Essentially, Sony had included functionality within software distributed on its media that featured a device driver that implemented kernel hooks to hide files with certain extensions. While there was no real malicious intent there, it did raise questions as to how that might expose users to malicious software that leverages the Sony code to prevent detection.
Similarly, the ZTE Metro PCS Android package fails to use accepted Droid development doctrine and built-in APIs for performing privileged operations; as a result, it absolutely exposed users to some significant risk due to the opportunity for malicious software to leverage the helper binary for nefarious purposes.
While the number of impacted devices seems to be minimal, it does further demonstrate the need for restraint when characterizing rumors of malicious code, and a clear need for better QA of Android applications. It also shows what the future might hold in terms of truly malicious Android applications created by state (and other) sponsors entering the supply chain.
Tom Parker is Chief Technology Officer at FusionX.