Database Security Restart

How to restart your database security program

Adrian Lane, Contributor

March 25, 2013

4 Min Read
Dark Reading logo in a gray background | Dark Reading

I'd mentioned a couple posts back that I was being asked to jump-start database security programs for several companies. Some large enterprises, some small, but the basic problem is the same: They need to get a handle on the current security situation and plan how to improve across the board. So in concept this is pretty simple, just figure out where they want to be, and build a plan to get there.

In reality, getting consistency across the company is a big challenge. Each firm has some existing tools to automate the mundane security tasks, but the quality of the tools and resources varies greatly, as does the lever of security and compliance requirements. Fundamentally, they all have the same basic question: "Where do I start?"

To form a plan, let's start with three basic questions:

* What do you have? * What are you accountable for? * What do you not know?

To address the first bullet, take a basic inventory of systems that you are responsible for. You will need this information in order to understand both the scope of work, they types of skills you'll need, and the types of tools you'll need to automate some security tasks. There are tools like NMap to help scan the network and provide an inventory.

Second, understand what these databases are used for and who owns them. That should give you a better idea of the type of data they store, the applications they serve, and who has access rights. This later point is incredibly important because, if you need to secure the database, you're going to need to get someone with admin rights to make the appropriate changes. For smaller firms you may already know all of this, or you think you do; you may be surprised when network scan results show a number of applications that have embedded database systems that are largely insecure. In larger organizations with databases being provisioned outside of IT -- in QA, in development, in cloud environments -- that clouds the picture. Again, find out what databases are in play, and how to get access.

Third, what tools are available to you? Did someone in your organization previously purchase or deploy database security tools? Were some tools bundled with the software that you purchased from your vendor? Do you have scripts? Do some of the generic network or vulnerability scanners work with databases? Do you have a support agreement with the vendor who will answer your questions or provide you with best-practices documentation? You're going to need some tools to help automate tasks and round out your knowledge of database security issues. Tools, documents, access to peer groups, and vendor support are good ways to do this.

For the second bullet, ask yourself if you know what a secure database looks like. Do you have a security specification? Do you have a baseline set of standards for DB security? What compliance controls are you supposed to be following? Understanding what security and compliance issues you are responsible for is key to knowing how to act. For most DBA's and security professionals, you'll have hundreds of databases to manage, so you're going to need to prioritize what controls are most important, which databases are most important, and formulate a plan of action based upon that. You can secure most databases with a couple days' work -- you cannot secure all of your databases with a couple days work. Build a plan based upon _your_ priorities.

Bullet three is simply to stress that the discover process for databases should yield some surprises. Now you need to run assessments of the databases you have to secure and find out what state they are in - don't try to do this by hand but get an open source or commercial scanner. You'll save time and it will have embedded knowledge about hundreds of databases. And these tools cover most areas of concern: patching, IAM, configuration, compliance, up-to-date threat intel, and (in most cases) discovery.

If you can, work with other groups to get an idea of how many databases, and of what type, are being used. This may sound like more work -- and it is -- but when you run purchase requests up the chain-of-command, they'll likely get stalled by purchasing until other groups get their say in the process. Deal with this up front -- and you'll likely get to push the expense across other groups within your company.

Adrian Lane is an analyst/CTO with Securosis LLC, an independent security consulting practice. Special to Dark Reading.

About the Author

Adrian Lane

Contributor

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 Unisys, he has extensive experience in the vendor community, but brings a pragmatic perspective to selecting and deploying technologies having worked on "the other side" as CIO in the finance vertical. Prior to joining Securosis, Adrian served as the CTO/VP at companies such as IPLocks, Touchpoint, CPMi and Transactor/Brodia. He has been invited to present at dozens of security conferences, contributed articles to many major publications, and is easily recognizable by his "network hair" and propensity to wear loud colors.

Keep up with the latest cybersecurity threats, newly discovered vulnerabilities, data breach information, and emerging trends. Delivered daily or weekly right to your email inbox.

You May Also Like


More Insights