vault backup: 2023-07-22 13:07:15
This commit is contained in:
22
.obsidian/workspace.json
vendored
22
.obsidian/workspace.json
vendored
@@ -156,7 +156,7 @@
|
||||
}
|
||||
}
|
||||
],
|
||||
"currentTab": 7
|
||||
"currentTab": 14
|
||||
}
|
||||
],
|
||||
"direction": "vertical"
|
||||
@@ -230,7 +230,7 @@
|
||||
"state": {
|
||||
"type": "backlink",
|
||||
"state": {
|
||||
"file": "Mathe/Ilias/KW21-FolRei.pdf",
|
||||
"file": "Mathe/Ilias/KW13-Kompl1.pdf",
|
||||
"collapseAll": false,
|
||||
"extraContext": false,
|
||||
"sortOrder": "alphabetical",
|
||||
@@ -247,7 +247,7 @@
|
||||
"state": {
|
||||
"type": "outgoing-link",
|
||||
"state": {
|
||||
"file": "Mathe/Ilias/KW21-FolRei.pdf",
|
||||
"file": "Mathe/Ilias/KW13-Kompl1.pdf",
|
||||
"linksCollapsed": false,
|
||||
"unlinkedCollapsed": true
|
||||
}
|
||||
@@ -270,7 +270,7 @@
|
||||
"state": {
|
||||
"type": "outline",
|
||||
"state": {
|
||||
"file": "Mathe/Ilias/KW21-FolRei.pdf"
|
||||
"file": "Mathe/Ilias/KW13-Kompl1.pdf"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -331,19 +331,20 @@
|
||||
"obsidian-wordnet-plugin:WordNet Dictionary": false
|
||||
}
|
||||
},
|
||||
"active": "a98869a6d75ac53b",
|
||||
"active": "b8336cb3c3d06be9",
|
||||
"lastOpenFiles": [
|
||||
"Mathe/Ilias/KW20-VekRau.pdf",
|
||||
"Mathe/Ilias/KW19-KeineVeranstaltungen.pdf",
|
||||
"Mathe/Ilias/KW18-Zusatz_Uebungen.pdf",
|
||||
"Mathe/Ilias/ProbeKlaus_mi2.pdf",
|
||||
"Informationssicherheit/Ueb9/UEB_09.md",
|
||||
"English/KW26.md",
|
||||
"Informationssicherheit/Ueb9/UEB_09.pdf",
|
||||
"Informationssicherheit/Ueb9",
|
||||
"Mathe/Ilias/KW26-IntFk2.pdf",
|
||||
"Mathe/Ilias/KW25-IntFk1.pdf",
|
||||
"Mathe/Ilias/KW24-DifFk2.pdf",
|
||||
"Mathe/Ilias/KW23-DifFk1.pdf",
|
||||
"Mathe/Ilias/KW22-klaumfi2_20230214.pdf.pdf",
|
||||
"Mathe/Ilias/KW21-FolRei.pdf",
|
||||
"Mathe/Ilias/KW17-GeoTra.pdf",
|
||||
"Mathe/Ilias/KW21-FolRei.pdf",
|
||||
"Mathe/Ilias/KW20-VekRau.pdf",
|
||||
"Informationssicherheit/Ueb7/Ueb07.md",
|
||||
"Informationssicherheit/UEB8/UEB08.md",
|
||||
"Informationssicherheit/Ueb6/Ueb 6.md",
|
||||
@@ -370,7 +371,6 @@
|
||||
"Mathe/KW16/UEB.md",
|
||||
"CCN/Ex01/Exercise 1.md",
|
||||
"CCN/Ex01/2023-04-18_11-08.png",
|
||||
"Algorithmen und Datenstrukturen/UEB03/UEB03.md",
|
||||
"Informationssicherheit/Ueb2/2023-04-17_15-55.png",
|
||||
"Informationssicherheit/Ueb2/2023-04-17_14-16.png",
|
||||
"Informationssicherheit/Ueb1/20230330_19h30m31s_grim.png",
|
||||
|
||||
9
English/KW26.md
Normal file
9
English/KW26.md
Normal file
@@ -0,0 +1,9 @@
|
||||
- System doesn't boot
|
||||
- It gets past the bios
|
||||
- Your physical components are all detected
|
||||
- Temps are ok
|
||||
- No bootloop, just stuck
|
||||
- SSD is working
|
||||
|
||||
|
||||
Problem: Bootloader is deleted
|
||||
182
Informationssicherheit/Ueb9/UEB_09.md
Normal file
182
Informationssicherheit/Ueb9/UEB_09.md
Normal file
@@ -0,0 +1,182 @@
|
||||
# 1
|
||||
## a
|
||||
Eine Zugriffskontrollmatrix ist ein Modell, das in Computersystemen zur Darstellung der Rechte von einzelnen Benutzern (in diesem Fall Alice und Bob) auf bestimmte Ressourcen (in diesem Fall die drei Dateien) verwendet wird.
|
||||
|
||||
Die Matrix könnte so aussehen:
|
||||
|
||||
|Benutzer / Datei|hello world.txt|check world.sh|print hello world.sh|
|
||||
|---|---|---|---|
|
||||
|Alice|R, W|R, X|X|
|
||||
|Bob|R|R, W|-|
|
||||
|
||||
Hinweis:
|
||||
|
||||
- R steht für Lesen (Read)
|
||||
- W steht für Schreiben (Write)
|
||||
- X steht für Ausführen (Execute)
|
||||
- "-" zeigt an, dass kein Zugriff gewährt wurde
|
||||
|
||||
In dieser Matrix kann Alice die Datei "hello world.txt" lesen und schreiben, die Datei "check world.sh" lesen und ausführen, und sie kann die Datei "print hello world.sh" ausführen. Bob hingegen kann die Datei "hello world.txt" lesen, kann in "check world.sh" lesen und schreiben, aber hat keinen Zugriff auf "print hello world.sh".
|
||||
|
||||
## b)
|
||||
Access Control Lists (ACLs) sind Listen, die auf jeder Ressource basieren und definieren, welcher Benutzer welche Zugriffsrechte auf die Ressource hat. Hier sind die ACLs für die genannten Dateien:
|
||||
|
||||
**hello world.txt**
|
||||
|
||||
- Alice: Lesen, Schreiben
|
||||
- Bob: Lesen
|
||||
|
||||
**check world.sh**
|
||||
|
||||
- Alice: Lesen, Ausführen
|
||||
- Bob: Lesen, Schreiben
|
||||
|
||||
**print hello world.sh**
|
||||
|
||||
- Alice: Ausführen
|
||||
- Bob: Kein Zugriff
|
||||
|
||||
## c)
|
||||
Im Gegensatz zu ACLs, die auf Ressourcen basieren, basieren Capabilities auf Benutzern. Sie definieren, welche Ressourcen von einem bestimmten Benutzer zugegriffen werden können und welche Operationen ausgeführt werden können. Hier sind die Capabilities für Alice und Bob:
|
||||
|
||||
**Alice**
|
||||
|
||||
- hello world.txt: Lesen, Schreiben
|
||||
- check world.sh: Lesen, Ausführen
|
||||
- print hello world.sh: Ausführen
|
||||
|
||||
**Bob**
|
||||
|
||||
- hello world.txt: Lesen
|
||||
- check world.sh: Lesen, Schreiben
|
||||
- print hello world.sh: Kein Zugriff
|
||||
|
||||
Bei beiden Modellen handelt es sich um verschiedene Ansätze zur Darstellung von Zugriffsrechten in Computersystemen, wobei ACLs den Zugriff auf der Basis einzelner Ressourcen steuern und Capabilities auf Benutzerbasis arbeiten.
|
||||
|
||||
# 2
|
||||
|
||||
Um die Situation mit Linux-Dateisystemberechtigungen umzusetzen, müssen wir zuerst die Dateien erstellen und dann die entsprechenden Berechtigungen setzen. Bitte beachten Sie, dass in Linux Dateinamen ohne Leerzeichen üblicher sind. Ich werde Unterstriche anstelle von Leerzeichen verwenden, um den Prozess reibungslos zu gestalten.
|
||||
|
||||
a) Erstellen Sie eine Datei `hello_world.txt` mit dem Inhalt "Hello, world!".
|
||||
|
||||
``` bash
|
||||
echo "Hello, world!" > hello_world.txt
|
||||
```
|
||||
|
||||
b) Erstellen Sie eine Datei `check_world.sh` mit dem Inhalt `cat hello_world.txt | grep -q ’world’ && echo "’world’ found"`.
|
||||
|
||||
``` bash
|
||||
echo "cat hello_world.txt | grep -q 'world' && echo "'world' found"" > check_world.sh
|
||||
```
|
||||
|
||||
c) Erstellen Sie eine Datei `print_hello_world.sh` mit dem Inhalt `cat hello_world.txt`.
|
||||
|
||||
``` bash
|
||||
echo "cat hello_world.txt" > print_hello_world.sh
|
||||
```
|
||||
|
||||
d) Erstellen Sie die Benutzer Alice und Bob mithilfe des Werkzeugs `adduser`.
|
||||
|
||||
```bash
|
||||
sudo adduser alice
|
||||
sudo adduser bob
|
||||
```
|
||||
|
||||
Bei diesen Befehlen werden Sie nach weiteren Informationen gefragt, wie z.B. dem Passwort für die Benutzer.
|
||||
|
||||
e) Erstellen Sie eine Gruppe `shared` mithilfe des Werkzeugs `addgroup`.
|
||||
|
||||
``` bash
|
||||
sudo addgroup shared
|
||||
```
|
||||
|
||||
f) Fügen Sie Alice und Bob zur Gruppe `shared` hinzu mithilfe des Werkzeugs `usermod`.
|
||||
|
||||
``` bash
|
||||
sudo usermod -a -G shared alice
|
||||
sudo usermod -a -G shared bob
|
||||
```
|
||||
Der Parameter `-a` steht für 'append' (hinzufügen) und `-G` steht für 'groups' (Gruppen). Also fügt `usermod -a -G` den Benutzer zu der angegebenen Gruppe hinzu, ohne ihn aus anderen Gruppen zu entfernen.
|
||||
|
||||
g) Wir haben bereits die Dateien erstellt und nun müssen wir die entsprechenden Berechtigungen setzen. Da wir die Benutzer und die Gruppe erstellt haben, müssen wir auch die Eigentümerschaft der Dateien auf Alice setzen und die Gruppe der Dateien auf `shared` setzen:
|
||||
|
||||
```bash
|
||||
sudo chown alice:shared hello_world.txt
|
||||
sudo chown alice:shared check_world.sh
|
||||
sudo chown alice:shared print_hello_world.sh
|
||||
```
|
||||
|
||||
Jetzt setzen wir die Berechtigungen entsprechend der Anforderungen.
|
||||
|
||||
```bash
|
||||
sudo chmod 640 hello_world.txt # Alice (Eigentümer) kann lesen und schreiben, Gruppe (shared) kann nur lesen
|
||||
sudo chmod 560 check_world.sh # Alice kann lesen und ausführen, Gruppe (shared) kann lesen und schreiben
|
||||
sudo chmod 100 print_hello_world.sh # Alice kann nur ausführen, Gruppe (shared) und andere haben keinen Zugriff
|
||||
```
|
||||
|
||||
h) Testen Sie die von Ihnen erstellten Dateisystemberechtigungen.
|
||||
|
||||
`su <username>`
|
||||
|
||||
Als Alice:
|
||||
|
||||
Read:
|
||||
```bash
|
||||
alice@LAPTOP-UVV3KEQR:~$ cat hello_world.txt
|
||||
Hello, world!
|
||||
alice@LAPTOP-UVV3KEQR:~$ cat check_world.sh
|
||||
cat hello_world.txt | grep -q 'world' && echo world found
|
||||
alice@LAPTOP-UVV3KEQR:~$ cat print_hello_world.sh
|
||||
cat: print_hello_world.sh: Permission denied
|
||||
```
|
||||
|
||||
Write:
|
||||
```bash
|
||||
alice@LAPTOP-UVV3KEQR:~$ echo "Hello, world!" > hello_world.txt
|
||||
alice@LAPTOP-UVV3KEQR:~$ echo "text" > check_world.sh
|
||||
bash: check_world.sh: Permission denied
|
||||
alice@LAPTOP-UVV3KEQR:~$ echo "text" > print_hello_world.sh
|
||||
bash: print_hello_world.sh: Permission denied
|
||||
```
|
||||
|
||||
Execute:
|
||||
```bash
|
||||
alice@LAPTOP-UVV3KEQR:~$ ./hello_world.txt
|
||||
bash: ./hello_world.txt: Permission denied
|
||||
alice@LAPTOP-UVV3KEQR:~$ ./check_world.sh
|
||||
world found
|
||||
alice@LAPTOP-UVV3KEQR:~$ ./print_hello_world.sh
|
||||
bash: ./print_hello_world.sh: Permission denied
|
||||
```
|
||||
---
|
||||
|
||||
Bob:
|
||||
Read:
|
||||
```bash
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ cat hello_world.txt
|
||||
Hello, world!
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ cat check_world.sh
|
||||
cat hello_world.txt | grep -q 'world' && echo world found
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ cat print_hello_world.sh
|
||||
cat: print_hello_world.sh: Permission denied
|
||||
```
|
||||
|
||||
Write:
|
||||
```
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ echo "Hello, world!" > hello_world.txt
|
||||
bash: hello_world.txt: Permission denied
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ echo "cat hello_world.txt | grep -q 'world' && echo world found" > check_world.sh
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ echo "test" > print_hello_world.sh
|
||||
bash: print_hello_world.sh: Permission denied
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$
|
||||
```
|
||||
|
||||
Execute:
|
||||
```bash
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ ./hello_world.txt
|
||||
bash: ./hello_world.txt: Permission denied
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ ./check_world.sh
|
||||
bash: ./check_world.sh: Permission denied
|
||||
bob@LAPTOP-UVV3KEQR:/home/alice$ ./print_hello_world.sh
|
||||
bash: ./print_hello_world.sh: Permission denied
|
||||
```
|
||||
BIN
Informationssicherheit/Ueb9/UEB_09.pdf
Normal file
BIN
Informationssicherheit/Ueb9/UEB_09.pdf
Normal file
Binary file not shown.
Reference in New Issue
Block a user