Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung Nächste Überarbeitung Beide Seiten, nächste Überarbeitung | ||
admin_grundlagen:dateirechte [2017/11/22 11:20] 127.0.0.1 Externe Bearbeitung |
admin_grundlagen:dateirechte [2020/12/01 13:49] ingo_wichmann [Übung: finde die minimal nötigen Berechtigungen] |
||
---|---|---|---|
Zeile 6: | Zeile 6: | ||
Welche Berechtigungen müssen jeweils bei ''/tmp/dir1'', ''/tmp/dir2'' und ''file1'' hinzugefügt werden, damit ''file1'' mit | Welche Berechtigungen müssen jeweils bei ''/tmp/dir1'', ''/tmp/dir2'' und ''file1'' hinzugefügt werden, damit ''file1'' mit | ||
- | cp file1 /tmp/dir1/ | + | cp file1 /tmp/dir1/file2 |
ins Verzeichnis ''/tmp/dir1'' kopiert werden kann? | ins Verzeichnis ''/tmp/dir1'' kopiert werden kann? | ||
---- | ---- | ||
- | Welche Berechtigungen müssen jeweils bei ''/tmp/dir1'', ''/tmp/dir2'' und ''file1'' hinzugefügt werden, damit ''file1'' mit | + | Welche Berechtigungen müssen jeweils bei ''/tmp/dir1'', ''/tmp/dir2'' und ''file2'' hinzugefügt werden, damit ''file2'' mit |
- | mv /tmp/dir1/file1 /tmp/dir2/ | + | mv /tmp/dir1/file2 /tmp/dir2/file3 |
ins Verzeichnis ''dir2'' verschoben werden kann? | ins Verzeichnis ''dir2'' verschoben werden kann? | ||
Zeile 19: | Zeile 19: | ||
Welche ''umask'' muss man setzen, damit neu angelegte | Welche ''umask'' muss man setzen, damit neu angelegte | ||
- | * Dateien die Berechtigung ''rw- r-- -w-'' und | + | * Dateien die Berechtigung ''%%rw- r-- -w-%%'' und |
* Verzeichnisse die Berechtigung ''rwx r-x -w-'' | * Verzeichnisse die Berechtigung ''rwx r-x -w-'' | ||
bekommen. | bekommen. | ||
Zeile 95: | Zeile 95: | ||
====== Übung: Weniger Rechte für Eigentümer und Gruppe ====== | ====== Übung: Weniger Rechte für Eigentümer und Gruppe ====== | ||
- | ''/tmp/datei356'' : | + | Erzeuge eine Datei ''/tmp/datei356'' mit folgendem Inhalt: |
- | <file> | + | <file txt /tmp/datei356> |
#!/bin/bash | #!/bin/bash | ||
echo executable | echo executable | ||
</file> | </file> | ||
+ | |||
+ | Setze die Berechtigungen zu ''356'': | ||
chmod 356 /tmp/datei356 | chmod 356 /tmp/datei356 | ||
Zeile 107: | Zeile 109: | ||
^ Besitzer| ''_'' ''_'' ''_'' | ''_'' ''_'' ''_'' | | ^ Besitzer| ''_'' ''_'' ''_'' | ''_'' ''_'' ''_'' | | ||
^ nicht Besitzer| ''_'' ''_'' ''_'' | ''_'' ''_'' ''_'' | | ^ nicht Besitzer| ''_'' ''_'' ''_'' | ''_'' ''_'' ''_'' | | ||
+ | |||
+ | Tip: | ||
+ | Das Schreiben von Dateien kann man zerstörungsfrei mit | ||
+ | >> /tmp/datei356 | ||
+ | testen. | ||
+ | Das Lesen von Dateien kann man mit | ||
+ | tail /tmp/datei356 | ||
+ | testen. | ||
+ | |||
+ | (( | ||
+ | sysctl fs.protected_regular | ||
+ | <file> | ||
+ | fs.protected_regular = 2 | ||
+ | </file> | ||
+ | |||
+ | https://www.kernel.org/doc/Documentation/sysctl/fs.txt: | ||
+ | //This protection is similar to protected_fifos, but it | ||
+ | avoids writes to an attacker-controlled regular file, where a program | ||
+ | expected to create one. | ||
+ | |||
+ | When set to "0", writing to regular files is unrestricted. | ||
+ | |||
+ | When set to "1" don't allow O_CREAT open on regular files that we | ||
+ | don't own in world writable sticky directories, unless they are | ||
+ | owned by the owner of the directory. | ||
+ | |||
+ | When set to "2" it also applies to group writable sticky directories.// | ||
+ | |||
+ | )) | ||
+ | |||
====== Beispiel: Gruppenzugehörigkeiten kleben am Prozess länger als man denkt ====== | ====== Beispiel: Gruppenzugehörigkeiten kleben am Prozess länger als man denkt ====== | ||
groupadd projekt | groupadd projekt | ||
Zeile 128: | Zeile 160: | ||
useradd -m raumpflege | useradd -m raumpflege | ||
ls -l /home | ls -l /home | ||
+ | |||
+ | ====== Beispiel: SUID-Bit Dateien finden und SUID-Bit dauerhaft entfernen ====== | ||
+ | SUID-Bit Dateien finden (als root): | ||
+ | |||
+ | find / /boot -xdev -perm /u+s -type f -user root -ls | ||
+ | |||
+ | SUID-Bit dauerhaft entfernen: | ||
+ | Ubuntu / Debian: | ||
+ | dpkg-statoverride --update --add root root 0755 /bin/ping | ||
====== Beispiel: Auswirkung von mount-Optionen ====== | ====== Beispiel: Auswirkung von mount-Optionen ====== |