(Bild: Shmuel Csaba Otto Traian, CC BY-SA 3.0 )
Ein vergleichsweise harmloses Sicherheitsproblem eskaliert: Die Verwendung von Benutzernamen mit führenden Ziffern könnte zu einer unerwünschten Rechte-Ausweitung führen – und die Entwickler werden das nicht ändern.
Der Dienste-Manager systemd erlaubt es, Services statt mit Root-Rechten mit den reduzierten Rechten eines Anwenders zu starten. Kommt dabei jedoch ein Benutzername wie ‚0day‘ zum Einsatz, der mit einer Ziffer anfängt, wird der fragliche Dienst statt mit eingeschränkten Rechten mit denen des Systemverwalters gestartet. Für diesen Sachverhalt eröffnete letzte Woche ein User mit dem Handle mapleray einen Bug-Report, der jetzt heftig diskutiert wird.
Die systemd-Entwickler ziehen sich auf den Standpunkt zurück, dass sich ihr Meta-Dienst korrekt verhält und es somit auch keinen Fix geben wird ? den Bug-Report bei systemd haben sie mit „not-a-bug“ geschlossen. Demnach müssen Linux-Benutzernamen mit einem Buchstaben beginnen. Findet systemd einen User-Eintrag vor, der wie ‚0day‘ mit einer Ziffer beginnt, wird dieser ignoriert und der Dienst mit den standardmäßig vorgesehenen Root-Rechten gestartet. Daraus entspann sich eine hitzige Diskussion, ob diese Benutzernamen tatsächlich verboten sind und ob es nicht andere, sinnvollere Möglichkeiten gäbe, mit ihnen umzugehen. Offenbar wurde diese Diskussion von dem immer noch vorhandene Unmut befeuert über die Einführung von systemd bei allen großen Linux-Distributionen einschließlich Debian.
Risikoanalyse
Die Entscheidung, diesen Sachverhalt nicht zu ändern, erscheint auf den ersten Blick gefährlich. Bei genauerer Betrachtung relativiert sich die Gefahreneinstufung jedoch. Denn ein eingeschränkter Nutzer kann weder einen passenden Nutzer-Account einrichten, noch eine systemd-Service-Datei mit dessen Namen anlegen. Beides erfordert bereits Admin-Rechte. Es ist somit auf herkömmlichen Linux-Systemen sehr unwahrscheinlich, dass ein Angreifer diesen Sachverhalt gezielt ausnutzen kann, um seine Rechte zu erhöhen.
Das einzige Szenario, in dem das überhaupt zu Problemen führt, ist jenes, dass ein Admin selbst einen solchen Nutzer angelegt hat, um einen Dienst mit eingeschränkten Rechten zu starten. Der läuft dann nämlich mit Root-Rechten. Gelingt es einem Angreifer, diesen Dienst zu kompromittieren, hat er diese Rechte ebenfalls. Admins sollten also vorsichtshalber einen Blick auf ihre Benutzerdatenbank werfen und nach Namen suchen, die mit Ziffern beginnen.
Gut getrollt
By the way: Ein offenbar zum Scherzen aufgelegter OpenBSD-Fan hat einen Patch vorgeschlagen, der das umstrittene systemd-Verhalten für das OpenBSD-Tool doas einführt. doas ist sozusagen eine OpnBSD-Version des Linux-Tools sudo, mit dem man Programme unter einer anderen User-ID starten kann. (ju)