A configuration problem in Facebook’s popular Instagram application for Apple devices could allow a hacker to hijack a person’s account if they’re both on the same public Wi-Fi network.
Stevie Graham, who describes himself as a “hacker at large” based in London, wrote on Twitter that Facebook won’t pay him a reward for reporting the flaw, which he said he found years ago.
Graham wrote he hopes to draw more attention to the issue by writing a tool that could quickly compromise many Instagram accounts. He cheekily calls the tool “Instasheep,” a play on Firesheep, a Firefox extension that can compromise online accounts in certain circumstances.
“I think this attack is extremely severe because it allows full session hijack and is easily automated,” according to Graham’s technical writeup. “I could go to the Apple Store tomorrow and reap thousands of accounts in one day, and then use them to post spam.”
Graham’s finding is a long-known configuration problem that has prompted many Web companies to fully encrypt all connections made with their servers. The transition to full encryption, signified by “https” in a browser URL bar and by the padlock symbol, can be technically challenging.
Instagram’s API (application programming interface) makes unencrypted requests to some parts of its network, Graham wrote. That poses an opportunity for a hacker who is on the same Wi-Fi network that doesn’t use encryption or uses the outdated WEP encryption, which can be easily cracked.
Some of those Instagram API calls transmit an unencrypted session cookie, or a data file that lets Instagram know a user is still logged in. By collecting the network traffic, known as a man-in-the-middle attack, the session cookie can be stolen and used by an attacker to gain control of the victim’s account.
Facebook officials didn’t have an immediate comment, but Instagram’s co-founder, Mike Krieger, wrote on Ycombinator’s Hacker News feed that Instagram has been “steadily increasing” use of full encryption.
Its “Instagram Direct” service, which allows photos to be shared with only small groups of people, is fully encrypted, he wrote. For more latency-sensitive endpoints, such as Instagram’s main feed, the service is trying to make sure the transition to https doesn’t affect performance, he wrote.
“This is a project we’re hoping to complete soon, and we’ll share our experiences in our [engineering] blog so other companies can learn from it as well,” Krieger wrote.
Google offered full encryption as an option for Gmail in 2008, but two years later made it the default. Facebook switched it on by default in January 2011