Abo
  • Services:
Anzeige
Die Bash-Shell ist die Standard-Kommandozeile unter Linux und Mac OS X.
Die Bash-Shell ist die Standard-Kommandozeile unter Linux und Mac OS X. (Bild: Hanno Böck)

Linux-Shell: Bash-Sicherheitslücke ermöglicht Codeausführung auf Servern

Die Bash-Shell ist die Standard-Kommandozeile unter Linux und Mac OS X.
Die Bash-Shell ist die Standard-Kommandozeile unter Linux und Mac OS X. (Bild: Hanno Böck)

Eine Sicherheitslücke in der Linux-Shell Bash hat gravierende Auswirkungen. In vielen Fällen lässt sich damit von Angreifern Code auf Servern auch aus der Ferne ausführen.

In der Linux-Shell Bash wurde eine große Sicherheitslücke entdeckt. In Umgebungsvariablen lässt sich Code einfügen, den die Shell beim Starten ungeprüft ausführt. Das eröffnet zahlreiche Angriffsvektoren, am kritischsten ist die Lücke für Webskripte, die mittels CGI ausgeführt werden. Bash ist die am häufigsten genutzte Kommandozeilen-Shell unter Linux.

Anzeige

Das Problem wurde von Stephane Chazelas entdeckt und zunächst an die Entwickler der Debian-Distribution gemeldet. Geplant war für den 24. September eine koordinierte Veröffentlichung der Details. Offenbar wurde die Sperrfrist zwar eingehalten, einige Details, die erst später veröffentlicht wurden, wurden jedoch vorzeitig bekannt.

Bash ermöglicht es, mittels Umgebungsvariablen Funktionen zu definieren. Der Name der Umgebungsvariable dient dabei als Funktionsname, der Inhalt wird ausgeführt. Ein simples Beispiel hierfür wäre folgendes:

x="() { echo Hello; }" bash -c "x"

In diesem Fall wird eine Funktion x definiert, die die Zeichenkette "Hello" ausgibt. Das Problem: Wenn Bash eine solche Funktionsvariable entdeckt, parst es die komplette Variable und führt Code, der sich hinter dem Funktionsaufruf befindet, direkt aus. Testen lässt sich dies mit folgendem Beispiel:

test="() { echo Hello; }; echo gehackt" bash -c ""

Bei einer verwundbaren Bash-Version wird hier der String "gehackt" ausgegeben obwohl die Bash-Shell eigentlich überhaupt nichts ausführen soll. Das Problem hierbei: In vielen Fällen hat ein Angreifer die Möglichkeit, den Inhalt von Umgebungsvariablen zu kontrollieren.

Besonders kritisch sind hierbei CGI-Skripte auf Webservern. Denn hier werden beispielsweise Parameter oder Pfade der Webanwendung mittels Umgebungsvariablen übergeben. CGI-Skripte, die in Bash geschrieben sind, lassen sich damit direkt angreifen. Aber auch andere Programmiersprachen können Probleme bekommen. Wie in einem Blogeintrag von Redhat erläutert wird, führen zahlreiche Programmiersprachen implizit eine Bash-Shell aus, wenn man einen Systembefehl ausführt. Das betrifft in PHP etwa die Befehle system() und exec(), in C die Befehle system() und popen() und in Python die Befehle os.system() und os.popen().

Ein weiterer möglicher Angriffsvektor ist OpenSSH. Oftmals wird SSH so genutzt, dass ein Nutzer keine vollwertige Shell auf einem Server hat, sondern nur bestimmte Befehle ausführen darf. Diese Möglichkeit nutzen beispielsweise die Quellcode-Verwaltungstools Git und CVS. OpenSSH ruft hierbei ebenfalls implizit eine Shell auf, der Client kann verschiedene Variableninhalte beeinflussen.

OpenSSH und CGI-Skripte sind nur zwei mögliche Angriffsvektoren, verschiedene weitere Szenarien sind denkbar. Ein Update ist somit insbesondere Serveradministratoren, aber auch allen anderen Nutzern von Linux und anderen Unix-Systemen mit Bash dringend anzuraten. Für die aktuelle Bash-Version 4.3 steht der Patch 025 bereit, für Bash 4.2 der Patch 048. Betroffen ist neben Linux auch Mac OS X, welches ebenfalls Bash als Standardshell einsetzt. Das Problem hat die ID CVE-2014-6271 erhalten.

