sheets of layered colored paper
Thu Aug 31

Bell-LaPadula Model: A MAC Model for Achieving Multi-level Security

Bell-LaPadula is one of the most influential security models in computer science. It is used for enforcing access in government and military applications. In this article, we will explain what the Bell-LaPadula Model is, how it works, why is it important, what are its pros and cons, and the application of Bell-LaPadula Model. When you have finished reading this article, we hope that you will have a clear understanding of the basic concepts and principles of this model, and how it can be applied to protect data confidentiality in various scenarios.

What is the Bell-LaPadula Model?

Developed by David E. Bell and Leonard J. LaPadula, the model is based on the concept of [Mandatory Access Control (MAC)](https://www.binaryte.com/blog/what-is-mandatory-access-control-and-how- does-it-work), with the principle of “no read up, no write down”, meaning that a subject can only read an object with a lower or equal security level, and can only write to an object with a higher or equal security level.

The model is a formal state transition model of computer security policy that describes a set of access control rules that use security labels on objects and clearances for subjects. Security labels range from the most sensitive (e.g., “Top Secret”), down to the least sensitive (e.g., “Unclassified” or “Public”). The model is an example of a model where there is no clear distinction between protection and security.

The Bell-LaPadula Model focuses on data confidentiality and controlled access to classified information, in contrast to the Biba Integrity Model which describes rules for the protection of data integrity. In this formal model, the entities in an information system are divided into subjects and objects. The idea of a “secure state” is defined, and it is proven that each state transition preserves security by moving from secure state to secure state, thereby proving that the system satisfies the security objectives of the model.

How does the Bell-LaPadula Model work?

The Bell-LaPadula Model works by defining a set of states and transitions for a computer system, and ensuring that each transition preserves the security of the system. A state is a snapshot of the system that includes the security levels and labels of all subjects and objects, and the access matrix or access control list that specifies the discretionary permissions for each subject- object pair. A transition is a change in the state that occurs when a subject requests to access an object in a certain mode.

The model defines a secure state as a state that satisfies the following conditions:

  • The ss-property holds for all subject-object pairs in read mode.
  • The *-property holds for all subject-object pairs in write or append mode.
  • The ds-property holds for all subject-object pairs in any mode.

The model defines a secure system as a system that starts in a secure state and can only make transitions to other secure states. The model proves that if a system is secure, then it enforces the confidentiality of the data according to the security policy.

To illustrate how the model works, let us consider an example of a system with three subjects (Alice, Bob, and Eve) and three objects (File1, File2, and File3). The security levels are Top Secret (TS), Secret (S), Confidential (C), and Unclassified (U). The compartments are Nuclear (N) and Crypto (C). The access matrix is shown below:

| File1 (TS {N}) | File2 (S {C}) | File3 (U) | | ---------------- | ------------- | --------- | --- | | Alice (TS {N,C}) | R,W | R,W | R,W | | Bob (S {N}) | - | R,A | R,A | | Eve (C) | - | - | R |

The system starts in a secure state, as it satisfies the ss-property, the -property, and the ds-property. Now, suppose Alice requests to read File1. This is allowed by the ss-property, as Alice’s clearance dominates File1’s label. The system makes a transition to another secure state, where Alice has read File1. Next, suppose Bob requests to write to File2. This is allowed by the -property, as File2’s label dominates Bob’s clearance. The system makes another transition to another secure state, where Bob has written to File2. Finally, suppose Eve requests to read File2. This is denied by the ss- property, as Eve’s clearance does not dominate File2’s label. The system does not make a transition, and remains in the same secure state.

Why is the Bell-LaPadula Model important?

The Bell-LaPadula Model is important because it provides a formal and rigorous framework for defining and enforcing a multilevel security policy that protects data confidentiality in government and military applications. The model has several advantages:

  • It is based on mathematical logic and proofs, which ensure its correctness and consistency.
  • It is simple and elegant, which makes it easy to understand and implement.
  • It is flexible and adaptable, which allows it to accommodate different security levels and compartments according to different needs and requirements.
  • It is widely accepted and adopted, which makes it a standard reference for security research and practice.

What are the advantages and disadvantages of the Bell-LaPadula model?

The Bell-LaPadula model has some advantages and disadvantages that make it suitable or unsuitable for different scenarios. Some of the advantages are:

  • It provides a simple and clear way of enforcing data confidentiality in a system with multiple levels of sensitivity.
  • It is compatible with existing systems and standards that use hierarchical classifications and categories for data protection.
  • It is easy to implement and verify, as it only requires checking the security labels of subjects and objects before granting access.

Some of the disadvantages are:

  • It does not provide any protection for data integrity, as it allows subjects to modify data at higher levels without any verification or validation.
  • It does not provide any flexibility or granularity for data sharing, as it only allows one-way information flow from low to high levels.
  • It does not provide any usability or convenience for users, as it imposes strict restrictions on their access rights and prevents them from performing common tasks such as copying or printing data.

The Bell-LaPadula Model in Action

The Bell-LaPadula model is one of the most widely used security models in computer science. It has been applied to many systems and scenarios that require data confidentiality. Here are some examples of the Bell-LaPadula model in action:

  • Multics was one of the first operating systems that implemented the Bell-LaPadula model. It was developed by MIT, GE, and Bell Labs in the 1960s and 1970s for military and government use. It supported multiple levels of security and categories for users and files, such as unclassified < confidential < secret < top secret < ultra secret < big secret < huge secret < cosmic top secret < etc. It also supported discretionary access control based on access control lists for each file.
  • SELinux (Security-Enhanced Linux) is a Linux kernel module that implements the Bell-LaPadula model. It was developed by the U.S. National Security Agency (NSA) in 2000 for enhancing the security of Linux systems. It supports multiple levels of security and categories for users and files, such as s0 < s1 < s2 < etc., and c0 < c1 < c2 < etc. It also supports discretionary access control based on user identity and role.
  • Trusted Solaris is a version of Solaris operating system that implements the Bell-LaPadula model. It was developed by Sun Microsystems in 1994 for commercial and government use. It supports multiple levels of security and categories for users and files, such as unclassified < confidential < secret < top secret < etc., and need to know < no foreign < etc. It also supports discretionary access control based on user identity and role.

The Bell-LaPadula model can also be applied to other scenarios that require data confidentiality, such as:

  • A hospital system that stores patient records with different levels of sensitivity, such as public < private < confidential < etc., and different categories, such as blood type < allergies < medical history < etc. The system can use the Bell-LaPadula model to ensure that only authorized staff can access the records, and that the records cannot be leaked to unauthorized parties.
  • A cloud computing service that hosts data from different clients with different levels of sensitivity, such as low < medium < high < etc., and different categories, such as personal < business < government < etc. The service can use the Bell-LaPadula model to ensure that only authorized users can access the data, and that the data cannot be mixed or transferred between different clients.
  • A social media platform that allows users to post content with different levels of visibility, such as public < friends < friends of friends < only me < etc., and different categories, such as photos < videos < status updates < etc. The platform can use the Bell-LaPadula model to ensure that only authorized users can view the content, and that the content cannot be shared or copied by unauthorized users.

Conclusion

In this article, we have explained what is Bell LaPadula Model, how it works, why it is important, what are its pros and cons, and the application of Bell Lapadula Model. We have learned that the model is a state machine model that enforces data confidentiality and multilevel security in government and military applications. We hope that this article has helped you to understand the basic concepts and principles of this model, and how it can be applied to protect data confidentiality in various scenarios.