Database permissions can cause headaches for even the most sophisticated security organizations. Indeed, many of the most persistent problems with malicious or risky database access start before the database server software is even up and running.
Why are database access controls so maddeningly complex? In a word, flexibility -- the very flexibility that enables organizations to create multiple and interlocking roles can also create a knot of confusion and vulnerability.
Why are database permissions such a sore spot for otherwise sophisticated organizations? Security experts agree that many of the most persistent problems with malicious or risky database access start before the database server software is even up and running.
There are many reasons for this disconnect. For one thing, access controls in modern databases are designed to be infinitely flexible to support the vast array of applications and uses that enterprise databases are called on to perform.
"It's in the nature of many of these databases that they have a straightforward role-based access control system at the center, but -- being flexible -- it becomes very complex," says Josh Shaul, the CTO at Application
Security, a database activity monitoring firm. Users, Shaul notes, might be assigned access permissions individually and as a member of one or more "roles."
All this talk about complex user and role-based privileges ignores what experts consider the biggest security gap of all: catch-all pseudo-user groups like Oracle's PUBLIC. These groups are intended to be bare-bones, minimum privilege roles that encompass every database user. The truth, however, is often very different.
Older Oracle databases -- like Oracle 9 and 10, for example -- granted PUBLIC execute privileges on a number of important packages by default, including the Oracle encryption toolkit and utilities that allow PUBLIC users to read and write to the file system, access TCP-based networking functionality and send mail. Newer versions have eliminated some of those permissions from PUBLIC but still give the PUBLIC group access to many database objects.
Once organizations have a handle on their most powerful super users and have curtailed the privileges of the unwashed masses in pseudo-user groups like PUBLIC, they need to tackle a thornier problem: how to monitor user activity and identify abhorrent, malicious or just unwanted behaviors.
To get details on how to monitor database access activity -- and to learn more about the technologies and practices for controlling database resources -- download the free report on database access control.
Have a comment on this story? Please click "Add a Comment" below. If you'd like to contact Dark Reading's editors directly, send us a message.