Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Perimeter

12/12/2012
02:50 PM
Adrian Lane
Adrian Lane
Commentary
50%
50%

Don't Get 'Ha-Duped' By Big Data Security Products

Some Big Data security recommendations

A couple of posts back I posed the question, "How do you secure big data environments?" I covered several avenues of attack against NoSQL environments that I considered low-hanging fruit from a security standpoint. To address those attacks, I offer the following recommendations to provide basic cluster security.

But before I make any recommendations to securing NoSQL, I have a couple of requirements for security solutions in big data environments. Many security vendors offer security products for big data, but these are the same products they offer for normal IT environments. Because these solutions were not architected for big data, they often impose limits on how they are deployed, how they scale, or limit big data cluster functionality in some way.

We don't want to be "Ha-Duped" into buying traditional security products that don't work with big data, so all of my recommendations must scale and must not limit the core capabilities of big data. Here is what I recommend:

Kerberos
The goal here is to validate nodes to ensure unwanted copies of data or unwanted queries are run to copy data. In traditional IT, this may seem far-fetched, but in cloud and virtual environments with thousands of nodes in a cluster, this is both easy and difficult to detect. Kerberos provides a means of authenticating nodes before they are allowed to participate on the cluster.

TLS
The goal is to keep communications private. Built-in Hadoop capabilities provide for secure client-to-Web application-layer communication, but not internode communication, nor M-R output before it is passed to the application. TLS provides a mechanism for secure communication between all nodes and services, and scales as nodes are added to the cluster.

File Layer Encryption
The idea is to protect the contents of the cluster from those who administer it. In the event an admin wants to inspect data files, either through a basic text editor or by taking a snapshot and examining the archive, encryption keeps data safe. File-layer encryption is transparent to the database, and scales up as new nodes are added to the cluster. Granted, the encryption keys must be kept secure for this feature to be effective.

Key Management
As an extension of file-layer encryption, key management is critical to successful encryption deployment. All too often when we review cloud and virtual security systems, we find that administrators keep encryption keys stored unprotected on the disk. Encryption keys must be readily available when a cluster restarts; otherwise, data is inaccessible, and leaving keys in the open was the only way they knew how to ensure safe system restarts. Most central key management systems provide for key negotiation on restart, and still keep keys safe.

Deployment Validation
The goal here it to ensure that all nodes in the cluster are properly patched, properly configured, and run the correct (i.e., not hacked) copies of software. It's easy to miss things when you have thousands of nodes running, so automated node validation makes basic node security much easier. Scripts to install patches and set and test configuration settings are an easy way to verify no nodes enter the cluster without proper setup and security. This can also be linked into Kerberos authentication and external application validation (security as a service) offerings.

Logging
Big data is excellent at managing and mining large amounts of data. And most big data environments have logging capabilities baked-in. There is not need to reinvent the wheel: Use these features and the cluster storage model to log events. You can even create security-related M-R scripts to mine the data. There are several commercial and open-source add-ons with additional logging features to help. Note that during this series of posts that I have omitted discussing application security -- specifically, security of the applications that use big data and code vulnerabilities with JSON, Java, and Ruby. I could discuss these as well, given that the security of the big data APIs is of concern. The problems are independent of big data, relevant to any application, and need to be dealt with by application developers with or without a NoSQL database. The subject is beyond the scope of the database, but I raise the issue so that you keep in mind that there are entire classes of attacks that I've not discussed.

Also, note that these are the recommendations I feel comfortable making at this time. There are many different research papers being published on big data security, and I hope to see some innovation in this area within the coming years. And I am starting to see security products architected specifically for NoSQL environments.

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
Comments
Newest First  |  Oldest First  |  Threaded View
Navigating Security in the Cloud
Diya Jolly, Chief Product Officer, Okta,  12/4/2019
SOC 2s & Third-Party Assessments: How to Prevent Them from Being Used in a Data Breach Lawsuit
Beth Burgin Waller, Chair, Cybersecurity & Data Privacy Practice , Woods Rogers PLC,  12/5/2019
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Write a Caption, Win a Starbucks Card! Click Here
Latest Comment: Our Endpoint Protection system is a little outdated... 
Current Issue
Navigating the Deluge of Security Data
In this Tech Digest, Dark Reading shares the experiences of some top security practitioners as they navigate volumes of security data. We examine some examples of how enterprises can cull this data to find the clues they need.
Flash Poll
Rethinking Enterprise Data Defense
Rethinking Enterprise Data Defense
Frustrated with recurring intrusions and breaches, cybersecurity professionals are questioning some of the industrys conventional wisdom. Heres a look at what theyre thinking about.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-4095
PUBLISHED: 2019-12-10
IBM Cloud Pak System 2.3 is vulnerable to cross-site request forgery which could allow an attacker to execute malicious and unauthorized actions transmitted from a user that the website trusts. IBM X-Force ID: 158015.
CVE-2019-4244
PUBLISHED: 2019-12-10
IBM SmartCloud Analytics 1.3.1 through 1.3.5 could allow a remote attacker to gain unauthorized information and unrestricted control over Zookeeper installations due to missing authentication. IBM X-Force ID: 159518.
CVE-2019-4521
PUBLISHED: 2019-12-10
Platform System Manager in IBM Cloud Pak System 2.3 is potentially vulnerable to CVS Injection. A remote attacker could execute arbitrary commands on the system, caused by improper validation of csv file contents. IBM X-Force ID: 165179.
CVE-2019-4663
PUBLISHED: 2019-12-10
IBM WebSphere Application Server - Liberty is vulnerable to cross-site scripting. This vulnerability allows users to embed arbitrary JavaScript code in the Web UI thus altering the intended functionality potentially leading to credentials disclosure within a trusted session. IBM X-Force ID: 171245...
CVE-2019-19251
PUBLISHED: 2019-12-10
The Last.fm desktop app (Last.fm Scrobbler) through 2.1.39 on macOS makes HTTP requests that include an API key without the use of SSL/TLS. Although there is an Enable SSL option, it is disabled by default, and cleartext requests are made as soon as the app starts.