Nachtrag vom 25. September 2014, 12:34 Uhr

Der Google-Entwickler Tavis Ormandy hat entdeckt, dass die Korrektur für die Lücke unvollständig ist. Zwar lässt sich Ormandys Beispielcode nicht direkt für Angriffe nutzen, trotzdem wird wohl ein weiteres Bash-Update notwendig. Die neue Sicherheitslücke hat die ID CVE-2014-7169 erhalten.


eye home zur Startseite
neocron 26. Sep 2014

kann ich aus meiner Erfahrung nicht so sagen. Bei jedem Apple Artikel, kommen erstmal 5...

katzenpisse 26. Sep 2014

Indem er eine dynamische Webseite aufruft, die per Bashskript generiert wird. Ansonsten...

phade 26. Sep 2014

Ah, erst der zweite, wohl noch inoffizielle Patch unter http://www.openwall.com/lists/oss...

mambokurt 25. Sep 2014

Na damit hast du echt den Vogel abgeschossen, die Aussage zeigt entweder dass du dich...

__destruct() 25. Sep 2014

Und wie soll dann überhaupt ein Kommando, das Leerzeichen beinhaltet, ausgeführt werden...



Anzeige

Stellenmarkt
  1. Evangelischen Regionalverband Frankfurt am Main, Frankfurt am Main
  2. Daimler AG, Stuttgart
  3. DewertOkin GmbH, Hamburg
  4. ifb KG, Seehausen am Staffelsee


Anzeige
Spiele-Angebote
  1. 12,99€
  2. 16,99€
  3. (u. a. BioShock: The Collection 16,99€, Borderlands 2 GOTY 7,99€, Civilization VI 35,99€ und...

Folgen Sie uns
       


  1. R-PHY- und R-MACPHY

    Kabelnetzbetreiber müssen sich nicht mehr festlegen

  2. ePrivacy-Verordnung

    Ausschuss votiert für Tracking-Schutz und Verschlüsselung

  3. Lifetab X10605 und X10607

    LTE-Tablets direkt bei Medion bestellen

  4. Gran Turismo Sport im Test

    Puristischer Fahrspaß - fast nur für Onlineraser

  5. Breitbandausbau

    Oettinger bedauert Privatisierung der Telekom

  6. Elektroauto

    Tesla Model S brennt auf österreichischer Autobahn aus

  7. Ubuntu 17.10 im Test

    Unity ist tot, lange lebe Unity!

  8. Asus Rog GL503 und GL703

    Auf 15 und 17 Zoll für vergleichsweise wenig Geld spielen

  9. Swisscom

    Einsatz von NG.fast bringt bis zu 5 GBit/s

  10. Bixby 2.0

    Samsung will Sprachassistenten auf viel mehr Geräte bringen



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Dokumentarfilm Pre-Crime: Wenn Computer Verbrechen vorhersagen
Dokumentarfilm Pre-Crime
Wenn Computer Verbrechen vorhersagen

Programmiersprache für Android: Kotlin ist auch nur eine Insel
Programmiersprache für Android
Kotlin ist auch nur eine Insel
  1. Programmiersprache Fetlang liest sich "wie schlechte Erotikliteratur"
  2. CMS Drupal 8.4 stabilisiert Module
  3. Vespa Yahoos Big-Data-Engine wird Open-Source-Projekt

Core i7-8700K und Core i5-8400 im Test: Ein Sechser von Intel
Core i7-8700K und Core i5-8400 im Test
Ein Sechser von Intel
  1. Core i7-8700K Ultra Edition Overclocking-CPU mit Silber-IHS und Flüssigmetall
  2. Intel Coffee Lake Von Boost-Betteln und Turbo-Tricks
  3. Coffee Lake Intel verkauft sechs Kerne für unter 200 Euro

  1. Re: An Spekulationen vorab werden wir uns nicht...

    Tom123 | 16:33

  2. Re: Hausaufgaben

    Jominator | 16:32

  3. Re: Activision patentiert Förderung von Krebs

    nachgefragt | 16:32

  4. Re: Löschen? Eher ausbrennen lassen.

    gadthrawn | 16:31

  5. Hoffentlich...

    zwangsregistrie... | 16:31


  1. 15:42

  2. 15:27

  3. 15:12

  4. 15:00

  5. 13:49

  6. 12:25

  7. 12:00

  8. 11:56


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel