You are here: Home » Aktuelle Meldungen » Meldung
Sorry, this page is not translated yet.
Meldung Nr: RUS-CERT-1151

[Sun/Solaris] Unsichere Voreinstellung für sadmind - Angriffe erfolgen
(2003-09-26 13:38:14.229257+00) Druckversion

Quelle: http://sunsolve.sun.com/pub-cgi/retrieve.pl?doc=fsalert%2F56740&zone_32=56740

Die voreingestellten Sicherheitsoptionen des Solaris-Administrations-Daemons sadmind ermöglichen Angreifern lokal oder über eine Netzwerkverbindung die unautorisierte Ausführung administrativer Kommandos mit root-Privilegien. Neue Angriffsprogramme zur Ausnutzung dieser Schwachstelle kursieren.

Betroffene Systeme

  • Sparc-Plattform
    • Solaris 7 und Trusted Solaris 7
    • Solaris 8 und Trusted Solaris 8
    • Solaris 9
  • x86-Plattform
    • Solaris 7 und Trusted Solaris 7
    • Solaris 8 und Trusted Solaris 8
    • Solaris 9

Einfallstor
Speziell formulierte RPC-Requests an sadmind

  • via inetd: Port 111/tcp
  • Direkt an sadmind: dynamischer Port
    in diesem Fall muß sichergestellt sein, daß sadmind läuft, d. h. er muß zunächst von inetd oder als standalone daemon beim Systemboot getartet worden sein.

Auswirkung
Kompromittierung des beherbergenden Rechnersystems
(remote root compromise)

Typ der Verwundbarkeit
insecure defaults

Gefahrenpotential
sehr hoch
(Hinweise zur
Einstufung des Gefahrenpotentials.)

Kontext
Zur Administration mehrerer über ein Netzwerk verteilter Sun-Solaris-Systeme stellt die Sun Solstice Admin Suite (tm) verschiedene Werkzeuge zur Verfügung. Der sadmin-Daemon dient dabei zur Ausführung der Administrativen Aktionen auf den einzelnen Rechnersystemen. Zu diesem Zweck lauscht sadmind auf dem Netzwerk und wartet auf Anfragen des administrierenden Systems.

Standardmäßig wird sadmind mittels des inetd-Mechanismus getartet und läuft dann nach der letzten Anfrage standardmäßig voreingestellt noch 15 Minuten bis er sich selbst beendet.

sadmind authentifiziert Anfragen, um Sicherzustellen, daß keine Anfragen unautorisierter Benutzer bearbeitet werden und ggf. von diesen zur Kompromittierung des beherbergenden Systems ausgenutzt werden können. Es werden drei Sicherheitsstufen zur Authentifizierung angeboten:

  • 0 - keine Authentifizierung
    Diese Einstellung dient Testzwecken, sie sollte nicht im Produktionsbetrieb eingesetzt werden.
  • 1 - schwache Authentifizierung
    Zur Authentifizierung werden der AUTH_SYS- oder AUTH_DES-Authentifizierungsmechanismus gleichwertig herangezogen, d. h. eine Authentifizierung findet je Anfrage entweder mittels des einen oder des anderen statt. Benutzer und Klienten werden anhand Ihrer System- oder DES-Credentials authentifiziert.
    Dies ist die voreingestellte Sicherheitsstufe.
  • 2 - starke Authentifizerung
    Aur Authentifizierung wird nur der AUTH_DES-Authentifizierungsmechanismus akzeptiert. Nur Benutzer und Klienten, die ein DES-Credential besitzen werden zur Authentifizierung zugelassen.

Beschreibung
sadmind wird voreingestellt mit der Sicherheitsstufe 1 installiert und akzeptiert daher eine Authentifizierung, die auf dem AUTH_SYS-Mechanismus beruht. AUTH_SYS-Authentifizierungscredentials können leicht gefälscht werden so daß ein nichtprivilegierter Benutzer oder Client, der in der Lage ist, entsprechende Anfragen an sadmind zu schicken, ggf. in der Lage ist, administrative Aktionen auf dem beherbergenden Rechnersystem auszuführen.

Derzeit kursieren neue Angriffsprogramme, die die Ausnutzung dieser Schwachstelle sehr einfach machen.

Prüfung auf Verwundbarkeit

  • verwundbare Systeme:
    Ein gegen die o. b. Art von Angriffen verwundbares System enthält in der Datei /etc/inetd.conf folgende Zeile:
    
             100232/10   tli   rpc/udp wait root /usr/sbin/sadmind  sadmind
    	 
    
  • nicht verwundbare Systeme:
    Ein System das nicht gegen die o. b. Art von Angriffen verwundbar ist enthält in der Datei /etc/inetd.conf folgende Zeile:
    
             100232/10   tli   rpc/udp wait root /usr/sbin/sadmind   sadmind -S 2
    
    
    oder die Zeile;
    
             #100232/10   tli  rpc/udp wait root /usr/sbin/sadmind     sadmind 
    
    

Gegenmaßnahmen

Anmerkung
Dieses Problem ist in der Tat schon seit Jahren bekannt und in vielen Dokumenten, die die Absicherung von Solaris-Inatallationen beschreiben, erwähnt. Dort wird empfohlen, sadmind nicht im Default-Security-Level zu starten, sondern im sichereren Level 2 (s. Kontext).
In der man page zu sadmind (1M) wird ebenfalls darauf hingewiesen, daß der voreingestellte Security-Level 1 nur in "relativ sicheren Umgebungen" eingesetzt werden sollte, da es "leicht ist, AUTH_SYS-Credentials zu fälschen". Sun Microsystems hat aber bisher nicht die Konsequenz aus dieser Tatsache gezogen und die Voreinstellung geändert, so daß ein Adminsitrator die Entscheidung, sadmind so zu betreiben, daß Angriffe leicht möglich sind, bewußt treffen muß. Dies ist nicht mehr zeitgemäß und gefährdet in unnötiger Weise Solaris-Installationen, insbesondere solche, die von überlasteten Administratoren verwaltet werden (also praktisch alle), die davon ausgehen, daß Defaults so eingestellt sind, daß Angriffe zumindest nicht trivial möglich sind. Zwar erleichtert die gewählte Voreinstellung vermutlich in vielen Fällen die Einführung zentralisierter Administration mittels der Sun Solstice Admin Suite (tm) fordert jedoch eine nicht unerhebliche Gefährdung der Sicherheit als Preis.

Workaround

  • Sofern das System mittels der Sun Solstice Admin Suite (tm) administriert werden soll, ist die Änderung des Security-Levels vorzunehmen, andernfalls sollte sadmind abgeschaltet werden.
    1. Folgende Änderungen sind in der Datei /etc/inetd.conf vorzunehmen:
      • zur Änderung des Security-Levels ist die Zeile
        
                 100232/10   tli   rpc/udp wait root /usr/sbin/sadmind  sadmind
        
        
        zu ersetzen durch die Zeile
        
                 100232/10   tli   rpc/udp wait root /usr/sbin/sadmind   sadmind -S 2
        
        
      • zur Abschaltung des sadmind ist die Zeile
        
                 100232/10   tli   rpc/udp wait root /usr/sbin/sadmind  sadmind
        
        
        mittels eines Doppelkreuzes ("#") auszukommentieren:
        
                 #100232/10   tli  rpc/udp wait root /usr/sbin/sadmind     sadmind
        
        
    2. Danach ist in jedem Fall inetd zu veranlassen, seine Konfigurationsdatei neu zu lesen:
                 $ su
                 Password:
      
                 # /usr/bin/pkill -HUP inetd
      
                 # exit
      
                 $
      
      
  • Eine Filterung des Ports 111/tcp (portmapper) verhindert Angriffe nicht effektiv, da sadmind auch direkt angegriffen werden kann (s. Einfallstor). Zusätzlich zu den o. b. Maßnahmen kann eine Filterung jedoch nicht schaden.

Vulnerability ID

Exploit Code

  • Angriffsprogramme kursieren

Weitere Information zu diesem Thema

(og)

Hinweis
Die in diesem Text enthaltene Information wurde für die Mitglieder der Universität Stuttgart recherchiert und zusammengestellt. Die Universität Stuttgart übernimmt keinerlei Haftung für die Inhalte. Dieser Artikel darf ausschließlich in unveränderter Form und nur zusammen mit diesem Hinweis sowie dem folgenden Copyrightverweis veröffentlicht werden. Eine Veröffentlichung unter diesen Bedingungen an anderer Stelle ist ausdrücklich gestattet.

Copyright © 2017 RUS-CERT, Universität Stuttgart, https://cert.uni-stuttgart.de/

Vorherige Meldung Weitere Meldungen... Nächste Meldung

Bitte lesen Sie auch die Grundsätze, nach denen das RUS-CERT Tickermeldungen veröffentlicht. Der regelmäßige Bezug von Tickermeldungen über E-Mail und RSS-Feed ist ebenfalls möglich.