59
NoSQL Database Systems and their Security Challenges Morteza Amini [email protected] Data & Network Security Lab (DNSL) Department of Computer Engineering Sharif University of Technology September 2015 12 th ISC International Conference on Information Security and Cryptology (ISCISC’15)

NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

  • Upload
    trandat

  • View
    227

  • Download
    3

Embed Size (px)

Citation preview

Page 1: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Database Systems and

their Security Challenges

Morteza Amini [email protected]

Data & Network Security Lab (DNSL)

Department of Computer Engineering Sharif University of Technology

September 2015

12th ISC International Conference on Information Security and Cryptology (ISCISC’15)

Page 2: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Introduction

NoSQL vs. Relational Databases

Types of NoSQL Databases

NoSQL Security Challenges

Talk Outline

2 / 59

Page 3: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Introduction

3 / 59

Page 4: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

The new generation of applications like cloud or Grid apps, Business Intelligence, Web 2.0, Social networking requires storing and processing of terabytes and even petabytes of data

Current Trends

4 / 59

Page 5: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

We have… More users More data Interactive apps

Today

1 0 1 1 0 0

1 0 1 0 0 1 0

0 0 1 1 0 1 1

1 0 1 1 0 0 0

1 0 1 1 1 0 0

1 0 1 1 0 0 0

0 0 0 1 1 0

1 0 1 1 0 1

1 0 1 1 0 0

1 1 1 0 0

5 / 59

Page 6: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

The requirements of storage database systems is changed

Today

1 0 1 1 0 0

1 0 1 0 0 1 0

0 0 1 1 0 1 1

1 0 1 1 0 0 0

1 0 1 1 1 0 0

1 0 1 1 0 0 0

0 0 0 1 1 0

1 0 1 1 0 1

1 0 1 1 0 0

1 1 1 0 0

Relational Database is not suitable Distributed Storage and Processing

NoSQL = Not Only SQL

6 / 59

Page 7: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL vs. Relational Databases

7 / 59

Page 8: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

A relational database is a data structure that allows you to link information from different ‘tables’

Why relational database is not suitable ?

8 / 59

Page 9: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Pros Have been well-developed to meet confidentiality,

availability and integrity

Work best with structured data

Use standard query language

ACID

Very good for small dataset

Why relational database is not suitable ?

9 / 59

Page 10: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Cons

Scaling

Relied on scale up rather than scale out

Large feature set

Non-linear query execution time

Static schema

Why relational database is not suitable ?

10 / 59

Page 11: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Take advantage of multiple systems as well as multi-core CPU

architectures

Servers have to be globally distributed for low latency and

failover

Reasons for Distributed Storage and Processing

11 / 59

Page 12: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL databases have been designed for solving the Big Data issue by utilizing distributed, collaborating hosts to achieve satisfactory performance in data storage and retrieval.

Mostly being non-relational No join / Unstructured data

Provide great performance, availability, scalability and flexibility

Distribution, Replication, Failover

Characteristics of NoSQL Databases

12 / 59

Page 13: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

The term NoSQL was first used in 1998.

As name of file-based database that omitted the

use of SQL.

The term was picked up again in 2009.

It became a serious competitor to the term RDB.

NoSQL Trend

Google Trend

Relational databases

NoSQL databases

13 / 59

Page 14: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Provide BASE (Basically Available, Soft state,

Eventual consistent) system, but not ACID as a

Relational Database Management System.

Schema-free

Easy replication support and running well on

clusters

Simple API

Characteristics of NoSQL Databases

14 / 59

Page 15: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Any shared-data system can have at most two of these

properties AP

Voldemart (Key-value) CouchDB (Document), Riak(Document)

CA Relational databases Vertica (column-oriented) GreenPlum (Relational)

CP BigTable (Column Oriented), MongoDB(Document)

CAP Theorem

Consistency

Partition Tolerance

Availability

All nodes always have the same

view of the data.

Every request (read and write) receives

response.

The system works well despite physical network partitions.

15 / 59

Page 16: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Types of NoSQL Databases

16 / 59

Page 17: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

There are more than 150 NoSQL databases

NoSQL Data Models

17 / 59

Page 18: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Major Companies using NoSQL Databases

