Millions of subscribers to Virgin Mobile's services in the United States are wide open to account hijacking because of the insecure manner in which the company authenticates users to their online accounts, an independent software developer warned this week.
In a blog post on Monday, Kevin Burke detailed how the username and password system used by Virgin Mobile to let users access their account information, is inherently weak and open to abuse.
Virgin forces subscribers to use their phone numbers as their username and a six-digit number as their password, Burke noted in his blog.
Because the password is just six digits long it is easy to guess using brute-force password guessing tools, says Burke.
With the password and phone number, an attacker would be able to get a user's entire call records and texting history, change the handset associated with the number and change service address and password to lock the actual user out of an account, he said.
"There is no way to defend against this attack," Burke wrote, adding that he had authored a script to brute-force the PIN number to his own account to test the vulnerability. "It is trivial to write a program that checks all million possible password combinations, easily determining anyone's PIN inside of one day," Burke wrote.
Burke told Computerworld the script he had written was designed to test password combinations at the rate of one per second. The script tried a few thousand combinations before hitting the correct PIN, Burke said. "This was enough to demonstrate Virgin wasn't freezing my account, throttling my IP or implementing any other of a number of security measures that would have helped mitigate the issue," he said.
"If an attacker was serious about hacking into someone's account, they would make hundreds of requests to Virgin's servers per second and find the right PIN in a few hours," Burke said. If done properly, the requests to Virgin's servers would remain undetected, he said. "If traffic to other parts of [Virgin's] website was affected, they would definitely notice. However if you were limiting your requests below a performance-degrading level," the brute-force password guessing attempts would likely go unnoticed, he said.
Burke said had informed Virgin Mobile of the "gaping security" weakness several weeks ago and decided to go public with it only because the company did not mitigate the issue. He said he had proposed several fairly simple to implement measures that Virgin Mobile could take to address the weakness.
The proposals included one that would require Virgin subscribers to set more complex passwords involving alphabets, numerals and symbols. Burke said he also suggested that Virgin freeze user accounts after five failed login attempts or implement a two-factor authentication mechanism for controlling access to user accounts.
Sprint, which owns Virgin Mobile in the U.S., did not respond to a request for comment. However, after the report went public, Virgin Mobile has implemented a change that locks people out of their account after four failed log in attempts, Burke said.
That change by itself fails to address the issue, he added. "It's completely ineffective. The freeze only works if you use the same cookies on each failed attempt," Burke said.
"This is akin to Virgin asking people to tell them how many times they've failed to log in. The bypass is trivial -- clear your cookies between each request, or just make login attempts without sending any cookies," he said.
Until a better fix is available, Virgin Mobile subscribers have little defense against account hijacking, Burke said. Changing the PIN does not work because the new PIN would be as guessable as the old one, he added.
Jaikumar Vijayan covers data security and privacy issues, financial services security and e-voting for Computerworld. Follow Jaikumar on Twitter at @jaivijayan or subscribe to Jaikumar's RSS feed . His e-mail address is firstname.lastname@example.org.