sysjail: Sicherheit die keine ist, oder, system call wrapper sind schlecht

Könnte man unter FreeBSD die Jails als "chroot auf Steroiden" bezeichnen (welche beim Dopingtest nicht aufgefallen wären), so sind die jails unter OpenBSD bei der A und B Probe durchgefallen. Die vermeintlich gewonnene Sicherheit ist leider keine. 

sysjail unter OpenBSD basiert auf systrace. Prinzpiell könnte sysjail daher auch jedem System aktiviert werden welches systrace unterstützt. Dies wären beispielsweise noch NetBSD und MirOS.

Bei systrace handelt es sich im weiteres Sicherheitsfeature welches weit über die Benutzerrechte oder Securelevel heinausgeht. Mit systrace ist es möglich Systamaufrufe von Programmen explizit zu kontrollieren und diese zuzulassen oder unter Umständen auch zu verbieten. Dies machen sich die sysjails unter OpenBSD auch zu eigen.

Nun hat Robert N. M. Watson aber herausgefunden, das diese Implemtierung Schwächen aufweist. Neben systrace werden dabei auch exploit Techniken gegen GSWTK und CerbNG aufgezeigt.

In seinem Workshop Paper auf der USENIX 07 kann dies nachgelesen werden. Bei der Präsentation geht er dabei noch auf die Exploits im speziellen ein.

Robert N.M. Watson sagt auch dazu:

The moral, for those unwilling to read the paper, is that system call
wrappers are a bad idea, unless of course, you’re willing to rewrite
the OS to be message-passing. Systems like the TrustedBSD MAC Framework on FreeBSD and Mac OS X Leopard, Linux Security Modules (LSM), Apple’s (and now also NetBSD’s) kauth(9),
and other tightly integrated kernel security frameworks offer specific
solutions to these concurrency problems. There’s plenty more to be done
in that area.




Trackbacks

    Keine Trackbacks

Kommentare

Ansicht der Kommentare: (Linear | Verschachtelt)

    Noch keine Kommentare


Kommentar schreiben


Standard-Text Smilies wie :-) und ;-) werden zu Bildern konvertiert.
Umschließende Sterne heben ein Wort hervor (*wort*), per _wort_ kann ein Wort unterstrichen werden.