A malware campaign of yet-to-be-determined origin is infecting jailbroken iPhones and iPads to steal Apple account credentials from SSL encrypted traffic.
The threat was discovered after some users reported on Reddit that they experienced crashes in some applications as a result of a mysterious MobileSubstrate add-on called Unflod.
MobileSubstrate, now called Cydia Substrate, is a framework for jailbroken devices that allows developers to create modifications for iOS.
"This 'substrate' allows you to extend and to modify the behaviour of iOS in ways that are deliberately prohibited by Apple on unjailbroken devices, such as by hooking, or intercepting, system functions to make them do new and interesting (though sadly also perhaps dangerous) things," wrote Paul Ducklin, the head of technology for Asia-Pacific at antivirus vendor Sophos, in a blog post Monday.
It appears that someone created a dynamic library for Cydia Substrate that hooks the legitimate iOS SSLWrite function to read data before it's encrypted and sent over a secure SSL connection. The rogue library is called Unflod.dylib, but instances with the name framework.dylib have also been observed.
"It has been suggested that the choice of name might have something to do with the existence of a real tweak called Unfold," researchers from SektionEins, a security consultancy company based in Germany, said in a blog post discussing the threat. "The choice of name might therefore just be an attempt to hide in plain sight."
After hooking the SSLWrite function, the malware monitors traffic for authentication requests with Apple's services. It then extracts Apple IDs and passwords from the data and sends them to one of two hardcoded IP (Internet Protocol) addresses.
It's not clear how the malicious Unflod.dylib library gets installed on jailbroken devices, but users and researchers have advanced the possibility that packages from unofficial repositories might be the source of infection.
There's also some circumstantial evidence pointing to a Chinese connection, the library being digitally signed with a legitimate developer certificate issued by Apple in February to someone named Wang Xin.
"This person might be a fake persona, the victim of certificate theft or really involved," the SektionEins researchers said. "It is impossible for us to know, but Apple should be able to investigate from this information and terminate that developer account."
However, whether the developer certificate is valid or not doesn't really matter, because the malicious code doesn't need to be digitally signed to work on jailbroken devices in the first place.
"Currently the jailbreak community believes that deleting the Unflod.dylib/framework.dylib binary and changing the Apple ID's password afterwards is enough to recover from this attack," the SektionEins researchers said.
"However it is still unknown how the dynamic library ends up on the device in the first place and therefore it is also unknown if it comes with additional malware gifts. We therefore believe that the only safe way of removal is a full restore, which means the removal and loss of the jailbreak," the researchers added.