SELinux Policy: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 22: | Zeile 22: | ||
<!-----> | <!-----> | ||
| − | <span id=" | + | <span id="allow-regeln-und-domänentranstion-anhand-von-user_t-und-dem-ping-programm"></span> |
| − | = | + | = allow-Regeln und Domänentranstion anhand von ''user_t'' und dem ping-Programm = |
<span id="welche-programme-darf-user_t-ausführen"></span> | <span id="welche-programme-darf-user_t-ausführen"></span> | ||
| Zeile 45: | Zeile 45: | ||
<!-----> | <!-----> | ||
allow user_t ping_exec_t:file { execute getattr ioctl map open read }; [ user_ping ]:True | allow user_t ping_exec_t:file { execute getattr ioctl map open read }; [ user_ping ]:True | ||
| + | <span id="domänentransition"></span> | ||
| + | == Domänentransition == | ||
| + | |||
| + | * Für eine Domänentransition muss der Übergang definiert und explicit erlaubt werden | ||
| + | * sesearch -s user_t -t ping_exec_t -T | ||
| + | |||
| + | <!-----> | ||
| + | type_transition user_t ping_exec_t:process ping_t; [ user_ping ]:True | ||
| + | * sesearch -s user_t -t ping_t -p transition --allow | ||
| + | |||
| + | <!-----> | ||
| + | allow user_t ping_t:process transition; [ user_ping ]:True | ||
Version vom 9. Januar 2023, 13:54 Uhr
Regelstruktur
- sesearch -t ping_t -c tcp_socket --allow -dt
- Attribute werden benutzt, um Typen zu gruppieren.
- Attribute wirken sich nicht direkt auf Berechtigungen aus, sondern entscheiden über Dinge wie File- und Portlabeling
- Klassen werden in allow/disallow Regeln bestimmten Typen zugeordnet
- Klassen fassen Berechtigungen zusammen
Regeln suchen
- mit sesearch können SELinux-Regeln gesucht werden
- suchbare Felder sind Quell (-s)-/Zieltypen (-t), Objektklasse (-c), Berechtigungen (-p) und mit der Regel assoziierte Booleans (-b)
- mit -ds und -dt wird explizit nach dem Namen des jeweiligen Quell- und Zieltyp gesucht, statt nur nach passenden Attributen zu matchen
- Man muss angeben, ob man nach allow-Regeln (--allow) oder nach Typentransitionsregeln (-T) sucht
allow-Regeln und Domänentranstion anhand von user_t und dem ping-Programm
Welche Programme darf user_t ausführen?
- sesearch -s user_t -p execute --allow -ds | head
allow user_t application_exec_type:file { execute execute_no_trans getattr ioctl lock map open read };
allow user_t bin_t:file { entrypoint execute execute_no_trans getattr ioctl lock map open read };
allow user_t bluetooth_helper_exec_t:file { execute getattr ioctl map open read };
allow user_t cdrecord_exec_t:file { execute getattr ioctl map open read };
allow user_t checkpolicy_exec_t:file { execute execute_no_trans getattr ioctl lock map open read };
allow user_t chfn_exec_t:file { execute getattr ioctl map open read };
allow user_t chkpwd_exec_t:file { execute getattr ioctl map open read };
allow user_t chromium_exec_t:file { execute getattr ioctl map open read };
allow user_t chroot_exec_t:file { execute execute_no_trans getattr ioctl lock map open read };
allow user_t cifs_t:file { execute execute_no_trans getattr ioctl map open read }; [ use_samba_home_dirs ]:True
- sesearch -s user_t -p execute --allow -ds | grep ping_
allow user_t ping_exec_t:file { execute getattr ioctl map open read }; [ user_ping ]:True
Domänentransition
- Für eine Domänentransition muss der Übergang definiert und explicit erlaubt werden
- sesearch -s user_t -t ping_exec_t -T
type_transition user_t ping_exec_t:process ping_t; [ user_ping ]:True
- sesearch -s user_t -t ping_t -p transition --allow
allow user_t ping_t:process transition; [ user_ping ]:True
