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

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
Cartoon
Current Issue
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2012-3946
Published: 2014-04-24
Cisco IOS before 15.3(2)S allows remote attackers to bypass interface ACL restrictions in opportunistic circumstances by sending IPv6 packets in an unspecified scenario in which expected packet drops do not occur for "a small percentage" of the packets, aka Bug ID CSCty73682.

CVE-2012-5723
Published: 2014-04-24
Cisco ASR 1000 devices with software before 3.8S, when BDI routing is enabled, allow remote attackers to cause a denial of service (device reload) via crafted (1) broadcast or (2) multicast ICMP packets with fragmentation, aka Bug ID CSCub55948.

CVE-2013-6738
Published: 2014-04-24
Cross-site scripting (XSS) vulnerability in IBM SmartCloud Analytics Log Analysis 1.1 and 1.2 before 1.2.0.0-CSI-SCALA-IF0003 allows remote attackers to inject arbitrary web script or HTML via an invalid query parameter in a response from an OAuth authorization endpoint.

CVE-2014-0188
Published: 2014-04-24
The openshift-origin-broker in Red Hat OpenShift Enterprise 2.0.5, 1.2.7, and earlier does not properly handle authentication requests from the remote-user auth plugin, which allows remote attackers to bypass authentication and impersonate arbitrary users via the X-Remote-User header in a request to...

CVE-2014-2391
Published: 2014-04-24
The password recovery service in Open-Xchange AppSuite before 7.2.2-rev20, 7.4.1 before 7.4.1-rev11, and 7.4.2 before 7.4.2-rev13 makes an improper decision about the sensitivity of a string representing a previously used but currently invalid password, which allows remote attackers to obtain potent...

Best of the Web