Perimeter
1/11/2011
08:57 PM
Adrian Lane
Adrian Lane
Commentary
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
Cartoon
Current Issue
Dark Reading December Tech Digest
Experts weigh in on the pros and cons of end-user security training.
Flash Poll
Title Partner’s Role in Perimeter Security
Title Partner’s Role in Perimeter Security
Considering how prevalent third-party attacks are, we need to ask hard questions about how partners and suppliers are safeguarding systems and data.
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2014-6477
Published: 2014-11-23
Unspecified vulnerability in the JPublisher component in Oracle Database Server 11.1.0.7, 11.2.0.3, 11.2.0.4, 12.1.0.1, and 12.1.0.2 allows remote authenticated users to affect confidentiality via unknown vectors, a different vulnerability than CVE-2014-4290, CVE-2014-4291, CVE-2014-4292, CVE-2014-4...

CVE-2014-4807
Published: 2014-11-22
Sterling Order Management in IBM Sterling Selling and Fulfillment Suite 9.3.0 before FP8 allows remote authenticated users to cause a denial of service (CPU consumption) via a '\0' character.

CVE-2014-6183
Published: 2014-11-22
IBM Security Network Protection 5.1 before 5.1.0.0 FP13, 5.1.1 before 5.1.1.0 FP8, 5.1.2 before 5.1.2.0 FP9, 5.1.2.1 before FP5, 5.2 before 5.2.0.0 FP5, and 5.3 before 5.3.0.0 FP1 on XGS devices allows remote authenticated users to execute arbitrary commands via unspecified vectors.

CVE-2014-8626
Published: 2014-11-22
Stack-based buffer overflow in the date_from_ISO8601 function in ext/xmlrpc/libxmlrpc/xmlrpc.c in PHP before 5.2.7 allows remote attackers to cause a denial of service (application crash) or possibly execute arbitrary code by including a timezone field in a date, leading to improper XML-RPC encoding...

CVE-2014-8710
Published: 2014-11-22
The decompress_sigcomp_message function in epan/sigcomp-udvm.c in the SigComp UDVM dissector in Wireshark 1.10.x before 1.10.11 allows remote attackers to cause a denial of service (buffer over-read and application crash) via a crafted packet.

Best of the Web
Dark Reading Radio
Archived Dark Reading Radio
Now that the holiday season is about to begin both online and in stores, will this be yet another season of nonstop gifting to cybercriminals?