© Fidelis Cybersecurity, 2014

18 / 59

Page 19: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Data Models

Data Model

Key-value

Colum-wide

document

Graph

19 / 59

Page 20: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Work by matching keys with values, similar to a dictionary

very fast

very scalable

simple model

able to distribute horizontally

Cons: many data structures (objects) can't be easily modeled key value pairs

Key-value Stores

20 / 59

Page 21: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Key-value Stores

© http://www.thoughtworks.com/insights/blog/nosql-databases-overview

21 / 59

Page 22: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Data Models

Data Model

Key-value

Colum-wide

document

Graph

22 / 59

Page 23: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Similar to relational database but not alike.

Each KEY is associated with one or more columns (Row key)

A Column stores their data in such way that can be

efficiently aggregated, reducing the I/O activity.

it is suitable for data mining and analytic systems.

Column-Wide Stores

© http://www.thoughtworks.com/insights/blog/nosql-databases-overview

23 / 59

Page 24: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Data Models

Data Model

Key-value

Colum-wide

document

Graph

24 / 59

Page 25: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

The data is stored in the form of documents

in a standard format (xml,pdf, json, etc).

More flexible because of their lack of schema

The documents may have only the filled and important fields, letting the empty and null out, saving some storage space

Document Stores

http://www.thoughtworks.com/insights/blog/nosql-databases-overview 25 / 59

Page 26: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Data Models

Data model

Key-value

Colum-wide

document

Graph

26 / 59

Page 27: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Save the data in a form of graph

The nodes are object and the edges relations between the

objects.

The main goal of graph store is to know the relations

between nodes and how the nodes are inter-connected.

Graph Stores

© http://scraping.pro/where-nosql-practically-used/

27 / 59

Page 28: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

© Fidelis Cybersecurity, 2014

It depends on the application requirements Size of data Complexity CAP theory Format of data

Which one is the best?

28 / 59

Page 29: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Security Challenges

29 / 59

Page 30: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Most of NoSQL databases do not provide any feature of

embedding security in the database itself.

Developers need to impose security in the middleware.

Security issues that affected RDBMSs were also

inherited in the NoSQL databases as well as new ones

imposed by their new features.

NoSQL Security

30 / 59

Page 31: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Security may be difficult

Owing to the unstructured (dynamic) nature of the

data stored in these databases

Distributed environment

Cost of security in contrast to prformance

No strong consistency

NoSQL Security

31 / 59

Page 32: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Major Security Challenges

• Threats Posed By Distributed Environments

• Authorization and Access Control

• Safeguarding Integrity

• Protection of Data at Rest

• User Data Privacy

32 / 59

Page 33: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Major Security Challenges

• Threats Posed By Distributed Environments

• Authorization and Access Control

• Safeguarding Integrity

• Protection of Data at Rest

• User Data Privacy

33 / 59

Page 34: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Threats Posed By Distributed Environments

Distributed Environments increase attack surface across several distributed nodes

Compromised Clients Malicious data gets propagated from a single compromised

location Protecting nodes, name servers and those

clients becomes difficult especially when there is no central management security point.

Vulnerabilities of Gossip based membership protocol in Cassandra and Dynamo [Aniello, et al. 2013]

Zombie node Ghost node

34 / 59

Page 35: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Major Security Challenges

• Threats Posed By Distributed Environments

• Authorization and Access Control

• Safeguarding Integrity

• Protection of Data at Rest

• User Data Privacy

35 / 59

Page 36: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Two important challenges: Possibility: how to define security policies for

schema-less or dynamic-schema databases? Performance: availability vs. access control

overhead: how to manage cost of access control?

Authorization and Access Control

36 / 59

Page 37: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Fine-grained (row or column level) access control: heterogeneous data is stored together in one database as

opposed to relational models which conform to defined schemas and tables that store only related data.

Schema-less nature of NoSQL DBs does not allow fine-grained access control.

Most of them allow Column Family level authorization.

Authorization and Access Control

NoSQL DBMS Granularity Explanation

BigTable Column Family Using ACL

Cassandra Column Family Using IAuthorizer API

HBase Column Family / Cell Group-based authorization

Accumulo Cell Using Visibility field

We need Looking Forward Security

37 / 59

Page 38: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Fine-grained (row or column level) access control: heterogeneous data is stored together in one database as

opposed to relational models which conform to defined schemas and tables that store only related data.

Schema-less nature of NoSQL DBs does not allow fine-grained access control.

Most of them allow Column Family level authorization.

Authorization and Access Control

NoSQL DBMS Granularity Explanation

BigTable Column Family Using ACL

Cassandra Column Family Using IAuthorizer API

HBase Column Family / Cell Group-based authorization

Accumulo Cell Using Visibility field

We need Looking Forward Security

Secret

Confidential

Unclassified

Unclassified

Confidential

Secret

Usi

ng to

p-le

vel o

ntol

ogy

for

acce

ss p

olic

y sp

ecifi

catio

n

38 / 59

Page 39: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Fine-grained (row or column level) access control: heterogeneous data is stored together in one database as

opposed to relational models which conform to defined schemas and tables that store only related data.

Schema-less nature of NoSQL DBs does not allow fine-grained access control.

Most of them allow Column Family level authorization.

Authorization and Access Control

NoSQL DBMS Granularity Explanation

BigTable Column Family Using ACL

Cassandra Column Family Using IAuthorizer API

HBase Column Family / Cell Group-based authorization

Accumulo Cell Using Visibility field

We need Looking Forward Security

Secret

Confidential

Unclassified

Unclassified

Confidential

Secret

Gro

upin

g da

ta w

ith th

e sa

me

secu

rity

leve

l (no

de le

vel)

.

39 / 59

Page 40: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Inference Control: Access control on aggregated data, especially in Column-Wide databases and Time-Series databases.

Authorization and Access Control

,22

40 / 59

Page 41: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Administration / Access Control Management: how and where to grant database accesses Local vs. Global access policies and their possible

conflicts. Centralized approach: single-point-of-failure, availability

issues Distributed approach: consistency of distributed access

rules Semidistributed approach:

Authorization and Access Control

41 / 59

Page 42: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Authorization and Access Control

By default, there is no authorization.

Privileged admins can grant the privileges on

resources to a selected user.

By default, there is no authorization.

Provisions authorization on a per-‐database level

by using a role-‐based approach.

42 / 59

Page 43: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Major Security Challenges

• Threats Posed By Distributed Environments

• Authorization and Access Control

• Safeguarding Integrity

• Protection of Data at Rest

• User Data Privacy

43 / 59

Page 44: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Enforcing integrity constraints is much harder in NoSQL

database system

Consistency is in contrast with availability and performance

Transactional integrity is in contrast with its soft nature

How to define integrity constraints? [its schema-less nature]

Which types of integrity constraints can be defined?

How to control? [there is absence of central control/

performance and availability issues]

Safeguarding Integrity

44 / 59

Page 45: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Major Security Challenges

• Threats Posed By Distributed Environments

• Authorization and Access Control

• Safeguarding Integrity

• Protection of Data at Rest

• User Data Privacy

45 / 59

Page 46: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Encryption is widely regarded as the defacto standard for safeguarding data in storage.

Most industry solutions offering encryption services lack horizontal scaling and transparency required in the NoSQL environment.

Only a few categories of NoSQL databases provide mechanisms to protect data at rest by employing encryption techniques.

Protection of Data at Rest

We need Light Weight Cryptography!

46 / 59

Page 47: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Protection of Data at Rest

Use Transparent Data Encryption (TDE) to protect data that is written to disk. The commit log is not encrypted at all.

Data files in MongoDB are never encrypted.

47 / 59

Page 48: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Major Security Challenges

• Threats Posed By Distributed Environments

• Authorization and Access Control

• Safeguarding Integrity

• Protection of Data at Rest

• User Data Privacy

48 / 59

Page 49: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Privacy, main challenge of Web 2.0 and Virtual Social Networks.

Large amounts of user- related sensitive information in NoSQL databases.

Which kinds of methods is applicable in practice for NoSQL databases? Access Control Encryption Anonymization ...

Users Data Privacy

49 / 59

Page 50: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Minor Security Challenges

• Authentication (Users and Clients)

• Audit And Logging

• Protection of Data at Motion

• API Security

50 / 59

Page 51: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Authentication

