Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Information protection in digital communication systems. Textbook

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
101
3. The integrity is monitored (based on user information Ki or without it) of all objects of the base OS located on some media, locally or remotely (via LAN technical means) associated with Tt.
4. The base operating system is loaded and the integrity of the gateway software is monitored.
5. The gateway software is loaded (at the same time, the OSj file structure located locally on Tm becomes available, at least in read mode).
6. The integrity of objects at levels lower than Rj (Rj is the maximum level of representation of objects in OSj) for OSj (see above) is monitored.
7. The integrity of Rj level objects (files) OSj is monitored.
8. The integrity of the object that specifies the loading sequence of components is monitored.
9. Forced loading is carried out (the loading order of OS components, predetermined due to the integrity of Oz objects and the sequence ZL, is initiated) of OSj, checked for integrity.
Statement 8 (conditions for generating ISE when implementing the
method).
Let the OS kernel contain an OSM and an SSM, the subjects initiated in the OS are correct in pairs, their source objects belong to the set that are checked for immutability during trusted loading, the OSM prohibits changing any source object, and the trusted OS loading procedure has been completed. Then, after the OS kernel is initiated, an ISE is generated.
Proof. The procedure of trusted loading by construction ensures the immutability of Oz and ZL, according to the condition of the statement, only source objects belonging to Oz are allowed to generate subjects, the immutability of source objects by condition is guaranteed by the properties of the OSM. Consequently, the conditions of Statement 5 are satisfied and the ISE is generated. The statement has been proven [1].
102
CHAPTER 4. MATHEMATICAL MODELS
OF INFORMATION SECURITY2
An information security model is a formal expression of a security policy.
Formal models are necessary and used quite widely, because only with their help can one prove the safety of a system, while relying on objective and irrefutable postulates of mathematical theory. Security models make it possible to justify the viability of a system and determine the basic principles of its architecture and the technological solutions used in its construction. The main goal of creating a security policy for an information system and describing it in the form of a formal model is to determine the conditions to which the behavior of the system must be subject, to develop a security criterion and to conduct a formal proof of the system’s compliance with this criterion while observing the established rules and restrictions.
In addition, formal security models make it possible to solve a whole range of problems that arise during the design, development and certification of secure systems, therefore they are used not only by information security theorists, but also by other categories of specialists involved in the process of creating and operating secure information systems (manufacturers, consumers, expert qualifiers).
Manufacturers of secure information systems use security models in the following cases:
when drawing up a formal specification of the security policy of the
system being developed;
when choosing and justifying the basic principles of the architecture of a protected system, which determine the mechanisms for implementing security measures;
in the process of analyzing the security of the system as a reference model;
2
All figures in this chapter are taken from « Защита информации в цифровых системах
связи».
103
when confirming the properties of the developed system by formally proving compliance with the security policy.
By drawing up formal security models, consumers are able to communicate their requirements to manufacturers in a clearly defined and consistent manner, as well as evaluate the suitability of protected systems for their needs. Qualification experts, when analyzing the adequacy of security policy implementation in protected systems, use security models as references.
All considered security models are based on the following basic concepts:
1. A system is a collection of interacting entities subjects and objects. Security of information processing is ensured by solving the problem of controlling subjects access to objects in accordance with a given set of rules and restrictions that form a security policy. A system is considered secure if subjects are unable to violate the rules of the security policy.
2. All interactions in the system are modeled by establishing relationships of a certain type between subjects and objects. The set of relationship types is defined as a set of operations that subjects can perform on objects.
3. All operations are controlled by the interaction monitor and are either prohibited or allowed in accordance with the security policy rules.
4. The security policy is specified in the form of rules in accordance with which all interactions between subjects and objects must be carried out. Interactions that violate these rules are blocked by access controls and cannot be implemented.
5. The set of sets of subjects, objects and relationships between them (established interactions) determines the state of the system. Each state of the system is either safe or unsafe according to the safety criterion proposed in the model.
6. The main element of the security model is the proof of the statement (theorem) that a system in a safe state cannot go into an unsafe state if all established rules and restrictions are observed.
104
4.1. CLASSIFICATION OF MATHEMATICAL MODELS
OF INFORMATION SECURITY BY MAIN TYPES OF THREATS
Fig. 4.1. Classification of information security models
1. Model of non-derivability
2. Laissez faire model
Threat Protection
Protection from the threat of disclosure
Models of access control
based on the principle
of granting rights
Probabilistic models
Information models
Discretionary (discrete)
access models
Mandatory access
models
Role-based access model
Protection against integrity threats
Protection against the threat of service failure
1. Access matrix
2. Harrison Ruzzo Ullman model
3. Take-Grant model
4. Model ADEPT-50
5. Hurston model
1. Game model
2. Full overlap model
Bell LaPadula model
1. Biba model
2. Clark-Wilson model
1. Mandate model
2. Millen model of resource allocation
105
4.2. ACCESS CONDITION MODELS
4.2.1. Description of the protection system using the access matrix
Let O be a set of objects, S be a set of subjects, S O. Let U = {U1, ...,
Um} be a set of users. Let us define the mapping: own: О U.
According to this mapping, each object is declared to be the property of the corresponding user. A user who owns an object has all access rights to it, and sometimes the right to transfer some or all rights to other users. In addition, the owner of an object determines the access rights of other subjects to this object, that is, the security policy regarding this object. The specified access rights are written in the form of an access matrix (Fig. 4.2), the elements of which are subsets of the set R that determine the access of the subject S to the object Oi (i = 1, 2, ...; j = 1, 2, ...).
Fig. 4.2. Access Matrix
There are several options for specifying the access matrix:
1. Opportunity sheets: for each subject Si, a sheet (file) of all objects
to which this object has access is created.
2. Access control sheets: for each object, a list of all subjects who have
access rights to this object is created.
The discretionary policy is related to the original model in such a way that the trajectories of processes in the computing system are limited in each access. Moreover, the vertices of each graph are divided into classes, and
106
access in each class is determined by its own rules for each owner. The set of unfavorable trajectories N for the class of policies under consideration is determined by the presence of unfavorable states, which, in turn, are determined by prohibitions on some arcs. Discretionary policies are the most researched. There are many variations of this policy. However, this policy cannot solve many protection problems. One of the most significant weaknesses of this class of policies is that they do not withstand Trojan horse attacks. This means, in particular, that a security system that implements a discretionary policy provides poor protection against the penetration of viruses into the system and other means of hidden destructive influence. Let us use an example to demonstrate the principle of a Trojan Horse attack in the case of a discretionary policy.
Example 1: Let U1 be some user, and U2 be a malicious user, O1 be an object containing valuable information, O2 be a program with a Trojan horse, T and M be an access matrix, which has the form:
Fig. 4.3. Access Matrix
The penetration of the program occurs as follows. The attacker U2 creates the program O2 and, being its owner, allows U1 to run it and write information to the object O2. After that, he somehow initiates U1 to run this program (for example, O2 presents an interesting computer game that he offers to U1 for entertainment). U1 launches O2 and thereby launches the hidden program T, which, having the rights of U1 (since it was launched by user U1), writes down the information contained in O1. After this, the owner
107
U2 of object O2, using all rights, has the opportunity to read valuable information of object O1 from O2.
The next problem with discretionary policies is the automatic determination of entitlements. Since there are many objects, it is impossible to manually specify in advance the list of rights of each subject to access the object. Therefore, the access matrix is aggregated in various ways, for example, only users are left as subjects, and function formulas are inserted into the corresponding cell of the matrix, the calculation of which determines the access rights of the subject generated by the user to object O. Of course, these functions can change over time. In particular, it is possible to revoke rights after the completion of some event. Modifications depending on other parameters are possible.
One of the most important problems when using discretionary policies is the problem of controlling the distribution of access rights. Most often, it happens that the owner of a file transfers the contents of the file to another user and that user thereby acquires the owners rights to the information. Thus, rights can be extended, and even if the original owner did not want to transfer access to some subject S to his information in O, then after a few steps the transfer of rights can take place regardless of his will. The problem arises of the conditions under which in such a system some subject will sooner or later receive the access he requires. This problem was studied in the “take-grant” model, when the form of transfer or taking of rights is defined in the form of a special access right (instead of own).
4.2.2. Harrison Ruzzo Ullman discretionary model
The Harrison Ruzzo Ullman security model, which is a classic discretionary model, implements arbitrary control of subject access to objects and control over the distribution of access rights.
Within the framework of this model, the information processing system is represented as a set of active entities subjects (set S) that access information, passive entities objects (set O) containing protected information, and a finite set of access rights R = {g1p ... gn}, indicating
108
permissions to perform the corresponding actions (for example, read, write, execute).
The behavior of the system is modeled using the concept of state. The state space of the system is formed by the Cartesian product of the sets of its constituent objects, subjects and rights OxSxR. The current state of the system Q in this space is determined by a triple consisting of a set of subjects, a set of objects and a matrix of access rights M, which describes the current access rights of subjects to objects Q = (S,O,M). The rows of the matrix correspond to subjects, and the columns correspond to objects, since a set of objects includes a set of subjects, the matrix has the form of a rectangle. Any cell of the matrix M[s,o] contains a set of rights of subject s to object o, belonging to the set of access rights R. The behavior of the system over time is modeled by transitions between different states. The transition is carried out by making changes to the matrix M using commands.
In the classical model, only the following elementary operations are allowed:
• enter r into M[s,o] (adding subject s the right r for object o);
• delete r from M[s,o] (deleting subject s' right r for object o);
• create subject s (creating a new subject s);
• create object o (creating a new object o);
• destroy subject s (deleting an existing subject s);
• destroy object o (deleting an existing object o).
The application of any elementary operation op in a system in the state Q = (S,O,M) entails a transition to another state Q' = (S',O',MI), which differs from the previous state Q at least one component.
The enter operation introduces the right r into an existing cell of the access matrix. The contents of each cell are considered as a set, i.e. if this right already exists, then the cell is not changed. The enter operation is called monotonic because it only adds permissions to the access matrix and does not remove anything. The delete operation is the opposite of the enter operation. It removes the right from the access matrix cell if it is present there. Because the contents of each cell are treated as a set, delete does
109
nothing if the specified cell has no right to be deleted. Since delete removes information from the access matrix, it is called a non-monotonic operation. The create subject and destroy subject operations are a similar pair of monotonic and non-monotonic operations.
Note that for each operation there is also a precondition for its execution: in order to change a cell of the access matrix using the enter or delete operations, it is necessary that this cell exists, that is, that the corresponding subject and object exist. Preconditions for creation operations create subject/object is the absence of the subject/object being created, and delete operations destroy subject/object are the presence of the subject/object. If the precondition of any operation is not satisfied, then its execution is unsuccessful.
The formal description of the system (Q,R,C) consists of the following elements:
finite set of access rights R = {r
1
, …, r
n
};
finite sets of initial subjects So = {s
1
, …, s
i
} and objects О0 = {o
1
, …,
о
m
}, where So О0;
the initial access matrix containing the access rights of subjects to
objects Mo;
a finite set of commands O{aj(x1, xk)}, each of which consists of execution conditions and interpretation in terms of the listed elementary operations.
The behavior of the system over time is modeled using a sequence of states {Qj}, in which each subsequent state is the result of applying some command from the set C to the previous one Q
n+1
= Cn(Qn). Each state defines the access relationships that exist between system entities in the form of a set of subjects, objects and a matrix of rights. Since some access relationships must be restricted to ensure security, given the initial state of the system, it must be possible to determine the set of states into which it can go from there. This will make it possible to set such initial conditions (interpretation of commands C, set of objects Oo, subjects So and access matrix Mo) under which the system can never get into states that are not desirable from a security point of view. Consequently, to build a system with
110
predictable behavior, it is necessary, for given initial conditions, to obtain an answer to the question: will some subject s ever be able to acquire the access right r for some object O?
The safety criterion for the Harrison Ruzzo Ullman model is
formulated as follows:
For a given system, the initial state Qo = (So, Oo, Mo) is safe with respect to right r if there is no sequence of commands applicable to Qo, as a result of which right r will be entered into a cell of the matrix M in which it was absent in the state QO.
The meaning of this criterion is that for a secure system configuration, a subject will never receive the right of access to an object if he did not have it initially.
From the security criterion it follows that for this model the key role is played by the choice of access rights values and their use in command conditions. Although the model does not impose any restrictions on the meaning of rights and considers them to be equivalent, those that are involved in command execution conditions are in fact not access rights to objects (such as read and write), but access control rights, or rights to modify the cells of the access matrix. Thus, in essence, this model describes not only the access of subjects to objects, but the distribution of access rights from subject to subject, since it is the change in the content of the cells of the access matrix that determines the possibility of executing commands, including commands that modify the access matrix itself, which potentially may lead to a violation of safety criteria.
It should be noted that from the point of view of the practice of building secure systems, the Harrison Ruzzo Ullman model is the simplest to implement and most effective to manage, since it does not require any complex algorithms, and allows you to manage user permissions up to an operation on an object, which explains its prevalence among modern systems. In addition, the security criterion proposed in this model is very strong in practical terms, since it allows us to guarantee the inaccessibility of certain information to users who are not initially given the appropriate permissions.