1. Modele teoretycznych ograniczeń systemów
bezpieczeństwa teleinformatycznego
• rozszerzenie modelu macierzowego
• wyprowadzane wnioski związane są z teorią obliczalności
• zadaniem jest wykazanie m. in. Formalnych ograniczeń abstrakcyjnego
systemu bezpieczeństwa informacji
2. Model Grahama-Denninga
• wczesne lata 70-te
• koncepcja formalnego systemu reguł ochrony informacji
• podstawami elementarnymi są:
– zbiór podmiotów S,
– zbiór obiektów O
– zmodyfikowana macierz dostępu A
• macierz dostepu ma jeden wiersz dla każdego podmiotu i jedną
kolumnę dla każdego podmiotu i każdego obiektu
• prawa (włąsności, czytania, kasowania itd.) podmiotu do innego
podmiotu lub obiektu zaznaczone są w odpowiednim elemencie
macierzy
• podmiot oznaczony jako włąściciel (ang. owner) każdego z obiektów
ma specjalne prawa
• podmiot oznaczony jako sterujący (ang. control) każdego innego
podmiotu ma specjalne prawa
3. Model Grahama-Denninga cd.
• osiem podstawowych reguł ochrony wyrażonych w postaci poleceń
realizowanych przez podmiot, oddziaływujących na inny podmiot lub
obiekt.
– create_object – obiekt wydający polecenie może wprowadzić nowy obiekt do systemu
– create_subject, delete_object, delete_subject – umożliwoają utworzyć lub wykasować
podmiot lub obiekt
– read_access_right – pozwala podmiotowi ustalić aktualne prawa dostępu podmiotu do
obiektu
– grant_access_right – pozwala właścicielowi obiektu przenieść prawa dostępu do
obiektu na inny podmiot (prawo przenoszalne)
– delete_access_right – pozwala podmiotowi skasować prawa dostępu do obiektu
posiadane przez inny podmiot pod warunkiem, że kasujący podmiot jest właścicielem
obiektu albo steruje podmiotem, którego prawa kasuje
– transfer_access_right – pozwala podmiotowi przenieść prawo dostępu do obiektu na
inny podmiot z jednoczesną utratą tego prawa (prawo nieprzenoszalne)
4. Model Grahama-Denninga cd.
• prawa mogą być przenoszalne (r*) i nieprzanoszalne (r)
– podmiot posiadający prawo przenoszalne, może to prawo przenieść na inny podmiot
bez utraty posiadanego prawa
– podmiot posiadający prawo nieprzenoszalne
• macierz uprawnień oznaczana jest jako A[si,oj], gdzie si jest podmiotem, a
oj jest obiektem, x to podmiot wykonujący polecenie
Polecenie Warunek wstępny Wynik
Create object o ---- Add column for o in A;
place owner in A[x,o]
Create subject s ---- Add row for s in A;
place control in A[x,o]
Delete object o Owner in A[x,o] Delete column o
Delete subject s Control in A[x,s] Delete row s
Read access right of s on o Control in A[x,s] or owner in Copy A[s,o] to x
A[x,o]
Delete access right of s on o Control in A[x,s] or owner in Remove r from A[s,o]
A[x,o]
Grant access right to s on o Owner in A[x,o] Add r to A[s,o]
5. Model Harrisona-Ruzzo-Ullmana (HRU)
• jest wariantem modelu Grahama-Denninga
• wykorzystuje polecenia (ang. command), które wyprowadzają warunki i operacje
elementarne
command name (o1, o2,…,ok)
if r1 in A[s1,o1] and
r2 in A[s2,o2] and
.
.
rm in A[sm,om] and
then
op1
op2
.
.
opn
end
6. Model Harrisona-Ruzzo-Ullmana (HRU) cd.
• struktura polecenia przypomina procedurę z parametrami od o1 do om
• Różnica w stosunku do modelu Grahama-Denninga polega na tym że każdy podmiot jest też
obiektem
• kolumny macierzy dostępu obejmują wszystkie podmioty i obiekty (z tego powodu wszystkie
wszystkie parametry poleceń są etykietowane jako o)
• każde prawo r jest prawem ogólnym (obejmuje różne możliwości dostępu, w macierzy
dostępu są wyspecyfikowane konkretne prawa na przecięciu poszczególnych kolumn i
wierszy)
• każda operacja op jest elementarna z podanej listy:
– create subject s
– create object o
– destroy subject s
– destroy object o
– enter right r into A[s,o]
– delete right r from A[s,o]
7. Model Harrisona-Ruzzo-Ullmana (HRU) cd.
Obiekty
Podmioty s1 s2 s3 o1 o2 o3
s1 przełącz zawieś własność pisz czytaj,
kasuj
s2 wykonaj rozszerz
s3 czytaj czytaj, pisz pisz wykonaj
…
• system ochrony informacji skłąda się ze zbioru obiektów, podmiotów, praw dostępu i
poleceń.
8. Model Harrisona-Ruzzo-Ullmana (HRU) cd.
Na podstawie modelu HRU można otrzymać dwa znaczące w
projektowaniu systemów ochrony informacji wyniki dotyczące
przeciekania informacji:
– w systemie ochrony, gdzie każde polecenie ograniczone jest do pojedyńczej operacji,
jest możliwe ustalenie czy danemu podmiotowi uda się uzyskać określone prawo
dostępu do obiektu
– w systemie ochrony, gdzie polecenia nie są ograniczone do pojedyńczych operacji, nie
zawsze jest możliwe do ustalenia, czy danemu podmiotowi uda się uzyskać określone
prawo dostępu do obiektu
Z powyższego wynika, że jeśli każde polecenie zawiera tylko jednąo
perację elementarną, istnieje algorytm mówiący czy w konkretnym
systemie ochrony, startując od ustalonej konfiguracji początkowej
macierzy dostępu, użytkownik uzyska określony dostęp do zadanego
obiektu (czy system zezwala na określoną propagację prawa dostępu)
9. Model Harrisona-Ruzzo-Ullmana (HRU) cd.
Dowód pierwszego z twierdzeń wykorzystuje analiz₃ę minimalnej liczby poleceń, za pomocą
których można uzyskać prawo dostępu. Operacja delete nie daje efektu rozszerzania praw
dostępu i może być pominięta.
Najkrótsza sekwencja poleceń, za pomocą której można nadać określone prawo, zawiera:
m = |r| * (|s| + 1) * (|o| + 1) + 1
poleceń, gdzie |r| - jestliczbą praw, |s| - jest liczbą podmiotów, |o| - jest liczbą obiektów w
modelowanym systemie ochrony. Decyzja, czy dla pewnej ustalonej konfiguracji początkowej
macierzy dostępu określony użytkownik uzyska ządany dostęp do zadanego obiektu, jest
podejmowana na podstawie testowania wszystkich takich poleceń o długości do m (tj.
istnieje 2^km takich sekwencji dla ustalonego k)
Dowód drugiego twierdzenia wykorzystuje maszynę Turinga w celu wykazania, że procedura
decyzyjna odnośnie do ogólnego bezpieczeństwa systemu ochrony zawarta w tym
twierdzeniu sprowadza się do „problemu stopu” – problem nierozstrzygalny
10. Model take-grant
• potocznie zwany „przejmij-przekaż”
• wprowadza się:
– zbiór podmiotów S;
– zbiór obiektów O (aktywne czyli podmioty, oraz pasywne – inne niż
podmioty)
– zbiór praw dostępu R
• System ochrony jest modelowany za pomocą grafu, w którym
każdy obiekt bądź podmiot jest wierzchołkiem grafu, a prawa
określonego podmiotu do pewnego obiektu są modelowane
za pomocą etykietowanej i skierowanej od podmiotu do
obiektu krawędzi
11. Model take-grant cd.
Cztery elementarne operacje w modelu to:
– create(o, r) – dodaje nowy wierzchołek do grafu. Z s do o jest
utworzony łuk z etykietą r opisującą prawo s do o.
– revoke(o, r) – s usuwa prawo r do obiektu o. Łuk z s do o jest
etykietowany jako qr, gdzie q jest zbiorem uprawnień.
– grant(o, p, r) – podmiot s przyznaje o prawo dostępu r do p. Prawo
nazywa się ”grantem”. Podmiot s może przyznać o prawo dostępu r do
p tylko wtedy, jeżeli s przyznaje prawo s i s ma prawo r do p. W grafie
dodawany jest łuk z o do p etykietowany jako r.
– take(o, p, r) – podmiot s zabiera o prawo dostępu r do p. Prawo
nazywa się ”take”. Podmiot s może zabrać o prawo r do p jedynie
wtedy, gdy s ma prawo „take” do o i o ma prawo do p. W grafie
dodawany jest łuk z o do p etykietowany jako r.
12. Model take-grant cd.
Na podstawie tego modelu można szybko odpowiedzieć na
pytania z dziedziny ochrony informacji:
– Czy można ustalić, że dany podmiot może dzielić określony obiekt z
innym podmiotem.
Tak. Dzielenie może nastąpić tylko wtedy, gdy kilka różnych
podmiotów ma dany dostęp do obiektu i pierwszy z podmiotów jest
połączony z innymi podmiotami w grupie za pomocąodpowiedniej
ścieżki. Istnieje wtedy algorytm wykrywający w czasie
proporcjonalnym do rozmiaru grafu, współużytkowanie obiektu.
– Czy można ustalić, że dany podmiot może wykraść prawa dostępu do
określonego obiektu innemu obiektowi.
Odpowiedź na to pytanie jest zależne od konkretnej sytuacji i wyników
algorytmu odpowiadającego na pierwsze pytanie.
13. Model take-grant cd.
Użyteczność modelu „take-grant” polega na tym, że
identyfikuje warunki, na jakich użytkownik może otrzymać
dostęp do obiektu.