Some NoSQL databases enforce authentication

mechanism at local node level, but fail to enforce

authentication across all commodity servers.

By default, there is no authentication.

Has Password Authenticator.

Can further provide Kerberos authentication.

By default, there is no authentication.

Support for authentication on a per-‐database level.

51 / 59

Page 52: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Audit and Logging

NoSQL databases has poor logging and log analysis methods

Auditing is available in Enterprise Cassandra.

Filters are available for logging

MongoDB is far behind in implementing the

desired security logging and monitoring.

52 / 59

Page 53: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Communication between clients and nodes (traditional issue)

Communication between nodes RPC over TCP/IP

Protection of Data in Motion

53 / 59

Page 54: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Protection of Data in Motion

Communications should be encrypted

Client-Node Communications

Inter-Node Communications

Client-Node Communications: By default, is not encrypted.

SSL can be configured.

Inter-Node Communications: By default, is not encrypted.

SSL can be configured.

Client-Node Communications: it is required to either

recompile MongoDB with the "-‐ssl" option.

Inter-Node Communications: is not supported.

54 / 59

Page 55: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

API Security

APIs can be subjected to several attacks such as Code injection, buffer over flows, command injection as they access the NoSQL databases.

Server Side JavaScript Injection (SSJS) Schema injection / Query injection / JSON injection

DoS Attacks

In PHP: $query = 'function() {var search_year = \'' .$_GET['year'] . '\';' . 'return this.publicationYear == search_year || ' . ' this.filmingYear == search_year || ' . ' this.recordingYear == search_year;}'; $cursor = $collection->find(array('$where' => $query));

http://server/app.php?year=1995';while(1);var%20foo='bar

55 / 59

Page 56: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

API Security

Is vulnerable to injection

MongoDB, $where operator can be used for injection.

56 / 59

Page 57: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

NoSQL Database Systems for unstructured and big data Main features: Performance, Availability, Scalability

NoSQL Security Challenges: Threats posed by their distributed nature Fine-grained authorization and inference control Integrity constraint definition and control Light weight transparent encryption of data in rest Users’ privacy ...

Summary

57 / 59

Page 58: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

[Aniello, et al. 2013] L. Aniello, S. Bonomi, M. Breno, R. Baldoni, “Assessing Data Availability of Cassandra in the Presence of non-accurate Membership”, The 2nd International Workshop on Dependability Issues in Cloud Computing, 2013.

[Kadebu , et al. 2014] P. Kadebu, I. Mapanga, A Security Requirements Perspective towards a Secured NOSQL Database Environment, International Conference of Advance Research and Innovation, 2014.

[Noiumkar, et al. 2014] P. Noiumkar, and T. Chomsiri, A Comparison the Level of Security on Top 5 Open Source NoSQL Databases, The 9th International Conference on Information Technology and Applications, 2014.

[Fidelis Cybersecurity 2014] Current Data Security Issues of NoSQL Databases, Fidelis Cybersecurity, 2014.

[Okman, et al. 2011] L. Okman, N. Gal-Oz, Y. Gonen, E. Gudes, and J. Abramov, Security Issues in NoSQL Databases, International Joint Conference of IEEE TrustCom-11/IEEE ICESS-11/FCST-11, 2011.

[Shermin 2013] M. Shermin, An Access Control Model for NoSQL Databases, M.Sc. thesis, The University of Western Ontario, 2013.

[Ron, et al. 2015] A. Ron, A. Shulman-Peleg, E. Bronshtein, No SQL, No Injection? Examining NoSQL Security, The 9th Workshop on Web 2.0 Security and Privacy, 2015.

[Rong, et al. 2013] C. Rong, Z. Quan, A. Chakravorty, On Access Control Schemes for Hadoop Data Storage, International Conference on Cloud Computing and Big Data, 2013.

Some References

58 / 59

Page 59: NoSQL Database Systems and their Security Challengessharif.edu/~amini/files/presentations/NoSQL-Security.pdf · ISCISC 2015 NoSQL Database Systems and their Security Challenges

NoSQL Database Systems and their Security Challenges ISCISC 2015

Thanks for your attention ...

Any Question? [email protected]

59 / 59

Thank Ms Dolatnezhad for helping in preparing this presentation.