[linux-l] SELinux unter BSD? (war: [flamewar]...welche Distri)
Peter Ross
Peter.Ross at alumni.tu-berlin.de
Mo Jul 17 02:36:28 CEST 2006
Hi Volker,
On Sun, 16 Jul 2006, Volker Grabsch wrote:
> Ich denke da nur an das VServer-System unter Linux, das ich einsetze.
> Wirklich nette Sache, aber überraschenderweise stellte ich fest, dass
> es das in BSD unter dem Namen "jail" schon lange gibt.
Ja. Und dank der Installations- und Updatemechanismen lassen sich jails
auch recht einfach kreieren und konfigurieren.
> Also, um das ganze in eine Frage zu gießen: Gibt's nichts in BSD, das
> (wenn auch in einfacher Form) das Leistungs-Spektrum von SELinux in
> Sachen Sicherheit abdeckt?
Mir hat sich die Schoenheit von SELinux noch nicht richtig erschlossen.
Moeglicherweise eine Zeitfrage. Derzeit ist es so, dass mir SELinux einige
Merkwuerdigkeiten beschert hat, so dass es auf allen Red Hat-Servern
abgestellt ist.
Was mir daran _nicht_ gefaellt: es ist ein Rollenmodell. Es erinnert mich
sehr an Windows-Sicherheitskonzepte. Mit Richtlinien und ACLs laesst sich
eine ganze Menge anstellen, aber es ist so komplex, dass sich kaum
verifizieren laesst, ob man das System wirklich abgedichtet hat. Es gibt
immer wieder einen "Workaround".
FreeBSD kennt securelevel, beschrieben in init(8)
http://www.freebsd.org/cgi/man.cgi?query=init&apropos=0&sektion=0&manpath=FreeBSD+6.1-RELEASE&format=html
The security levels are:
-1 Permanently insecure mode - always run the system in level 0 mode.
This is the default initial value.
0 Insecure mode - immutable and append-only flags may be turned off.
All devices may be read or written subject to their permissions.
1 Secure mode - the system immutable and system append-only flags may
not be turned off; disks for mounted file systems, /dev/mem,
/dev/kmem and /dev/io (if your platform has it) may not be opened
for writing; kernel modules (see kld(4)) may not be loaded or
unloaded.
2 Highly secure mode - same as secure mode, plus disks may not be
opened for writing (except by mount(2)) whether mounted or not.
This level precludes tampering with file systems by unmounting
them, but also inhibits running newfs(8) while the system is multi-
user.
In addition, kernel time changes are restricted to less than or
equal to one second. Attempts to change the time by more than this
will log the message ``Time adjustment clamped to +1 second''.
3 Network secure mode - same as highly secure mode, plus IP packet
filter rules (see ipfw(8), ipfirewall(4) and pfctl(8)) cannot be
changed and dummynet(4) or pf(4) configuration cannot be adjusted.
Das ist wesentlich einfacher zu handhaben. Der Securelevel wird am Ende
eines Bootprozesses hochgesetzt (hinabstufen ist nicht moeglich).
Der Sinn dahinter: ein eingerichtetes Serversystem braucht nicht mehr
veraendert werden, und wenn ja, dann nur im Single-User-Mode, welches
Konsolenzugriff bedingt (der hoffentlich sicher ist;-)
Nachteil: es muss rebootet werden (deshalb, wenn noetig, Redundancy, bis
hin auf Verbindungsebene mit pfsync:-)
Andererseits ist es praktisch das Ende von Rootkits und dem ungeschuetzten
Walten in den Konfigs, wenn das Hacken erfolgreich war.
Es ist nicht die gleiche Funktionalitaet wie SELinux, deckt sich aber in
diesem Anspruch mit ihm.
Es gibt ein TrustedBSD-Projekt, (http://www.trustedbsd.org/) welches u.a.
auch SEBSD implementiert, ACLs, extented attributes nutzt, ein
Audit-Subsystem etc. Soweit ich weiss, fliesst das langsam in FreeBSD ein,
und mit Apple als Sponsor (und SEDarwin) darf man annehmen, dass auch Mac
OSX davon profitiert.
Wenn man innovative Sicherheitskonzepte anschauen moechte, lohnt sich
sicher auch ein Blick auf Solaris (uebrigens auch auf das ZFS, wenn's um
Filesysteme geht.) Trusted Solaris hat auch schon ein paar Jaehrchen auf
dem Buckel und ist inzwischen Teil des Standard-Solaris. U.a. auch mit
einem Rollenmodell.
Ich bedaure, derzeit nicht so viel Zeit zu haben, um das alles genau zu
erforschen..
Um ehrlich zu sein, es gibt unter Linux bis jetzt fast nichts, was
wirklich innovativ ist. Es ist allermeist Re-Erfindung. Wenn's gut ist,
dann so gut wie die Japaner - das Beste von ueberall zusammenfuehren:-)
Es gruesst
Peter
Mehr Informationen über die Mailingliste linux-l