Security Models Notes
Security Models Notes
Security policies and models: confidentiality policies, Bell-LaPadula model, Integrity policies, Biba
model, Clark-Wilson models, Chinese wall model
Bell-LaPadula model is a security method created for the US government to preserve the confidentiality of
information
Subjects Objects
Current
Accesses
Trusted
Subjects
Access Matrix
CS526 Topic 17: BLP 11
If a system is initially in a secure state, and every transition of the system satisfies the simple security
condition, and the * property, then every state of the system is secure
Example
Bell-LaPadula model has two major limitations:
It provides confidentiality only. (no integrity, authentication ,etc.)
It provides no method for management of classifications:
o It assumes all data are assigned with a classification
o It assumes that the data classification will never change.
INTEGRITY POLICIES
Integrity refers to the trustworthiness of data or resources.
Integrity is usually defined in terms of preventing improper or authorized change to data.
There are three main policies of integrity:
o Preventing unauthorized users from making modifications to data or programs.
o Preventing authorized users from making improper or unauthorized modifications.
o Maintaining internal and external consistency of data and programs.
Integrity Levels
Integrity levels are defined by labels, consisting of two parts:
o a classification
o a set of categories.
Integrity levels are given to the subjects and objects in the system.
Integrity labels tell the degree of confidence that may be placed in the data.
Classification of Integrity
A classification is an element of hierarchical set of elements.
It consists of these elements:
o Crucial (c)
o Very Important (VI)
o Important (I)
The relationship of elements is:
o C > VI > I
Each integrity level will be represented as L = (C, S) where:
o L is the integrity level
o C is the classification
o S is the set of categories.
An example of two categories are category X = {Detroit, Chicago, New York} and category Y = {Detroit,
Chicago}.
The integrity levels then form a dominance relationship.
Integrity level L₁ = (C₁, S₁) dominates (≥) integrity level L₂ = (C₂, S₂) if and only if this
relationship is satisfied: C₁ ≥ C₂ and S₁ ⊇ S₂
BIBA MODEL
The Biba integrity model was published in 1977 at the Mitre Corporation, one year after the Bell
La-Padula model was published.
The primary motivation for creating this model is the inability of the Bell-LaPadula model to deal
with integrity of data.
The Biba model addresses the problem with the star property of the Bell-LaPadula model, which
does not restrict a subject from writing to a more trusted object.
The Biba model on the other hand ignores confidentiality all together and deals only with integrity.
So, the main goal of the Biba model is to prevent unauthorized users from making modifications to a
particular document.
Also it prevents authorized users from making improper modifications in a document. So, this Biba
model is incorporated in Microsoft windows vista operating system.
Subjects and Objects
Like other models, the Biba model supports the access control of both subjects and objects.
Subjects are the active elements in the system that can access information (processes acting
on behalf of the users).
Objects are the passive system elements for which access can be requested (files,
programs, etc.).
Each subject and object in the Biba model will have a integrity level associated with it.
Access Modes
The Biba model consists of the following access modes:
Modify: the modify right allows a subject to write to an object. This mode is similar to the
write mode in other models.
Observe: the observe right allows a subject to read an object. This command is synonyms
with the read command of most other models.
Invoke: the invoke right allows a subject to communicate with another subject.
Execute: the execute right allows a subject to execute an object. The command essentially
allows a subject to execute a program which is the object.
Biba Policies
The Biba model is actually a family of different policies that can be used.
The model supports both mandatory and discretionary policies.
The Mandatory Policies:
o Strict Integrity Policy
o Low-Watermark Policy for Subjects
o Low-Watermark Policy for Objects
o Low-Watermark Integrity Audit Policy
o Ring Policy
The Discretionary Policies:
o Access Control Lists
o Object Hierarchy
o Ring
Read
Read
Read
Write
Write
Write
When most people refer to the Biba model they are actually referring to the strict integrity
model.
This policy is the most common policy that used from the model.
The strict integrity policy enforces ―no write-up‖ and ―no read-down on the data in the system,
which is the opposite of the Bell-LaPadula model.
Read Write
Get
Layer of Χ Contaminated
So, what the Biba model defines is that the user can first of all read and write to any object within
the same security class, and the user could write to a object in a lower security class, and read from an
object present in a higher security class.
As an example, let us say the hierarchy in the military where you have a general right on top, then
the captains and the privates who are right at the bottom of the hierarchy
Now, the Biba model allows read up meaning a document which is prepared by the general should
be read by all, that is a document which is created by the general should be read by the captain as well as
the privates.
However, no read down is permitted, that is a document written or modified by the privates at the
lower end of the hierarchy should not affect the general‘s decision.
Ring Policy
The ring policy is the last mandatory policy in the Biba model. Integrity labels used for the ring policy are
fixed similar to those in the strict integrity policy.
The Ring Policy consists of the following rules:
1. Any subject can observe any object, regardless of integrity levels.
2. Integrity Star Property: s ∈ S can modify o∈ O if and only if i(o) ≤ i(s) (―no write up‖).
3. Invocation Property: s₁ ∈ S can invoke s₂ ∈ S if and only if i(s₂) ≤ i(s₁).
Advantages:
The Biba model is it simple and easy to implement.
The Biba model provides a number of different policies that can be selected based on need.
Disadvantages:
The model does nothing to enforce confidentiality.
The Biba model doesn‘t support the granting and revocation of authorization.
To use this model all computers in the system must support the labeling of integrity for both
subjects and objects. To date, there is no network protocol that supports this labeling. So there
are problems with using the Biba model in a network environment.
Bell-LaPadula versus Biba model
The Bell-LaPadula model is used to provide confidentiality. The Biba model is used to provide
integrity. The Bell-LaPadula and Biba models are informational flow models because they are most
concerned about data flowing from one level to another. Bell-LaPadula uses security levels and Biba uses
integrity levels
CLARK-WILSON MODELS
It is an integrity model like biba model
- Here integrity is focuses on transactions instead of access rights.
Clark-Wilson Integrity Model Integrity defined by a set of constraints
Example: Bank –D today‘s deposits, W withdrawals, YB yesterday‘s balance, TB today‘s balance –
Integrity constraint: D + YB –W
It focuses on well formed transaction move system from one consistent state to another and
separation of duties
The three main rules of integrity models:
• Prevent unauthorized users from making modifications
• Prevent authorized users from making improper modifications (separation of duties)
• Maintain internal/external consistency (well-formed transaction)
Clark-Wilson model addresses each of these goals. Biba model only addresses the first goal.
• Clark-Wilson model enforces the three goals of integrity by using access triple (subject, software
TP, and object), separation of duties, and auditing. It enforces integrity by using well-formed
transactions (through access triple) and separation of user duties.
• Separation of duties: assigning different roles to different users.
Users
UDI
CDI
CDI 1
CDI 2
TP IVP
CDI 3
Log CDI
Another Example
In a bank ATM, numbers entered at the keyboard are UDIs so cannot be input to TPs as such. TPs must
validate numbers (to make them a CDI) before using them; if validation fails, TP rejects UDI
For example, consider the following conflict classes: { Dialog, Mobitel, Airtel }
{ Central Bank, HNB, HSBC }
{ Microsoft }
We have a simple access control policy: A subject may access information from any company as long as
that subject has never accessed information from a different company in the same conflict class.
For example, if you access a file from Dialog, you subsequently will be blocked from accessing any files
from Mobitel or Airtel.
You are free to access files from companies in any other conflict class. Notice that permissions change
dynamically. The access rights that any subject enjoys depends on the history of past accesses.
Chinese wall model is mainly focus on conflicts of interest (COI)
COI- conflict classes contains CDs of competitive companies
• Principle: Users should not access the confidential information of both a client organization and one
or more of its competitors.
• How it works
– Users have no ―wall initially.
– Once any given file is accessed, files with competitor information become inaccessible.
– Unlike other models, access control rules change with user behavior
All corporate information is stored in a hierarchically arranged filing system as shown in Figure
There are three levels of significance: at the bottom level, individual pieces of information are
considered, each representing a single corporation.
This information is stored in filed called as objects; at the medium level, all the objects from the
same corporation are grouped into one company dataset; at the top level, all these company datasets from
competing corporations are grouped together .This group is known as conflict of interest class
There are two things that are always associated with the name of the object:
Company dataset
Conflict of Interest class
Thus, in consideration of the Bank-A, Bank-B, Gas Company-A, Oil Company-A and Oil
Company-B datasets mentioned previously, a new user may freely choose to access whatever datasets he
likes; concerning the computer a new user cannot have any conflicts since they does not possess any
information. Sometime later, however, such a conflict may exist.
Suppose the user requests to get the data for Oil Company -A. So it will get the access to the data
since he/she is a new user and thus no conflict exists. Now if after sometime the same user asks for the data
of Bank-A then he/she will be granted the access to the data since they belong to different conflict of
interest classes. Up till this point everything is fine since there is no conflict. Now if the user requests for
accessing the data of Oil Company-B then it the request will be denied since they belong to the same
conflict of interest class.
A new user has complete freedom to access anything he wants to choose. After the user makes the
initial choice, Chinese wall is built around the dataset for that user and the opposite or the wrong side of this
wall can be considered as any dataset in the same conflict of interest class. The user always have access to
the dataset in the different conflict of interest class but whenever he/she accesses some new data from a
different COI then the Wall around him/her changes to include that dataset. So it can be said that
combination of mandatory control and free choice is Chinese wall.
To enforce the Chinese wall policy, two rules are needed. To indicate the similarity with the two
BLP rules, the authors gave them the same names. The first rule is the simple security rule:
Simple security rule: A subject S can read on object O only if
• O is in the same DS as an object already accessed by S, OR
• O belongs to a CI from which S has not yet accessed any information