Perimeter
1/11/2011
08:57 PM
Adrian Lane
Adrian Lane
Commentary
Connect Directly
RSS
E-Mail
50%
50%

A Textbook Case For Monitoring

Vodafone's customer database leak demonstrates dangers of not properly monitoring database activity

A common problem with protecting sensitive database is limiting what data users see. An employee might be allowed to see any record in a database, but he is not allowed to see every record at the same point in time. For example, it's perfectly acceptable for customer service or a salesperson to view a customer record in service of that relationship. It's not OK that he be able to select the entire freakin' customer database.

But if the quotes from the management team are accurate, that's exactly what happened with the Vodafone data breach. And like many breaches, the company found out only when it was informed from someone outside the company.

The Vodafone case is a textbook example of why database activity monitoring (DAM) exists. One of the principle drivers behind monitoring software is to verify usage of systems or applications -- or conversely detect misuse. While this category of problem is commonly referred to as "the insider threat," that's really only a hyped subset of the specific operational problems being addressed. It's about protecting data while still performing the tasks the application was designed to perform. And this is most problematic with databases because the SQL query language is designed to return lots of information quickly and easily. Providing every row in the database except those filtered out by the "WHERE" clause is a core database feature. Validation of business and security rules is not.

Technologies like labeling can limit the rows within a table a single user is allowed to see, but it does not help limit the quantity of data extracted. Similarly, using an application or stored procedure to limit the amount of information a user can access at any one time can help, but most applications don't have this capability built in. Worse, they are expensive to retrofit and don't have the capabilities to track users over time. Perhaps most important, queries sent directly to the database bypass these controls. The point is there are several (kludgy) ways to accomplish the goal, but none is as easy or effective as DAM.

Every single DAM product on the market has policies to detect when a user selects "too many rows," or selects entire columns of sensitive information instead of a single row. Most have the capacity to track usage over time, so they build a profile of user activity and results and compare this with proper use models, alerting when there is a significant deviation from what is considered normal. At a minimum, someone runs "select * from customers" and security gets alerted. Some products will even block the query before the data is leaked. At the very minimum, even if you don't have a specific policy to protect data from the attack, you have an activity trail for forensic audits. This problem keeps popping up because most companies don't monitor or validate database usage.

Adrian Lane is an analyst/CTO with Securosis LLC, an independent security consulting practice. Special to Dark Reading. Adrian Lane is a Security Strategist and brings over 25 years of industry experience to the Securosis team, much of it at the executive level. Adrian specializes in database security, data security, and secure software development. With experience at Ingres, Oracle, and ... View Full Bio

Comment  | 
Print  | 
More Insights
Register for Dark Reading Newsletters
White Papers
Flash Poll
Current Issue
Cartoon
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2014-0103
Published: 2014-07-29
WebAccess in Zarafa before 7.1.10 and WebApp before 1.6 stores credentials in cleartext, which allows local Apache users to obtain sensitive information by reading the PHP session files.

CVE-2014-0475
Published: 2014-07-29
Multiple directory traversal vulnerabilities in GNU C Library (aka glibc or libc6) before 2.20 allow context-dependent attackers to bypass ForceCommand restrictions and possibly have other unspecified impact via a .. (dot dot) in a (1) LC_*, (2) LANG, or other locale environment variable.

CVE-2014-0889
Published: 2014-07-29
Multiple cross-site scripting (XSS) vulnerabilities in IBM Atlas Suite (aka Atlas Policy Suite), as used in Atlas eDiscovery Process Management through 6.0.3, Disposal and Governance Management for IT through 6.0.3, and Global Retention Policy and Schedule Management through 6.0.3, allow remote atta...

CVE-2014-2226
Published: 2014-07-29
Ubiquiti UniFi Controller before 3.2.1 logs the administrative password hash in syslog messages, which allows man-in-the-middle attackers to obtains sensitive information via unspecified vectors.

CVE-2014-3020
Published: 2014-07-29
install.sh in the Embedded WebSphere Application Server (eWAS) 7.0 before FP33 in IBM Tivoli Integrated Portal (TIP) 2.1 and 2.2 sets world-writable permissions for the installRoot directory tree, which allows local users to gain privileges via a Trojan horse program.

Best of the Web
Dark Reading Radio