An Israeli security firm will expose a flaw common to thousands of iPhone and iPad applications, which allows miscreants to hijack software using man-in-the-middle attacks.
"We identified a very large number of applications that are vulnerable to this problem," Skycure's CTO Yair Amit told The Register. The programming error will be revealed at the RSA Europe conference in Amsterdam on Tuesday.
"Usually we go through responsible disclosure and contact specific vendors of programs, solve it, then talk about it. In this case it's an interesting challenge in that there's a huge amount of applications, too many to have an organized disclosure route, so we give developers the information they need to fix the applications."
The researchers at Skycure have dubbed the attack HTTP Request Hijacking:
http://www.skycure.com/blog/http-request-hijacking/ It basically works by exploiting weaknesses in the way the apps communicate with backend servers provided by their developers or indeed any websites.
An attacker needs to intercept an app's attempt to fetch data via HTTP and reply with a 301 code that tells the program the requested resource has moved permanently to another address, ie: one controlled by the hijacker:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.htmlThe attack effectively shifts the URL consulted by an application from that used by the developer to whatever the attacker fancies without needing to alert the user. Data expected to be fetched from the backend server will instead feed from the attacker's system, and conversely any information submitted by the app, however personal, will end up in the miscreant's hands.
There's no outward sign that the application has been subverted, Amit said, and once the application is breached it can be manipulated into providing any information sent down the line. He cited the hacked AP Twitter feed that briefly wiped billions off the Dow Jones Industrial Average in April as one possible use for the attack.
The 301 problem has been highlighted as a possible hacking vector before, and best coding practice involves setting up at least a secondary URL that the application automatically defaults to before accepting the redirect. But it seems few coders got the message on this, based on Skycure's research.
Fixing the issue is relatively simple. The company will post a source code fix that can be dropped into applications quickly by developers, and open up a repository of reference material that can be consulted to avoid the problem in the future. Amit said Apple was warned about the issue, but he added that the flaw was in application coding, rather than subverting iOS itself.
(ElReg)