Vulnerabilities / Threats
8/17/2012
01:33 PM
50%
50%

6 Password Security Essentials For Developers

Solving the weak password challenge requires more than having consumers create strong passwords. Many businesses also need to get a clue about what counts as safe, weak, encrypted, or secure.

Does one of the world's largest grocery chains have a clue when it comes to online password security?

That's one obvious question after London-based Web developer Dan Blows tweeted his discovery that grocery and merchandising retailer Tesco--based on its revenue, the fourth-largest retailer in the world--"stores their website passwords unsalted, and emails them unencrypted."

What's wrong with that? In the eyes of information security experts, emailing plaintext passwords to customers undercuts any other password security mechanisms that might be in place. Plaintext passwords can be intercepted by wireless data sniffers, retrieved from PC hard drives, often intercepted using Firesheep, or lifted from hacked email accounts.

Other Tesco website password sins, according to an analysis published by software architect Troy Hunt on his blog, include limiting users to passwords containing only up to 10 characters and not differentiating between upper-case and lower-case letters. In addition, based on the fact that a password-retrieval request returns a password in entirely capital letters, Hunt said it's obvious that the Tesco website doesn't hash passwords, "because that would fail the case sensitivity test," and also means it's extremely unlikely that the website encrypts passwords when stored.

[ People lose passwords. Learn 5 Ways To Solve The Password Reset Problem. ]

An alleged Tesco support email uploaded to Pastebin further suggests that the company doesn't encrypt passwords. "Although the information is not encrypted the level of security surrounding the password means that only the senior technical positions could access the information," reads the email.

But when it comes to password security, Tesco is "the kind of multi-billion dollar brand that should know how to get Web security basics right, particularly when they're providing online shopping services and handling your payment info," said Hunt. Accordingly, what should Tesco--or any other business with password security problems--do better?

Hunt offered these six tips for developers:

1. Always hash passwords. Use a hashing algorithm designed for passwords, and "also use a cryptographically random salt," said Hunt.

2. Prohibit password retrieval. "Password retrieval should never happen," said Hunt, and if hashing has been implemented correctly, retrieving passwords won't be possible. Instead, "always implement a secure password reset process," he said.

3. Don't limit password length or variety. "There should never be restrictions on password entropy," said Hunt. "Don't exclude special characters, don't chop the length at a short, arbitrary limit--if you have to, make it 100 chars or so-and definitely don't implement a system which is case-insensitive."

4. Don't mix HTTP and HTTPS. One common password-related error developers make is to use HTTP content on HTTPS pages, as well as to provide credentials via HTTP. " Credentials--and arguably entire sessions in the wake of Firesheep--should not be transferred over unencrypted networks," said Hunt. "It's just too easy to get hold of them."

5. Keep systems updated. Beyond poor password practices, Hunt also found--via the Fiddler Web debugging proxy--that the Tesco Web server that runs its Web applications rates as very out of date. In particular, it's running IIS 6, which is seven years old and twice--nearly thrice--superseded, as well as ASP.NET 1.1, which Hunt noted is "now nine years old." While such systems were fine in their day, "the security landscape has changed significantly since these technologies were launched and ongoing improvements in newer generations of the breed make continued progress in ensuring a more secure app by default," he said.

6. Educate the customer service team. In response to security experts questioning Tesco's website security prowess, the company's customer care team tweeted, "We know how important Internet security is to customers and the measures we have are robust."

Later, in response to specific criticisms from Hunt, Tesco tweeted, "Let me assure you that all customer passwords are stored securely & in line with industry standards across online retailers." Hunt responded: "Let me assure you that if you are emailing passwords to customers, you are well short of industry standards on a number of fronts."

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
Register for Dark Reading Newsletters
Dark Reading Live EVENTS
INsecurity - For the Defenders of Enterprise Security
A Dark Reading Conference
While red team conferences focus primarily on new vulnerabilities and security researchers, INsecurity puts security execution, protection, and operations center stage. The primary speakers will be CISOs and leaders in security defense; the blue team will be the focus.
White Papers
Video
Cartoon Contest
Write a Caption, Win a Starbucks Card! Click Here
Latest Comment: No, no, no! Have a Unix CRON do the pop-up reminders!
Current Issue
Security Vulnerabilities: The Next Wave
Just when you thought it was safe, researchers have unveiled a new round of IT security flaws. Is your enterprise ready?
Flash Poll
The Impact of a Security Breach 2017
The Impact of a Security Breach 2017
Despite the escalation of cybersecurity staffing and technology, enterprises continue to suffer data breaches and compromises at an alarming rate. How do these breaches occur? How are enterprises responding, and what is the impact of these compromises on the business? This report offers new data on the frequency of data breaches, the losses they cause, and the steps that organizations are taking to prevent them in the future.
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2017-0290
Published: 2017-05-09
NScript in mpengine in Microsoft Malware Protection Engine with Engine Version before 1.1.13704.0, as used in Windows Defender and other products, allows remote attackers to execute arbitrary code or cause a denial of service (type confusion and application crash) via crafted JavaScript code within ...

CVE-2016-10369
Published: 2017-05-08
unixsocket.c in lxterminal through 0.3.0 insecurely uses /tmp for a socket file, allowing a local user to cause a denial of service (preventing terminal launch), or possibly have other impact (bypassing terminal access control).

CVE-2016-8202
Published: 2017-05-08
A privilege escalation vulnerability in Brocade Fibre Channel SAN products running Brocade Fabric OS (FOS) releases earlier than v7.4.1d and v8.0.1b could allow an authenticated attacker to elevate the privileges of user accounts accessing the system via command line interface. With affected version...

CVE-2016-8209
Published: 2017-05-08
Improper checks for unusual or exceptional conditions in Brocade NetIron 05.8.00 and later releases up to and including 06.1.00, when the Management Module is continuously scanned on port 22, may allow attackers to cause a denial of service (crash and reload) of the management module.

CVE-2017-0890
Published: 2017-05-08
Nextcloud Server before 11.0.3 is vulnerable to an inadequate escaping leading to a XSS vulnerability in the search module. To be exploitable a user has to write or paste malicious content into the search dialogue.