Application Security // Database Security
11:40 PM
Connect Directly

Bad SSH Key Management Leaves Databases At Risk

Not enough oversight of keys leaves SSH clients open to abuse

A "gaping hole" in the way enterprises govern the use of one of IT's least sexy but most used access control and encryption protocols is leaving many sensitive database servers and other network devices at serious risk.

Secure Shell (SSH) -- a Swiss army knife in the arsenal of many an IT department -- is best known for aiding in the creation of encrypted tunnels to secure remote access and file transfers, but has gradually gained even more acceptance as a way to secure machine-to-machine connections to help enterprises move large amounts of valuable and sensitive data.

But experts say that enterprises do such a poor job of managing the public/private key pairs upon which the protocol depends that they're putting many of their most sensitive data assets at risk, including database servers that use SSH to connect with applications that tap into them.

According to Charles Kolodgy, an analyst for IDC, at most enterprises the internal means by which organizations manage their SSH keys are "often clumsy and decentralized." What's more, when organizations do take steps to secure use of keys by central access by only a few privileged administrators, they often don't monitor those privileged insiders for policy violations, creation of rogue keys, or other suspicious behavior that could put the security of SSH communications in jeopardy.

That's a scary thought, considering how much trust is put into SSH as an authenticator.

[Why do data breach costs continue to grow? See Negligence, Glitches Push Up Cost Of Breaches Worldwide.]

"An interesting unintended consequence of SSH is that an SSH connection can be used to bypass access control mechanisms such as password-based systems," Kolodgy recently wrote. "If a system account -- operating systems, middleware, databases, and applications for running processes -- has a key association, a user can make a connection to the system account, circumventing the standard password-based authentication. This access is made possible because the SSH key association provides acceptable authentication."

This potential IAM end-around leaves databases particularly vulnerable, says Jason Thompson, director of global marketing for SSH Communications Security.

"Let's say you're dealing with a large database environment and you've got an SSH client on that particular database server, and there's a key someone has access to, they could potentially get in there and pull all that information out of the database," he says. "They're going to be able to do it in an encrypted fashion, and they're going to look like an authorized user."

According to Thompson, this type of vulnerability stemming from poor governance of the key management process is exacerbated by the fact that SSH is so heavily used in machine-to-machine traffic. He says it is a common misperception that SSH is primarily driven by "interactive human usage," but the truth is that user traffic makes up less than 20% of SSH traffic in the enterprise. The rest is driven by automated machine-to-machine transactions.

"What that means is that even though it is machine-to-machine traffic that the keys are being utilized for, an individual could hijack that encrypted network and gain access to that dedicated machine-to-machine traffic," he says. "If they got into a large environment with a key with very high level of privilege, they're going to have pretty much unfettered access to a large swath of the environment."

The bottom line is that organizations have to do a better job managing keys and monitoring how they're used.

"Organizations categorically do not have a management system in place that continuously monitors and manages SSH keys within their networks," said Jeff Hudson, CEO of Venafi. "Those networks often have thousands of systems utilizing SSH for elevated and privileged access. This improper management of trust technologies has created a gaping hole that is the target of advanced persistent threats."

Have a comment on this story? Please click "Add Your Comment" below. If you'd like to contact Dark Reading's editors directly, send us a message. Ericka Chickowski specializes in coverage of information technology and business innovation. She has focused on information security for the better part of a decade and regularly writes about the security industry as a contributor to Dark Reading.  View Full Bio

Comment  | 
Print  | 
More Insights
Newest First  |  Oldest First  |  Threaded View
Mark Stanislav
Mark Stanislav,
User Rank: Apprentice
6/12/2013 | 3:00:01 PM
re: Bad SSH Key Management Leaves Databases At Risk
This is a fantastic article! Anyone who's been a systems administrator in the *nix world has dealt with this tango of convenience and insecurity for a long-time. More so, developers have definitely gotten into the mix (just look at GitHub's SSH key management feature) over the past few years in large numbers.

Managing keys is definitely a problem since many groups don't centrally handle them in the same manner they may user accounts. A really powerful way to both secure the authentication process and help prevent users who no longer should have privilege is through using "SSH Key Callback" for two-factor authentication.

For a full overview of how that's achieved, check out a blog post we did over at Duo Security a couple years ago:

The ability to enforce two-factor authentication at a granular level (per key, if you want) allows for helping to manage the sometimes unruly nature of SSH keys centrally. For instance, if your employee leaves you can simply disable their ability to authenticate through a central administration console. Even if they were to login with a valid SSH key your team forgot to remove for authorized_keys, it would reject them at the second factor authentication.
Register for Dark Reading Newsletters
White Papers
Current Issue
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
Published: 2014-08-31
The device-initialization functionality in the MSM camera driver for the Linux kernel 2.6.x and 3.x, as used in Qualcomm Innovation Center (QuIC) Android contributions for MSM devices and other products, enables MSM_CAM_IOCTL_SET_MEM_MAP_INFO ioctl calls for an unrestricted mmap interface, which all...

Published: 2014-08-31
Stack-based buffer overflow in the acdb_ioctl function in audio_acdb.c in the acdb audio driver for the Linux kernel 2.6.x and 3.x, as used in Qualcomm Innovation Center (QuIC) Android contributions for MSM devices and other products, allows attackers to gain privileges via an application that lever...

Published: 2014-08-31
app/aboot/aboot.c in the Little Kernel (LK) bootloader, as distributed with Qualcomm Innovation Center (QuIC) Android contributions for MSM devices and other products, allows attackers to overwrite signature-verification code via crafted boot-image load-destination header values that specify memory ...

Published: 2014-08-31
A certain Qualcomm Innovation Center (QuIC) patch to the NativeDaemonConnector class in services/java/com/android/server/ in Code Aurora Forum (CAF) releases of Android 4.1.x through 4.3.x enables debug logging, which allows attackers to obtain sensitive disk-encryption pas...

Published: 2014-08-31
The Qualcomm Innovation Center (QuIC) init scripts in Code Aurora Forum (CAF) releases of Android 4.1.x through 4.4.x allow local users to modify file metadata via a symlink attack on a file accessed by a (1) chown or (2) chmod command, as demonstrated by changing the permissions of an arbitrary fil...

Best of the Web
Dark Reading Radio
Archived Dark Reading Radio
This episode of Dark Reading Radio looks at infosec security from the big enterprise POV with interviews featuring Ron Plesco, Cyber Investigations, Intelligence & Analytics at KPMG; and Chris Inglis & Chris Bell of Securonix.