Current version
Git/Latestdiff: 1.5.6
Latest Snapshots
Produced after each commit or rebase to new upstream version
GIT
RSBAC source code, can be unstable sometimes
No events planned
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
why [2005/11/25 10:19] – fixed GFAC pdf link kang | why [2024/12/17 10:31] (current) – [What does flexible mean ?] Remove DAZ, PM ao | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ~~NOTOC~~ | ||
====== What is RSBAC ====== | ====== What is RSBAC ====== | ||
+ | |||
===== Key Features ===== | ===== Key Features ===== | ||
- | * Free Open Source (GPL) Linux kernel security | + | * Free Open Source (GPL) Linux kernel security |
* Independent of governments and big companies | * Independent of governments and big companies | ||
- | * Several well-known and new security models, | + | * Several well-known and new security models, |
- | * On-access virus scanning with Dazuko interface | + | |
* Detailed control over individual user and program network accesses | * Detailed control over individual user and program network accesses | ||
- | * Fully access controlled | + | * Virtual User Management, in kernel and fully access controlled |
+ | * On-access virus scanning with the User Space Decision Facility (UDF) interface | ||
* Any combination of security models possible | * Any combination of security models possible | ||
* Easily extensible: write your own model for runtime registration | * Easily extensible: write your own model for runtime registration | ||
- | * Support for latest kernels | + | * Support for latest kernels |
- | * Stable | + | |
+ | // | ||
+ | |||
+ | ===== Why do we need RSBAC ? ===== | ||
+ | |||
+ | [[wp> | ||
+ | |||
+ | ==== Trusting the user's discretion for access control ? ==== | ||
+ | |||
+ | The fact that access control relies on a file owner' | ||
+ | |||
+ | ==== root, all powers into one account ==== | ||
+ | |||
+ | Another problem is the system administrator account " | ||
+ | |||
+ | Recent Linux kernels additionally implement a privilege scheme, which splits the root user's special rights into a set of single rights, called // | ||
+ | |||
+ | However, while these capabilities can distinguish between some access types, they are mostly ignorant of the object that is to be accessed, for example '' | ||
+ | |||
+ | ==== The solution ==== | ||
+ | |||
+ | The RSBAC framework gives detailed access control information, | ||
===== RSBAC: A framework ===== | ===== RSBAC: A framework ===== | ||
Line 18: | Line 41: | ||
RSBAC is a flexible, powerful and fast ([[documentation: | RSBAC is a flexible, powerful and fast ([[documentation: | ||
- | Practically, | + | Practically, |
==== What does flexible mean ? ==== | ==== What does flexible mean ? ==== | ||
Line 27: | Line 50: | ||
* [[wp> | * [[wp> | ||
* [[wp> | * [[wp> | ||
- | * [[http:// | + | * [[documentation:rsbac_handbook:security_models# |
- | * [[documentation:different_models# | + | |
- | //To get a list and explanation of every model included in RSBAC, see the [[documentation: | + | //To get a list and explanation of every model included in RSBAC, see the [[documentation: |
+ | |||
+ | {{documentation: | ||
RSBAC framework logic is based on the work done for the Generalized Framework for Access Control ([[http:// | RSBAC framework logic is based on the work done for the Generalized Framework for Access Control ([[http:// | ||
All security relevant system calls are extended by security enforcement code. This code calls the central decision component, which in turn calls all active decision modules (the different modules implementing different security models) and generates a combined final decision. This decision is then enforced by the system call extensions. | All security relevant system calls are extended by security enforcement code. This code calls the central decision component, which in turn calls all active decision modules (the different modules implementing different security models) and generates a combined final decision. This decision is then enforced by the system call extensions. | ||
- | Decisions are based on the type of access (request type), the access target and on the values of attributes attached to the subject calling and to the target to be accessed. Additional independent attributes can be used by individual modules, e.g. the privacy | + | Decisions are based on the type of access (request type), the access target and on the values of attributes attached to the subject calling and to the target to be accessed. Additional independent attributes can be used by individual modules, e.g. the Role Compatibility |
As all types of access decisions are based on general decision requests, many different security policies can be implemented as a decision module. Apart from the builtin models, the optional Module Registration (REG) allows for registration of additional, individual decision modules at runtime. | As all types of access decisions are based on general decision requests, many different security policies can be implemented as a decision module. Apart from the builtin models, the optional Module Registration (REG) allows for registration of additional, individual decision modules at runtime. | ||
+ | ==== What can it do, in the real world ? ==== | ||
+ | |||
+ | __To give an example:__ | ||
+ | |||
+ | With Role Compatibility (RC) model, you can protect all executables and configuration settings against **any** user, including root (in case of root exploits). Configuration changes or accesses to files like '/ | ||
+ | |||
+ | Additionally, | ||
//A general goal of RSBAC design has been to some day reach (obsolete) Orange Book ([[http:// | //A general goal of RSBAC design has been to some day reach (obsolete) Orange Book ([[http:// | ||
+ | |||
+ | //Note: this page is also part of the [[: |