Chapter 7 Database Security. SCSR 3413 Computer Security Protecting data is a primary concern to secure systems, user count on the DataBase Management.

Slides:



Advertisements
Similar presentations
Database Management System MIS 520 – Database Theory Fall 2001 (Day) Lecture 13.
Advertisements

Information Security Principles & Applications
Monday, 08 June 2015Dr. Mohamed Osman1 What is Database Administration A high level function (technical Function) that is responsible for ► physical DB.
Database Management: Getting Data Together Chapter 14.
Security in Databases. 2 Srini & Nandita (CSE2500)DB Security Outline review of databases reliability & integrity protection of sensitive data protection.
Chapter 8 Security Transparencies © Pearson Education Limited 1995, 2005.
Security in Databases. 2 Outline review of databases reliability & integrity protection of sensitive data protection against inference multi-level security.
Last time Finish OTR Database Security Introduction to Databases
Distributed Databases
Security Architecture Dr. Gabriel. Security Database security: –degree to which data is fully protected from tampering or unauthorized acts –Full understanding.
SE571 Security in Computing
PHASE 3: SYSTEMS DESIGN Chapter 7 Data Design.
IT 221: Introduction to Information Security Principles Lecture 11: Database Security For Educational Purposes Only Revised: November 13, 2002.
Copyright © 2003 by Prentice Hall Module 4 Database Management Systems 1.What is a database? Data hierarchy and data organization Field, record, file,
Chapter 6 – Database Security  Integrity for databases: record integrity, data correctness, update integrity  Security for databases: access control,
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 13 Database Management Systems: Getting Data Together.
Objectives Overview Define the term, database, and explain how a database interacts with data and information Define the term, data integrity, and describe.
Concepts of Database Management, Fifth Edition
Database Security And Audit. Databasics Data is stored in form of files Record : is a one related group of data (in a row) Schema : logical structure.
Switch off your Mobiles Phones or Change Profile to Silent Mode.
Chapter 6 – Database Security  Integrity for databases: record integrity, data correctness, update integrity  Security for databases: access control,
Sensitive Data  Data that should not be made public  What if some but not all of the elements of a DB are sensitive Inherently sensitiveInherently sensitive.
Security Architecture
Computer Security: Principles and Practice
Databases Collections of data. Set of rules to organize data. Types ◦ Relational: use (rows) & columns to organize. ◦ Object oriented: complex data (audio,
Discovering Computers Fundamentals Fifth Edition Chapter 9 Database Management.
First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 5 – Database Security.
Storing Organizational Information - Databases
Chapter 1 Introduction to Databases. 1-2 Chapter Outline   Common uses of database systems   Meaning of basic terms   Database Applications  
CHAPTER 3 DATABASES AND DATA WAREHOUSES. 2 OPENING CASE STUDY Chrysler Spins a Competitive Advantage with Supply Chain Management Software Chapter 2 –
Chapter No 4 Query optimization and Data Integrity & Security.
CHAPTER 5 Database Security 1. Objectives  Explain briefly the concept of databases  Identify the security requirement of the databases  List and explain.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 1 Security Architecture.
Database Security Outline.. Introduction Security requirement Reliability and Integrity Sensitive data Inference Multilevel databases Multilevel security.
Databases Illuminated
14.1/21 Part 5: protection and security Protection mechanisms control access to a system by limiting the types of file access permitted to users. In addition,
DATABASE MANAGEMENT SYSTEM ARCHITECTURE
Computer Science and Engineering Computer System Security CSE 5339/7339 Session 21 November 2, 2004.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 16 Using Relational Databases.
Academic Year 2014 Spring Academic Year 2014 Spring.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 1 Security Architecture.
Visual Basic for Application - Microsoft Access 2003 Finishing the application.
Introduction to Databases Dr. Osama AL Rababah. Objectives In this capture you will learn: Some common uses of database systems. The characteristics of.
Network Security Philadelphia UniversitylAhmad Al-Ghoul Module 7 Module 7 Data Base Security  MModified by :Ahmad Al Ghoul  PPhiladelphia.
SYSTEMS IMPLEMENTATION TECHNIQUES TRANSACTION PROCESSING DATABASE RECOVERY DATABASE SECURITY CONCURRENCY CONTROL.
IST 210 Security. IST 210 Introduction to DB Security Secrecy: Users should not be able to see things they are not supposed to. E.g., A student can’t.
Database Principles: Fundamentals of Design, Implementation, and Management Chapter 1 The Database Approach.
Database and Cloud Security
Introduction to DBMS Purpose of Database Systems View of Data
CS4222 Principles of Database System
Introduction To DBMS.
Database Management.
Database Security and Authorization
Functions of a Database Management System
Database Management System
Chapter Ten Managing a Database.
Chapter 3: Data Management Systems
Introduction to Database Management System
Database management concepts
Chapter 10 Transaction Management and Concurrency Control
Database Security (Chapter 8, Sections 4-7)
Database Security Jagdish S. Gangolly School of Business
Introduction to DBMS Purpose of Database Systems View of Data
Database management concepts
Introduction of Week 13 Return assignment 11-1 and 3-1-5
Methodology – Monitoring and Tuning the Operational System
DBMS Module III DBMS
Database management systems
Security in Computing, Fifth Edition
Presentation transcript:

Chapter 7 Database Security

SCSR 3413 Computer Security Protecting data is a primary concern to secure systems, user count on the DataBase Management System (DBMS) to manage the protection Databases are important to businesses, governments, organizations. Why? Their organization and content are valuable assets Two major security problems  Integrity  Secrecy 2

SCSR 3413 Computer Security Introduction to Databases Concept of a database  Database is a collection of data and rules  DataBase Administrator (DBA) is the person responsible for defining rules to organize data and configuring access  DBMS is the program that interfaces between the user and the database (aka: database manager or front end) 3

SCSR 3413 Computer Security Components of a database  Records: One related group of data  Field or elements: Piece of data from a record  Schema: Logical structure of the database  Subschema: Part of a database schema, used to restrict a user to only a portion of the database they need  Attribute: Name of each column  Relation: Set of columns 4

SCSR 3413 Computer Security ADAMS212 Market St.ColumbusOH43210 BENCHHLY501 Union St.ChicagoIL60603 CARTER411 Elm St.ColumbusOH

SCSR 3413 Computer Security NameFirstAddressCityStateZipAirport ADAMSCharles212 Market St.ColumbusOH43210CMH ADAMSEdward212 Market St.ColumbusOH43210CMH CARTERMarlene411 Elm St.ColumbusOH43210CMH CARTERBeth411 Elm St.ColumbusOH43210CMH CARTERBen411 Elm St.ColumbusOH43210CMH CARTERLisabeth411 Elm St.ColumbusOH43210CMH CARTERMary411 Elm St.ColumbusOH43210CMH 6

SCSR 3413 Computer Security Queries  Interact with the DBMS to retrieve, modify, add, or delete fields, and records of the database.  Most query languages are English-like and many are based on a Sequential Query Language (SQL) developed by IBM Advantages of using databases  Shared access  Minimal redundancy  Data consistency  Data integrity  Controlled access A DBMS is designed to provide these advantages efficiently 7

SCSR 3413 Computer Security Security Requirements Some problems are like all other areas Basic problems we have looked at thus far  Access control  Exclusion of spurious data  Authentication if users  Reliability Database Security requirements  Physical database integrity Data are not lost in power failure If destroyed, database can be reconstructed  Logical database integrity The structure preserved and not easily disrupted by changes in fields 8

SCSR 3413 Computer Security  Element integrity Data in each element is accurate  Auditability Possible to track access and modification (who, what)  Access control Only to authorized data and only be in authorized mode (r/w)  User authentication All user positively identified  Availability 9

SCSR 3413 Computer Security Security Requirements : explained Database Integrity  Must be able to trust the accuracy of the data values  The DBMS, OS, and computing system manager are responsible for the integrity of the database  Backing up the database is one way of protecting it  Being able to reconstruct the database at a point of failure (DBMS transaction logging) 10

SCSR 3413 Computer Security Element integrity  Correctness or accuracy of the database elements  Ultimately the user is responsible for correct data, but DBMS can help error check  Three ways DBMS can take corrective action Field checks appropriate values, data type, ranges,.. Access control so redundant data not input  But who owns it? Who has authority to change? Change one? Change all?  Read Sidebar 6-2 : Pfleeger pg317 Change log which contains all changes made; original and modified values  Know when an error occur 11

SCSR 3413 Computer Security Auditability  Ideally generate a record of all reads and writes  Granularity problem  records-fields- elements level  Pass-through problem, accessing data without transferring the data to user  Perform a query that returns a result of one 12

SCSR 3413 Computer Security Access control  Databases can be separated logically by user access privileges  DB Admin specifies who gets access to what at what level  DBMS enforces policy  All fields, records, elements are related, hence inference can prove to be a problem 13

SCSR 3413 Computer Security User authentication  May use passwords  Time-of-day checks  Plus, authentication by OS Availability  Both a program and a system  When the system is not available, users notice just as if the OS or network were down  Arbitration – when 2 users access the same data  Withhold unprotected data to avoid revealing protected data 14

SCSR 3413 Computer Security Reliability and Integrity Software is reliable if it runs a long time without failing Reliability and integrity are important security issues in databases  It works 2 ways Reliable : data we can count on Integrity : our data are save and not meddled with While measures can be taken, there are no way to prevent an authorized user from entering acceptable, but incorrect data  humans are fallible 15

SCSR 3413 Computer Security Three dimensions of reliability and integrity  Database integrity: database as a whole is protected  backups, recovery, hardware failures, etc..  Element integrity: values are changed by only authorized users and proper controls protect a database from being corrupted by unauthorized users  Element accuracy: only correct values are entered through use of constraint conditions and rules 16

SCSR 3413 Computer Security Reliability and Integrity… Protection feature from the OS  Periodic backups  File protection  Standard access control  Integrity checks for all data I/O  These are the basic security practices and a database manager must enhance them 17

SCSR 3413 Computer Security What if failure happens in the middle of data modification process? Two-phase update (protects from failure during update)  Intent phase Gather provisions, be ready  Commit phase Permanent stage Analogy: getting married  Intent: like – ask for her hand  Commit: she says yes, vows spoken, permanent situation Two-Phase Update 18

SCSR 3413 Computer Security First phase is the intent phase DBMS gathers resources required to perform update Does everything short of changing database Can be restarted many times without adverse effect Ready to commit  Requires commit flag to be set  Past the point of no return Second phase makes changes permanent No actions from 1 st phase can be repeated 2 nd phase can be restarted if needed If system fails during second phase, database incomplete, but restart 2 nd phase to correct 19

SCSR 3413 Computer Security Redundancy/Internal Consistency  To detect internal inconsistencies  Some forms of redundancy Error detection and correction codes  (i.e. parity bits, Hamming codes, and cyclic redundancy checks)  To every data item, a check is computed and stored  Each time data is retrieved, similar checks are ran and compared Shadow fields  Attributes or entire database can be duplicated  2 nd copy always at hand, but takes big storage space 20

SCSR 3413 Computer Security Recovery  Audit or transaction log is maintained  If system aborts database can be recovered from backup  Then updated using the audit/transaction log Concurrency/Consistency  Problem (e.g. with 2 users) Both to read – no problem Both to modify – problem 1 to read, the other modify – problem  Control used: Lock files Single atomic operation : read-modify cycle 21

SCSR 3413 Computer Security Responsible for structural integrity of database Monitors values input to ensure they match previously defined constraints  Consistency & constraints Forms of monitors: »Range comparisons  Ensure data input is within acceptable range; otherwise rejected  Ensure internal consistency  Can be used to verify database corruption Monitors 22

SCSR 3413 Computer Security »State constraints  Describe condition of the entire database  Constraints not met, some value of database is in error commit flag is a type of state constraint  Uniqueness constraint – deter duplication of states »Transition constraints  Conditions necessary before changes can be applied to the database  E.g. slot 4474 = vacant; add employee (ali44); now slot 4474 = ali44  ok  E.g. slot 4474 = bob32; add employee (ali44); now slot 4474 = ali44  cant happen Small, simple checks and constraints can be within DBMS. Else it will be invoked by DBMS each time checking is needed. 23

Sensitive Data

SCSR 3413 Computer Security Sensitive Data Sensitive data should not be made public Easiest to handle are nothing sensitive or everything sensitive Unfortunately there are varying degrees of sensitivity and even differences between elements of a record The challenge is to only give access to those authorized 25

SCSR 3413 Computer Security Sensitive Data (cont) Several factors that can make data sensitive  Inherently sensitive  From a sensitive source  Declared sensitive  Part of a sensitive attribute or a sensitive record  Sensitive in relationship to previously disclosed information 26

SCSR 3413 Computer Security Access decisions DBA [person] decides what data in database and who has access Decisions are based on the access policy DBMS [program] will execute these decisions, while considering factors  Availability of the data Block other users from data in update operations  Acceptability of the access No releasing of sensitive data  Authenticity of the user Are you permitted to request for this? At this time? 27

SCSR 3413 Computer Security Availability of data: one or more requirements may be unavailable because of updating (if the updating user aborts the transaction while update is in progress permanent denial of service may result) Acceptability of access: a DBMS should not release sensitive data to unauthorized user Assurance of authenticity: certain characteristics of the user external to the database may be considered 28

SCSR 3413 Computer Security Types of disclosures Disclosures include:  Exact data  exact value  Bounds  No. of MI5 agents are between 25 and 40  Negative result  never been jailed = 0  Existence  ‘related to’ field (why should it be there?)  Probable value  gets a possibility/chance of an answer from probable logic. How many people in FIN are male? 9 How many people in FIN are male AND have NO in drug_test value? 8 A successful security strategy must protect from both direct and indirect disclosure 29

SCSR 3413 Computer Security Security vs. Precision Security usually means hide anything remotely related to sensitive Precision tries to protect all sensitive data while allowing access to as much nonsensitive data as possible Ideal combination of security and precision allows us to maintain perfect confidentially with maximum precision  we disclose all and only the non-sensitive data 30

SCSR 3413 Computer Security Inference Inference is a way to infer or derive sensitive data from non-sensitive data Can be done directly or indirectly Direct attack:  very obvious List NAME where SEX=M & DRUGS=YES  Less obvious (to DBMS) List NAME where (SEX=M&DRUGS=YES) / (SEX!=M & SEX!=F) / DORM=ABDULLAH 31

SCSR 3413 Computer Security Indirect attack  To protect data only statistical information may be released  Statistics such as sum, count, mean, median, mode, can be valuable tools to infer info  Sum  infer value from a reported sum  Count  Median requires finding selections having one point of intersection exactly in the middle 32

SCSR 3413 Computer Security Indirect attack continued  Tracker attacks fool the database manger into locating desired data by using additional queries that produce small results and records from different queries cancel each other out  Linear system vulnerability: use logic, algebra and luck to determine distribution by looking a several queries 33

SCSR 3413 Computer Security Includes suppression and concealing  Suppression provides nothing  Concealing provides information, but it is not exactly the actual value These two control reflect the contrast between security and precision Suppression is very precise (nothing may be provided for security reasons) Concealing data is not as precise, but you get more responses Controls for statistical inference attacks 34

SCSR 3413 Computer Security Limited response suppression: when there is a limited amount of data returned even deleting the data item may not be enough Totals may reveal the missing data Changing values of other cells in the small sample would keep the value from being inferred Combined results: ranging the result (i.e. instead of actual count use 1-2, 3-4, etc..) Random sample: use a sample set from database instead of entire database Control Examples 35

SCSR 3413 Computer Security Random data perturbation: instead of random sample change the values slightly Query analysis: maintain a query history to evaluate if there is a combination of data that could reveal sensitive data 36

SCSR 3413 Computer Security Conclusion of the inference problem No perfect solution Approaches include:  Suppress obviously sensitive data  Track what user knows  costly though  Disguise data  but may result in incorrect & inconsistent results Effective control is just knowing the problem exists ; then take appropriate measures 37

SCSR 3413 Computer Security Aggregation Building sensitive results from less sensitive inputs  Difficult to address because it is hard to track what each user has already received  Data mining: sifting through multiple databases and correlating the data 38

Multilevel databases

SCSR 3413 Computer Security Case for Differentiated Security  Some parts of data are not sensitive where others are The total average of salary in FSKSM is not sensitive, individual salary is The PM’s private line is sensitive, but the reception line is not **checkout table 6-15 and 6-16 of Pfleeger. 3 characteristics of database security  One element in a same row/column may have different security needs that others This implies that security should be implemented for each individual element  Sensitive and non-sensitive labels are not enough. Perhaps an approach like the military model could be better  Sometimes an aggregate on elements is more revealing than individual elements. Should be monitored. 40

SCSR 3413 Computer Security Granularity and security What do you keep safe? Data? Element? Combination of elements? Each might have different levels of sensitivity Manhattan = not sensitive (it’s a place) Project = a word, not sensitive Manhattan project = sensitive (bcoz it’s a gov. project to eradicate the drug lords in Manhattan) Every element and their combination may also have distinct sensitivity value/level So we need Access control policy to data  helps with determining access limitations Must have a way to guarantee that these policy will not be changed by unauthorized person. 41

SCSR 3413 Computer Security Security issues of multilevel databases  Integrity Hard to achieve High level process cannot write to lower level  But how about updates, backups, scanning? If need be: process must be a ‘trusted process’  Sth. like processes with security clearance  Confidentiality Enforcing it could lead to  Precision sacrificed – like with concealing  Redundancy – 2 records for same person  Polyinstantiation – 1 record appear many times with different level of confidentiality. Sometimes polyinstantiation is legitimate. 42

SCSR 3413 Computer Security NameSensitivityAssignmentLocation -- Hill.BobCProgram ManagerLondon Hill.BobTSSecret AgentItaly NameSensitivityAssignmentLocation -- Hill.BobCPensionerLondon Hill.BobCBy ContractLondon 43

SCSR 3413 Computer Security Some multilevel security proposals Separation – necessary to limit access  Partitioning Database is divided into separate databases, each with its own level of sensitivity Separate files, separate database Disadvantage: hinders the task of a database  Encryption Encrypt sensitive data so it cant be accidentally opened But its opened to attacks on encryption (chosen plaintext attack) And encryption and decryption takes time 44

SCSR 3413 Computer Security  Integrity lock Provide integrity and limited access Has 3 parts of a data item  Actual data  Sensitivity level – should be unforgeable, unique, concealed  Checksum – made of data and sensitivity level to ensure no unauthorized modification  Sensitivity lock Combination of unique identifier and the sensitivity level Each lock relates to one particular record With encryption the lock contents are concealed 45

SCSR 3413 Computer Security Designs of multilevel secure databases These are some different design for multilevel secure databases. These show the trade-off among efficiency, flexibility, simplicity and trustworthiness  Integrity lock  Trusted front end  Commutative filters  Distributed databases  Window/View 46

SCSR 3413 Computer Security Integrity lock  As before, but has efficiency drawbacks Needs more storage space, time Untrusted database manager may be prone to attacks UsersUntrusted (Commercial) Database Manager Trusted Access Controller Sensitive Database Security Perimeter 47

SCSR 3413 Computer Security Trusted front end  Uses enhanced existing systems as users are used to it.  Works much like a reference monitor Untrusted Database Manager Trusted Access Controller Sensitive Database Security Perimeter Trusted Front End Users 48

SCSR 3413 Computer Security  Interaction between a user, a trusted front end (TFE) and a DBMS User identifies himself to TFE & TFE authenticates user’s identity User issues query to TFE TFE verifies user’s authorization then issue query to database manager Database manager performs access and returns result to TFE TFE analyzes result sensitivity level, ensure its consistent with user’s clearance Result to user.  One way filter to screen out results that user shouldn’t get, but inefficient scheme. 49

SCSR 3413 Computer Security Commutative filters  Is a process that forms an interface between the user and DBMS  Much like TFE, but this try to overcome inefficiency  2-way filter It reforms user’s query to ensure sensitive information is never extracted from database Restricting results before passing it to the user, ensuring he has gets only those that is within is sensitivity level  Advantage: Allows query selection, some optimization and sub-query handling to be done by DBMS, hence keeps the filter size small, reduces redundancy, and improves overall efficiency. 50

SCSR 3413 Computer Security Distributed databases  A trusted front end controls access to 2 unmodified commercial databases One for all low-sensitivity data One for all high-sensitivity data  TFE accepts query and submits the query to appropriate databases according to user’s clearance.  If results are received from both databases, results are joined before handing it to user.  TFE is complex and costly, not very popular scheme. 51

SCSR 3413 Computer Security Window/View  Users only see what they need and are allowed to see.  Any attributes in a column or a row is withheld unless the user is authorized to access at least 1 element in them.  Say a user is allowed access to column A, but only element 3 (out of 15 elements), all others will be replaced as UNDEFINED. 52

SCSR 3413 Computer Security End note Most users do not want to sacrifice ease of use and efficiency, but they still want security. Best practice by any organization is to look at the value of its assets and evaluate it against time (expiration), efficiency and security. 53