Sono interessato a come SELinux influenza l'elaborazione dei pacchetti attraverso lo stack di rete. Ho trovato le seguenti domande e risposte:
Criteri di rete in AppArmor / SELinux
Filtraggio dell'accesso alla rete su base utente / gruppo / processo
Il primo sembra implicare che SELinux possa taggare i pacchetti (un po 'come le VLAN di tagging), e l'elaborazione può essere diversa a seconda dei tag associati ai pacchetti. Questo ha senso per me. Tuttavia, la seconda domanda riguarda l'accesso alla rete tramite gruppi di utenti e controlli di accesso. Non è chiaro in base alla risposta e ai commenti se questo è vero o come è possibile.
Durante la lettura del codice sorgente del Kernel Linux (2.6.16, so che è vecchio ma molti dispositivi incorporati usano ancora il 2.6), si incontra il file /security/selinux/hooks.c
. Questo ha funzioni come selinux_parse_skb_ipv4, selinux_socket_create, selinux_socket_bind, etc
.
Le mie domande sono:
- Qualcuno può chiarire la seconda domanda? O rispondendo effettivamente a questa domanda o rispondendo qui.
- SELinux influenza lo stack di rete in altri modi?
- Con funzioni come quelle sopra elencate, SELinux è usato per creare il concetto astratto di "presa sicura"? Molto simile alla API di Windows fornisce chiamate di funzione a creare "socket sicuri".