dac and trojan horse
play

DAC and Trojan Horse Brown: read, write Employee Mandatory Access - PDF document

DAC and Trojan Horse Brown: read, write Employee Mandatory Access Control Brown B Read Employee R d E l Black, Brown: read, write REJECTED! Blacks Employee Black is not allowed To access Employee Black 1 2 Mandatory Access


  1. DAC and Trojan Horse Brown: read, write Employee Mandatory Access Control Brown B Read Employee R d E l Black, Brown: read, write REJECTED! Black’s Employee Black is not allowed To access Employee Black 1 2 Mandatory Access Control (MAC) DAC and Trojan Horse • Security level of object (security label): Brown: read, write Sensitivity of object Employee Word • Security level of subject (security class): user’s Processor clearance Reads – E g Top Secret > Secret > Confidential > Unclassified – E.g. Top Secret > Secret > Confidential > Unclassified Uses shared program Uses shared program Employee • MAC specifies the access that subjects have to Brown Black, Brown: read, write objects based on the subjects and objects Black’s Employee Copies TH classification Employee Inserts Trojan Horse To Black’s • This type of security has also been referred to as Into shared program Employee multilevel security Black Black has access to Employee now! 3 4 MAC – Controlling Information Mandatory Access Control (MAC) Flow • Controlling information flow (Bell-LaPadulla properties BLP): – No READ UP: Subject clearance  object security – No WRITE DOWN (*-property): Subject clearance  object security – Prevent information in high level objects from flowing – Prevent information in high level objects from flowing to low level subjects – Tranquility property: The classification of a resource cannot be changed while the resource is in use by any user of the system • Necessary but not sufficient conditions • May still have problems – covert channel – Indirect means by which info at higher levels passed to lower levels 5 6 1

  2. Why Apply MAC to DB? MAC – Problems? • Data can be viewed as sensitive for many different • Write-up allows destruction of more secure info reasons. Examples: – personal and private matters or communications, professional – Limit to same level; disable write-up trade secrets, • Write-up means cannot send info to lower-level – company plans for marketing or finance, subjects – military information, or government plans y , g p – Subject can sign in at lower level • Such data is often mixed with other, less sensitive – Prevent malicious programs from leaking secrets information that is legitimately needed by diverse users – Users are trusted, not programs • Restricting access to entire tables or segregating sensitive data into separate databases can create a • Hierarchy of security levels is too restrictive working environment that is costly in hardware, software, – Lattice of security labels user time, and administration. 7 8 Multilevel Relational (MLR) Model Traditional Relational Model • The multilevel relational (MLR for short) Standard relational model – each relation is model results from the application of the characterized by two components BLP model to relational databases - A state-invariant relation scheme - R(A1, … ., An) where Ai is an attribute over - R(A1 An) where Ai is an attribute over • Several issues • Several issues some domain Di – Granularity: to which element do we apply the - A state-dependent relation over R classification? composed of distinct tuples of the form – Integrity constraints (a1, … , an), where each ai is a value in domain Di 9 10 Example Relational Model – keys and FD • Consider relation Hourly_Emps: • Functional dependencies – Hourly_Emps ( ssn, name, lot, rating, hrly_wages , hrs_worked ) – Let R be a relation and let X and Y be attribute sets, both subsets of the attribute set of R we say that X functionally determines Y if and S N L R W H FDs S  SNLRWH • only if not two tuples may exist in the same relation 123-22-3666 123 22 3666 Attishoo Attishoo 48 8 48 8 10 40 10 40 over R with the same value for X but different values over R with the same value for X but different values • ssn is the key ssn is the key for Y FDs give more detail than 231-31-5368 Smiley 22 8 10 40 • • Primary Keys (entity integrity property) the mere assertion of a key 131-24-3650 Smethurst 35 5 7 30 – the primary key uniquely identifies each tuple in the • rating determines hrly_wages relation 434-26-3751 Guldu 35 5 7 30 • R  W – A primary key cannot contain attributes with null 612-67-4134 Madayan 35 8 10 40 values – A relation cannot contain two tuples with the same value for the primary key 11 12 2

  3. Multilevel (ML) relations MLR Model A ML relation is characterized by two components - A state-invariant relation scheme • Given a relation, an access class can be R(A1,C1, … ., An,Cn, TC) where: associated with: - Ai is an attribute over some domain Di - Ci is a classification attribute for Ai; its domain is the set of access – The entire relation classes that can be associated with values of Ai - TC is the classification attribute of the tuple – Each tuple in the relation p - A set of state-dependent relation instances Rc over R for • This is the common choice in commercial systems each access class in the access class lattice. Each – Each attribute value of each tuple in the instance Rc is composed of distinct tuples of the form relation (a1,c1, … , an,cn, tc), where: - ai is a value in domain Di • In the remainder we consider this case - ci is the access class for ai – Toward a Multilevel Secure Relational Data Model. Proc 1991 - tc is the access class of the tuple determined as the least upper ACM Int'l. Conf. on Management of Data (SIGMOD), 50-59. bound of all ci in the tuple - Classification attributes cannot assume null values 13 14 ML relations - example ML relations - instances Vessel (AK) Objective Destination TC • A given relation may thus have instances at different access classes Micra U Shipping U Moon U U • The relation instance at class c contains all data that are Vision U Spying U Saturn U U visible to subjects at level c – It contains all data whose access classes are dominated by c Avenger C Spying C A C S i C M Mars C C C C – All elements with access classes higher than c, or incomparable, are masked by null values Logos S Shipping S Venus S S – Sometimes, to avoid signaling channels, fictitious values (called cover story values ) can be used 15 16 ML relations - example MLS Model • Entity integrity rule Vessel (AK) Objective Destination TC – All attributes that are members of the apparent key must not be null (i.e., A i  AK  t[A i ]  NULL) Micra U Shipping U Moon U U – All attributes of AK must have the same security classification within each individual tuple (i.e., A i , A j  AK  t[C i ] = t[C j ]) Vision U Spying U Saturn U U – For each tuple, the access class associated with the non-key attributes must dominate the access class of the primary key (i.e., A i  AK  t[C i ]  t[C AK ]) A i  AK  t[C i ]  t[C AK ]) (i e Avenger C Spying C A C S i C Mars C C M C C • Null integrity Logos S Shipping S Venus S S – Nulls are classified at the level of the key – One tuple does not subsume another (null values subsumed by non-null values) • Inter-Instance Integrity • Level U users see first 2 tuples – User can only see portion of relation for which is cleared • Level C users see first 3 tuples – Data not cleared is set to null • Level S users see all tuples – Eliminate subsumed tuples 17 18 3

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend