Forum

setuid - Noch eine Schwachstelle?
Januar 22, 2007, 21:39:13
Da Unix und die Shell für mich eher unverständlich sind, kann ich diesen Bericht nicht beurteilen. Eventuell können da Entwickler etwas zu sagen, oder unsere Unix-Cracks.

setuid Problem im OSX

mbs

Re: setuid - Noch eine Schwachstelle?
Antwort #1: Januar 23, 2007, 10:08:39
Die angesprochene Sicherheitslücke ermöglicht es, dass ein Benutzer, der Administrator ist, root-Rechte (also alle Rechte, die es gibt) erlangen kann, ohne dass hierbei die übliche Sicherheitsabfrage "Geben Sie Ihr Kennwort ein, um an 'Systemeinstellungen' Änderungen vorzunehmen." angezeigt wird.

Die Art und Weise wie diese Lücke zustande kommt, ist ein peinlicher Architekturfehler, der bei Leuten, die sicherheitsbewusst programmieren, eigentlich nicht vorkommen darf. Die Lücke kann aber in der Praxis nur schwierig ausgenutzt werden.

Zur Funktionsweise: Das Programm "Systemeinstellungen" ist in der Lage, bestimmte Vorgänge auszuführen, die sicherheitskritisch sind. Beispielsweise darf es Systemdienste für alle Benutzer starten oder die Uhrzeit einstellen. Diese Funktionen werden durch die Sicherheitsarchitektur von Mac OS X geschützt und lassen sich normalerweise nur von einem Administrator mit zusätzlicher Eingabe des Kennworts freischalten. Ist dies erfolgt, dann hat eine überwachte Hilfskomponente von "Systemeinstellungen" 5 Minuten lang das Recht, "alles" ohne weitere Sicherheitsprüfung zu tun. Diese Hilfskomponente ruft ein anderes Hilfsprogramm auf, dass dann wiederum Systemdienste mit "allen" Rechten starten darf.

Der Fehler liegt nun darin, dass das zweite Hilfsprogramm, die Dienste, die es aufruft, nur nach ihrem Namen identifiziert, nicht nach ihrem tatsächlichen Speicherort. (Es sagt also zum Beispiel: "Starte den Dienst 'Personal File Sharing' durch Aufruf des Programms 'AppleFileServer'". Richtig wäre: "Start den Dienst 'Personal File Sharing' durch Aufruf des Programms 'AppleFileServer', das im geschützten Ordner /usr/sbin abgespeichert sein muss.")

Ein Angreifer kann nun ein Fremdprogramm einschleusen, das genauso heißt, wie ein Dienst, der vom zweiten Hilfsprogramm aufgerufen wird und das System würde fälschlicherweise das andere Programm starten. Dieses Fremdprogramm würde danach mit "allen" Rechten laufen, kann also beliebigen Unsinn anstellen.

Kurz zusammengefasst: Die Sicherheitslücke ist, dass das Programm "Systemeinstellungen" ein Programm mit höchsten Sicherheitsprivilegien aufruft, das ein Programm aufruft, das danach Programme aufruft, ohne vorher deren Speicherort zu prüfen. Zur Korrektur des Fehlers muss einfach eine solche Prüfung eingebaut werden.
Re: setuid - Noch eine Schwachstelle?
Antwort #2: Januar 23, 2007, 10:25:30
Puh, da scheint ja  Month of Apple Bugs ganze Arbeit zu leisten. Ich verliere allmählich den Überblick.
Re: setuid - Noch eine Schwachstelle?
Antwort #3: Januar 23, 2007, 12:31:19
Puh, da scheint ja  Month of Apple Bugs ganze Arbeit zu leisten. Ich verliere allmählich den Überblick.

Hoffen wir mal, dass es nicht zum "Year of Apple Bugs" erweiteret wird.

Jochen
_______
Wenn Du es eilig hast, gehe langsam.

mbs

Re: setuid - Noch eine Schwachstelle?
Antwort #4: Januar 23, 2007, 13:11:33
Zitat
Ich verliere allmählich den Überblick.

Den richtigen Überblick gibt's hier: http://projects.info-pull.com/moab/  ;)

Zitat
Hoffen wir mal, dass es nicht zum "Year of Apple Bugs" erweiteret wird.

Warum sollten wir das hoffen? Jede Veröffentlichung zwingt die Hersteller dazu, die Software-Fehler zu beheben und damit die Produkte sicherer zu machen. Kann also nur in unserem Sinne sein.
Re: setuid - Noch eine Schwachstelle?
Antwort #5: Januar 23, 2007, 13:20:01
Kurz zusammengefasst: Die Sicherheitslücke ist, dass das Programm "Systemeinstellungen" ein Programm mit höchsten Sicherheitsprivilegien aufruft, das ein Programm aufruft, das danach Programme aufruft, ohne vorher deren Speicherort zu prüfen. Zur Korrektur des Fehlers muss einfach eine solche Prüfung eingebaut werden.

Die Sicherheitslücke ist aber nur dann ausnutzbar, wenn die Systemeinstellungen geöffnet sind und in dem letzten 5 Minuten das Admin-Paßwort eingegeben wurde? Zusätzlich muß ein Programm eingeschleust worden sein, daß den Namen eines Systemdienstes hat?

Hoffen wir mal, dass es nicht zum "Year of Apple Bugs" erweiteret wird.

Ich sehe das wie mbs. Das ist prinzipiell ganz in unserem Sinne. Besser eine öffentliche Sicherheitslücke, die den Hersteller zwingt, sie zu beheben, als eine geheimgehaltene, die nicht behoben wird und von irgendwelchen Leuten ausgenutzt wird.
Trotzdem bin ich von MOAB etwas "enttäuscht". Ich hatte da mehr und kritischeres erwartet. Einige waren ja noch nicht mal Fehler in Apple Software (z.B. VLC, Rumpus) oder es waren uralte Sachen (AppleTalk), was den Fehler natürlich auch nicht besser macht. Bei dem Tamtam hätte ich mehr systemeigene und kritische Probleme erwartet. Und dann setzen die noch auf Software (APE), die selber Ärger macht...
_______
Was ist die Mehrheit? Mehrheit ist der Unsinn, Verstand ist stets bei wen´gen nur gewesen." -- Schiller
Re: setuid - Noch eine Schwachstelle?
Antwort #6: Januar 23, 2007, 13:33:18
Naja, mein "Year of Apple Bugs" war ja etwas ironisch gemeint.

Inwieweit mit diesen Veröffentlichungen Apple gezwungen wird etwas zu tun ?

Ich lernte auch hier im Forum, dass es ein Haufen von Fehlern im OS gibt, die Apple bisher nicht bereinigte.
Inwieweit da auch sicherheitstechnisch relevante drunter sind, entzieht sich meiner Kenntnis.

Ich denke immer an der gemeinen WIN user, der durch solche Meldungen - die ja auch unkommentiert in allen möglichen Gazetten auftauchen - verschreckt wird, in seiner Meinung bestätigt wird.

Apple ist ja auch nicht besser als MS.

Jochen
_______
Wenn Du es eilig hast, gehe langsam.

mbs

Re: setuid - Noch eine Schwachstelle?
Antwort #7: Januar 23, 2007, 13:35:09
Zitat
Die Sicherheitslücke ist aber nur dann ausnutzbar, wenn die Systemeinstellungen geöffnet sind und in dem letzten 5 Minuten das Admin-Paßwort eingegeben wurde?

Jein. Ich könnte mir vorstellen, dass man das auch ohne "Systemeinstellungen" machen kann. Nach meinen jetzigen Kenntnissen wäre es in dem Fall aber tatsächlich so, dass doch das Bestätigungsfenster "Geben Sie Ihr Kennwort ein, um an 'x' Änderungen vorzunehmen." 5 Minuten vorher beantwortet werden muss.

MOAB behauptet das Gegenteil, aber ich glaube, sie haben dabei übersehen, dass das Programm "writeconfig" durch Apples Security-Framework geschützt wird. Es läuft nur, wenn es von einem anderen Programm ein verschlüsseltes Security-Token erhält, das nur von einem Administrator erstellt worden sein kann.

Zitat
Zusätzlich muß ein Programm eingeschleust worden sein, daß den Namen eines Systemdienstes hat?

Ja, aber das könnte ein lokaler Nicht-Administrator ja machen.

Zitat
Und dann setzen die noch auf Software (APE), die selber Ärger macht...

Ähm, waren das nicht die Leute, die versucht haben, jeden Tag einen Fix gegen die MOA-Bugs zu veröffentlichen? Aber Du hast Recht: Dafür APE zu nehmen, wird mehr schaden als es nutzt...
« Letzte Änderung: Januar 23, 2007, 14:00:09 von mbs »

Florian

  • Zurück in der Zukunft
Re: setuid - Noch eine Schwachstelle?
Antwort #8: Januar 23, 2007, 13:42:04
Kritisch an MOAB finde ich eher, daß sie es offensichtlich nicht für nötig halten, die Entwickler vor Veröffentlichung zu informieren. Nur um ständig neue Meldungen zu haben?
Zumindest Omni behauptet jedenfalls, nie kontaktiert worden zu sein.

Nun mag es sein, daß Apple selbst auf solche Meldungen erst immer sehr spät oder gar nicht reagiert. Den Drittentwickler sollte man aber schon die Chance geben.
_______
"If music be the food of love, play on!”
                         William Shakespeare

mbs

Re: setuid - Noch eine Schwachstelle?
Antwort #9: Januar 23, 2007, 13:46:00
Zitat
Ich denke immer an der gemeinen WIN user, der durch solche Meldungen - die ja auch unkommentiert in allen möglichen Gazetten auftauchen - verschreckt wird, in seiner Meinung bestätigt wird.
Apple ist ja auch nicht besser als MS.

Naja, aber die "Angst vor der Dummheit des Mobs" ;) darf nicht dazu führen, dass Produktmängel vertuscht werden.

Die Omnigroup und das VLC-Projekt haben gezeigt, wie man's macht: Die haben "ihre" Sicherheitslücken innerhalb von 24 Stunden behoben.

Zitat
Kritisch an MOAB finde ich eher, daß sie es offensichtlich nicht für nötig halten, die Entwickler vor Veröffentlichung zu informieren.

Ja, das stimmt. Das entspricht nicht den üblichen Gepflogenheiten. Es gab auch noch weitere Vorkommnisse, die dazu geführt haben, dass das MOAB-Projekt als "unseriös" dasteht. Trotzdem machen die auf ihre Kosten ;) Arbeit, die uns letztendlich nützen wird.
Re: setuid - Noch eine Schwachstelle?
Antwort #10: Februar 01, 2007, 18:49:15

Florian

  • Zurück in der Zukunft
Re: setuid - Noch eine Schwachstelle?
Antwort #11: Februar 01, 2007, 19:03:26
Puh, "An solch elementaren Fehlern zeigt sich, dass Mac OS X nicht ernsthaft als Multiuser-System konzipiert wurde und die Abschottung der Benutzerkonten gegeneinander offenbar kein wichtiges Design-Ziel war."

Jetzt kommen dort die Heise-Trolle aus den Löchern. :) In den Kommentaren, meine ich, nicht den Artikel.

Nun, aber wie steht's? Kann man das wirklich so behaupten? Kann Apple da Abhilfe schaffen oder wird das jetzt eine Flickenschusterei wie im Hause Microsoft, oder gar noch schlimmer?
_______
"If music be the food of love, play on!”
                         William Shakespeare

mbs

Re: setuid - Noch eine Schwachstelle?
Antwort #12: Februar 01, 2007, 19:39:14
Zitat
Kann man das wirklich so behaupten?

Naja, es ist sehr hart und provokativ formuliert. Ich bin da hin- und hergerissen. "Dass Mac OS X nicht ernsthaft als Multiuser-System konzipiert wurde", ist natürlich so nicht richtig. Andererseits muss man vielleicht zu solchen Formulierungen greifen, um Apples übliche Arroganz etwas auszubremsen.

Dass in Mac OS X ein Benutzer, der nicht Administrator ist, per Apfel-Menü den Rechner ausschalten darf, halte ich z.B. auch für einen groben Sicherheitsfehler. Klassische Apple-User sind da ganz anderer Meinung...

Zitat
Kann Apple da Abhilfe schaffen oder wird das jetzt eine Flickenschusterei wie im Hause Microsoft, oder gar noch schlimmer?

Es dürfte recht leicht sein, die Fehler zu beheben. Anders als bei Windows haben sich bisher keine architekturellen Schwächen gezeigt, sondern nur kleine Ausführungsmängel.
Re: setuid - Noch eine Schwachstelle?
Antwort #13: Februar 01, 2007, 22:22:56
....Es dürfte recht leicht sein, die Fehler zu beheben. Anders als bei Windows haben sich bisher keine architekturellen Schwächen gezeigt, sondern nur kleine Ausführungsmängel....

Das Fundament, die Wände und das Dach sind in Ordnung, nur die Fenster schliessen nicht ganz dicht  ;D ;D ;D

Jochen
_______
Wenn Du es eilig hast, gehe langsam.
Re: setuid - Noch eine Schwachstelle?
Antwort #14: Februar 02, 2007, 10:55:43
I asked 14 security researchers what they thought about the “Month of XXX Bugs” (MOXB) phenomenon:
http://www.matasano.com/log/676/month-of-xxx-bugs-pro-or-con-an-informal-survey/