How a mobile app company found the XcodeGhost in the machine

Apple will facing increasingly clever attempts to sneak malware into the App Store

Nick Arnott couldn't figure out recently why Apple kept rejecting an update to a mobile app his company developed.

It turned out the problem was a ghost in the machine.

His company, Possible Mobile, is well versed in the App Store submission rules and has built apps for JetBlue, Better Homes & Gardens and the Major League Soccer.

The rejection came after it was discovered in mid-September that thousands of apps in the App Store had been built with a counterfeit version of an Apple development tool, Xcode.

The fake version, dubbed XcodeGhost and probably developed in China, had been downloaded by many developers from third-party sources, apparently because getting the 4GB code from Apple took too long.

apples xcode development tool Screenshot/Apple

Apple's Xcode tool is used for building applications for the company's devices.

Security researchers found that apps with XcodeGhost posed a privacy risk, as the apps could easily be configured to record data from people's devices and send it to a remote server.

The entry of more than 4,000 XcodeGhost-infected apps into the App Store marked one of the most successful breaches of Apple's stringent security checks, threatening to undermine the company's years-long efforts to keep the store free of malware.

After its app was rejected, Possible Mobile set out to find out why and detailed its efforts in a blog post.

Apple had indicated it had something to do with XcodeGhost. But Arnott and his team were stumped: The version of Xcode they were using was the legitimate one. They reinstalled fresh versions of Xcode on several machines, but Apple still rejected the app.

Making a mobile app is a bit like making sausage: A lot of code frameworks and libraries developed by other companies are used for functions like ad serving and video delivery.

Those frameworks often come as binaries, and developers have no visibility into what is actually in the source code, said Jay Graves, Possible Mobile's CTO, in a phone interview.

"Any of the top apps from top brands on the App Store are going to have something from a third party," Graves said.

Trying to figure out what is in a binary is what security researchers do, not app developers, Graves said. After scratching their heads, they guessed that the problem was probably in a third-party framework.

The framework had been compiled with a tainted Xcode version, and that code was subsequently incorporated into the app by Possible Mobile. After being alerted, the company that developed the framework fixed the problem and delivered a clean version, Graves said.

Apple can now detect apps infected with XcodeGhost. But there's already an improved version of XcodeGhost that tries to make it harder to analyze and detect.

"Every once in a while, you hear about something getting into the App Store that isn't supposed to be there," Arnott said. "But there's kind of an endless list of tricks that malicious developers can use to try to get this stuff past Apple's review process."

To figure out if the third-party framework was the culprit, Possible Mobile had used a command-line tool, grep, to find the URLs that XcodeGhost was programmed to contact, Arnott said.

"The problem with that sort of approach is once those strings change," Arnott said. "We don't necessarily have a solution for that."

The cat-and-mouse game will pose challenges for Apple and developers, Graves said. Apple's guidance can be vague when apps are rejected, probably to prevent attackers getting tipped off about Apple's security processes.

"This story is definitely not over," Graves said. "It's taken a while, but with the proliferation of mobile and iOS being a high-value target, they're seeing a lot more attention from the black-hat society."

Join the PC World newsletter!

Error: Please check your email address.

Our Back to Business guide highlights the best products for you to boost your productivity at home, on the road, at the office, or in the classroom.

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Jeremy Kirk

IDG News Service
Show Comments

Cool Tech

Crucial Ballistix Elite 32GB Kit (4 x 8GB) DDR4-3000 UDIMM

Learn more >

Gadgets & Things

Lexar® Professional 1000x microSDHC™/microSDXC™ UHS-II cards

Learn more >

Family Friendly

Lexar® JumpDrive® S57 USB 3.0 flash drive 

Learn more >

Stocking Stuffer

Plox Star Wars Death Star Levitating Bluetooth Speaker

Learn more >

Christmas Gift Guide

Click for more ›

Most Popular Reviews

Latest News Articles

Resources

GGG Evaluation Team

Kathy Cassidy

STYLISTIC Q702

First impression on unpacking the Q702 test unit was the solid feel and clean, minimalist styling.

Anthony Grifoni

STYLISTIC Q572

For work use, Microsoft Word and Excel programs pre-installed on the device are adequate for preparing short documents.

Steph Mundell

LIFEBOOK UH574

The Fujitsu LifeBook UH574 allowed for great mobility without being obnoxiously heavy or clunky. Its twelve hours of battery life did not disappoint.

Andrew Mitsi

STYLISTIC Q702

The screen was particularly good. It is bright and visible from most angles, however heat is an issue, particularly around the Windows button on the front, and on the back where the battery housing is located.

Simon Harriott

STYLISTIC Q702

My first impression after unboxing the Q702 is that it is a nice looking unit. Styling is somewhat minimalist but very effective. The tablet part, once detached, has a nice weight, and no buttons or switches are located in awkward or intrusive positions.

Featured Content

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?