Twitter Overhauls Two Factor Authentication System

Take two: Twitter drops SMS for private keys stored on Android or iPhone smartphones, adds previously missing recovery capability.
Smolen said the move to an SMS-free system defends against the potential that the server being used to generate one-time codes might be compromised. "We chose a design that is resilient to a compromise of the server-side data's confidentiality: Twitter doesn't persistently store secrets, and the private key material needed for approving login requests never leaves your phone," he said.

The approach also sidesteps the problem of smartphones being infected by malware that could intercept one-time SMS codes. That capability already has been seen with Android malware that's designed to intercept mobile transaction authorization numbers (mTANs) -- one-time codes -- sent by some banks to customers before approving a high-value transaction request.

"No malware that I know of has gone after non-bank SMS codes. But to do so would be extremely trivial for such malware," said Sean Sullivan, security advisor at F-Secure Labs, via email, who called Twitter's SMS-free approach "a useful feature."

Referring to the Syrian Electronic Army (SEA), Sullivan added, "The SEA kind of cooled off, at least on Twitter -- if not Channel 4 -- but there will definitely be attempts on high-profile accounts in the future."

Twitter first began offering two-factor authentication in May, following a number of embarrassing high-profile takeovers of Twitter accounts by the likes of the SEA. Those takeovers included a hoax post via the Associated Press (AP) account about a bomb at the White House that lead to a temporary plunge in the Dow Jones industrial average.

But Twitter's first two-factor authentication system was relatively basic, and many security experts recommended avoiding it. That system involved sending a one-time code to a mobile phone via SMS, which a user then needed to input into the Twitter website. But the system offered no compatibility with authentication software -- such as Google Authenticator -- that might already reside on a user's mobile device. Furthermore, it offered no backup access to accounts if the phone got lost, and was limited to one phone per account, which made it unsuitable for use with group accounts.

Twitter's revamped system seems to have addressed those problems, and perhaps more. "We wanted to come up with a design where it is only stored on the client side; the secret's only stored on the phone," Smolen told Wired.

But in the wake of National Security Agency whistleblower Edward Snowden's revelations into the U.S. government's current surveillance programs, there might be more to that statement than first meets the eye, said F-Secure's Sullivan. "The secret is only on the client side," he said. "So I guess the NSA cannot ask Twitter for the secret? That definitely seems to fit Twitter's way of doing things. Maybe the security gag orders have kept Twitter from saying just why they're doing it this way?"

Editors' Choice
Jai Vijayan, Contributing Writer, Dark Reading
Kelly Jackson Higgins 2, Editor-in-Chief, Dark Reading