Experte: Linux-Capabilities sind kein Sicherheitsgewinn

Nach Meinung eines Sicherheitsspezialisten lassen sich die meisten der Capabilities missbrauchen, um nach einem Einbruch in ein System trotzdem die Kontrolle zu erhalten.

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Daniel Bachfeld

Der Entwickler des Grsecurity-Projekts, Brad Spengler, hat kritisiert, dass der Großteil der unter Linux implementierten Capabilities erhebliches Potenzial aufweist, um ein System zu kompromittieren oder anderweitig Schindluder zu treiben.

Capabilities sollen eigentlich genau so etwas unterbinden, indem sie Diensten und Prozessen nur bestimmte Operationen mit bestimmten Resourcen erlauben. Das soll unter anderem die Auswirkung von erfolgreichen Angriffen verringern. Ein Exploit für ein Office-Tool kann so beispielsweise keine Backdoor installieren, weil dem Office-Tool die Capabilities zum Binden von Diensten an Netzwerkports fehlen. Daneben können Capabilities auch den Einsatz von SUID überflüssig machen – Ubuntu und Fedora haben das bereits ins Auge gefasst. OpenWall will diesen Ansatz sogar bereits in der Ende Dezember erschienenen Version 3.0 verwirklicht haben: In der Standardinstallation soll kein einziges SUID-Programm enthalten sein.

Spengler, der mit seinem Projekt grsecurity ein rollenbasiertes Zugriffssystem favorisiert, hat 35 der unter Linux verfügbaren Capabilities daraufhin untersucht, was sich bei einem Angriff mit ihnen anstellen ließe. 21 haben nach seiner Schilderung durchaus Potenzial, nach einem Einbruch in einen Dienst trotzdem Rechte ausbauen oder das System anderweitig manipulieren zu können.

Unter anderem lässt CAP_SYS_ADMIN das Unmounten und Mounten von Dateisystem zu, durch das ein Angreifer sein eigenes Dateisystem über das originale legen könnte und auf diese Weise Programme gegen eigene austauschen könnte. CAP_NET_ADMIN erlaubt es laut Spengler, die Firewall für Paketweiterleitungen zu konfigurieren. Ein Angreifer könnte so auf dem System SSH-Verbindungen auf einen eigenen Server umbiegen und dort Logins mitprotokollieren und für spätere Anmeldungen benutzen.

Auf lwn.net gehen derweil die Meinungen auseinander, ob es sich um konstruierte Szenarien handelt. So würden viele der geschilderten Angriffe nur unter speziellen Randbedingungen funktionieren. Einige werfen Spengler gar vor, Capabilities schlecht machen zu wollen, um Anwender zu erschrecken und zum Einsatz seiner grsecurity-Lösung zu bewegen.

Unterdessen hat Dan Rosenberg auf der Mailing-Liste Full Disclosure einen lokalen Root-Exploit veröffentlicht. In Kombination eines Fehlers im Phonet-Protokoll mit CAP_SYS_ADMIN öffnet der Exploit lokal eine Root-Shell. Der Exploit soll aber nur auf 32-Bit-System mit besonderen Vorgaben laufen – Ubuntu 10.10 soll dazu gehören.

(dab)