Um zu zeigen, dass sich nicht nur Systemprogramme, sondern auch Userprogramme mit Capsicum absichern lassen, wurde von Google der Webbrowser Chromium an die neue Umgebung angepasst. Googles Chromium erzeugt beim Start mehrere Prozesse, denen Aufgaben wie Verarbeiten von HMTL-Code, JavaScript und Verschlüsselung von Daten zufallen. Der ursprüngliche FreeBSD-Port des Webbrowsers enthielt keinerlei Sicherheitsmerkmale wie Sandboxing.
Dass das Programm bereits in logische Abschnitte unterteilt ist (Stichwort: Compartmentalisation), erleichtert die Anpassung an die Capsicum-Umgebung von FreeBSD erheblich. Der Subprozess, der die grafische Darstellung der Webseite übernimmt, erhält besondere Berechtigungen, um mit dem Grafiksystem von X.org zu kommunizieren. Geschützte Speicherbereiche dienen zum Transport von Daten zwischen den einzelnen Subprozessen. Subprozesse zur Kompilierung von Javascript, HTML und XML haben keinen Zugriff auf Speicherbereiche außerhalb der Sandbox. Obwohl der Code-Umfang von Chromium gewaltig ist – man spricht von 4,3 Millionen Zeilen Code – erfolgte die Implementierung von Capsicum mit circa einhundert Zeilen nahezu reibungslos. Will man beispielsweise unter Windows die gleiche Sicherheit erreichen, sind mehr als 23 000 Zeilen Code nötig ( [8] ). Auch hat der Entwickler der GNUStep-Desktop-Suite bereits angekündigt, Capsicum in den Anwendungen einzusetzen.
Mit FreeBSD 9 haben die Entwickler den Sicherheitsmechanismus Capsicum eingeführt. Der volle Umfang der Capsicum-Funktionalität wird ab FreeBSD 10 zur Verfügung stehen. Alle sicherheitskritischen Systemprogramme werden dann das neue Framework nutzen. Zusätzlich werden möglicherweise weitere Applikationen wie Apache an die neue FreeBSD-Umgebung angepasst sein. So möchten einige Entwickler von GNUStep-Anwendungen diese an FreeBSD-Capsicum anpassen. Es wurde bereits von KDE-Maintainern angekündigt, Capsicum in KDE zu implementieren. Man darf daher gespannt sein, was die Zukunft für Capsicum bringen wird.
Infos