Search in ISMS Guides


Saturday, August 4, 2007

Security Models


A security model is a mathematical, or logical, expression of a set of security policies. It is a diagrammatic, schematic, or tabular construct of the rules derived from security policies that deals with security levels (of information, of people, and of processes), and the interplay between the various types of security levels. The interplay takes place in accordance with well defined rules, which determine whether information should be allowed to flow, or be restricted, whenever a person or a process tries to access the information.

A security model takes security policies as input, and develops mathematical formulae and relationships between the objects. These formulae and relationships are built into data structures and mapped according to the policy requirements. After the security policies have been written, and the security models are ready as part of the Enterprise Security Architecture (ESA), the process of writing program code or procuring vendor solutions, can begin.

A system can be secure only if its security model is based on logically sound premises as the security features are built into operating systems, database systems, applications, etc, on the basis of their security models. Further, the user has to ensure that the system is appropriately configured to get the full benefit of its security model, since default settings usually constitute a 'low security' version of the model.

There are several well-known security models, such as the Bell-LaPadula model and the Biba model. These models represent certain standard concepts for controlling accessibility, integrity, etc, of information systems.

The Bell-LaPadula model is meant for information systems, where secrecy is of prime importance. On the other hand, the Biba model is suitable where integrity is more important. For example, if a timetable for passenger trains is to be made available online, then thousands of people should be able to access the database, often simultaneously. There would be no need for confidentiality, but there would be the highest possible need for integrity in the system.

In the above example, the data should never get corrupted (intentionally or accidentally), either at its primary storage location, or at the terminals where it is displayed, or even during intermediate stages of processing or transit through networks. Stringent requirements of integrity have to be met, despite the huge volumes of public network access at high speeds and in various processed formats. Evidently, an integrity model, rather than an access control model, will be used for building and operating this railway timetable.

An ESA usually has different security models co-operating within the system. For example, an enterprise may have several databases, built on different security models.

Security models have many benefits. Principally, they establish benchmarks, and ensure optimum utilisation of resources, by incorporating the right kinds of security for different bodies of information. This happens at the machine level, network level, and enterprise level.

Since there is never a single model that can meet all kinds of security requirements, 'best fit' solutions have to be designed, based on organisational requirements.

The Concept
All information security models use the terminologies of 'subject' and 'object.'

A 'subject' is an entity, such as a person, process, or device, which accesses or uses information from the system. An 'object' is the information, or a piece of a larger body of information, which is accessed by a 'subject.' An 'object' may be a 'subject' in another situation or context, and vice versa.

Types of Security Models
The important types of information security models are Access control models, Integrity models, State machine models, Information flow models and Non-interference models.

Different types of information security models use different philosophies for looking at subjects and objects, and also for grouping and classifying them, and for controlling their interactions.

A specific model, which may be a well-known model or a model designed for a particular organisational environment, usually has features from different types of information models. For example, the Bell-LaPadula model is largely an access control model, but it is also based on the state machine model.

Access control models
Access control models use sets of rules, which permit or deny access for a subject to an object. This ensures that information does not fall into wrong hands. The process involves a subject requesting for an object. The permission or denial of access to the object depends upon the 'right' that the subject possesses.

Access control models can be broadly classified into Mandatory access control (MAC) and Discretionary access control (DAC).

Mandatory access control models use the concept of 'labels,' which describe the confidentiality level (or security clearance) of a subject or an object. Access is then controlled as per the labels (or confidentiality levels/security clearances).

Discretionary access control models enable the owners of system resources to specify the subjects, and the rights of the subjects to objects. 'Discretionary access control' enables rights to be assigned as per the discretion (or choice) of the owner of the resource. It provides the owner with a degree of flexibility in exercising access control.

For example, Windows 2000 provides discretionary access control though Active Directory (AD) and Access Control Lists (ACLs). Similarly, Linux also provides discretionary access control.

The important access control models are Access matrix model, Take-Grant model and Bell-LaPadula model.

Integrity models
Integrity models focus on reliability, consistency, and correctness of data. This is achieved by protecting data from modification by unauthorised users, protecting data from unauthorised modification by authorised users, and maintaining consistency of data.

Integrity models ensure that data remains in the same state. In other words, the desired state of data should not undergo any change; either with malicious intent, or by mistake or due to events beyond the control of a user.

Integrity models classify data into integrity levels, and provide appropriate integrity protection between and within the different levels.

The important integrity models are Biba integrity model and Clark-Wilson integrity model

State machine model
The state machine model captures the current state of a system, and compares it with the state at a later time, to determine if there has been a security violation in the interregnum. It looks at users, states, state commands, and outputs. It depicts a transition from one state to another, as a state variable.

A state machine model considers a system to be in a secure state, when there is not a single instance of security breach at the time of state transition. In other words, a state transition should occur only by intent, otherwise it is a security breach.

Information flow models
Information flow models deal with controlling the flow of information, so as to ensure that there are no leakages during the movement of data.

Leakages need to be prevented, whether information is flowing within a security level, or between different levels. Usually this is done by permitting flows only in specified directions, since a leakage is nothing but a flow in an unwanted direction.

The components of information flow models are objects (class, value), state transitions (modifications from current state), lattice (flow policy)

An example of an information flow model is the Sutherland model.

Non-interference model
Developed by Goguen and Meseguer in 1982, the non-interference model keeps activities at different security levels separated from each other, instead of permitting restricted flows between them. This model minimises leakages that may occur through covert channels, by maintaining complete separation (non-interference) between security levels.

A user at a higher security level cannot interfere, in any way, with the activities at a lower level. As a result, the lower level cannot possibly get any information from the higher level.

One of the major limitations of the non-interference model is the premise that a lower-level input cannot, by itself, generate a higher-level output. This assumption is often incorrect. For example, a cryptographic process can transform a low-security data into high-security data.

No comments: