1. Foren
  2. Kommentare
  3. Security
  4. Alle Kommentare zum Artikel
  5. › Imagetragick-Bug: Sicherheitslücke in…

Ist das überhaupt ein direktes Problem von ImageMagick?

  1. Thema

Neues Thema Ansicht wechseln


  1. Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: Schattenwerk 04.05.16 - 11:05

    Oder liegt das Problem nicht eher darin, dass der Entwickler Benutzereingaben blind akzeptiert.

    Okay, es ist nicht schön, dass IM nun anfängt aus Dateinamen sich irgendwelchen Code zu holen und diesen interpretiert. Stellt meiner Meinung nach den Entwickler trotzdem nicht davon frei die Eingaben auch korrekt zu prüfen.

  2. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: GaliMali 04.05.16 - 12:06

    Je mehr man prüft um so mehr Fehler können sich einschleichen.

    IM kommt auch mit leicht defekten Bilddateien manchmal gut zurecht. Gerade diese Fähigkeit will man nicht unbedingt unterbinden, in dem man die Quelldatei zu sehr prüft.

  3. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: Insomnia88 04.05.16 - 12:15

    Schattenwerk schrieb:
    --------------------------------------------------------------------------------
    > Oder liegt das Problem nicht eher darin, dass der Entwickler
    > Benutzereingaben blind akzeptiert.

    Naja, ich wusste nicht mal, dass man z.B. in PHP überhaupt auf solche Magic Bytes prüfen kann (und was das ist/dass es sowas gibt). Das sind ja nicht irgendwelche Benutzereingaben wie "ich gebe jetzt in Input Feldern Code ein" sondern als Bilder "codierte" Dateien mit Code.
    Man muss ja zwangsweise sowieso prüfen, ob die vorliegende Datei ein Bild ist (um nicht iwelche *zip etc. zu bearbeiten). Es geht also eher darum, dass die Art der Prüfung "falsch" ist (wenn man z.B. nur nach Dateiendung prüft)

    Allerdings benutzte ich auch nicht ImageMagic sondern GD und hoffe, dass sowas da nicht funktioniert (ohne extra zu prüfen).



    1 mal bearbeitet, zuletzt am 04.05.16 12:33 durch Insomnia88.

  4. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: Schattenwerk 04.05.16 - 12:43

    Insomnia88 schrieb:
    --------------------------------------------------------------------------------
    > Allerdings benutzte ich auch nicht ImageMagic sondern GD und hoffe, dass
    > sowas da nicht funktioniert (ohne extra zu prüfen).

    Und das wo heute auf Heise ne News aufgetaucht ist, dass in allen PHP Versionen in gd2 ein Fehler mit Code-Ausführung ist ;)

  5. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: Insomnia88 04.05.16 - 12:51

    Schattenwerk schrieb:
    --------------------------------------------------------------------------------
    > Insomnia88 schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > Allerdings benutzte ich auch nicht ImageMagic sondern GD und hoffe, dass
    > > sowas da nicht funktioniert (ohne extra zu prüfen).
    >
    > Und das wo heute auf Heise ne News aufgetaucht ist, dass in allen PHP
    > Versionen in gd2 ein Fehler mit Code-Ausführung ist ;)

    -.- Ich hab auf deinen Kommentar hin gerade mal bei heise geschaut.. Ich weiß nicht mal was gd2 Daten überhaupt sein sollen (Google hilft mir da spontan auch nicht weiter).

  6. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: Lala Satalin Deviluke 04.05.16 - 12:52

    Ich glaube da sollte eher die Sicherheit vorgehen.
    Dann wird das Bild eben nicht akzeptiert. Ist besser, als sich Tür und Tor offen zu halten.

    Grüße vom Planeten Deviluke!

  7. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: ello 04.05.16 - 13:33

    Er meint diesen Beitrag: http://www.heise.de/newsticker/meldung/Sicherheitsupdates-PHP-anfaellig-fuer-Remote-Code-Execution-3196826.html

    und mit GD2 meint er libgd 2.xx

    Insomnia88 schrieb:
    --------------------------------------------------------------------------------
    > Schattenwerk schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > Insomnia88 schrieb:
    > >
    > ---------------------------------------------------------------------------
    >
    > > -----
    > > > Allerdings benutzte ich auch nicht ImageMagic sondern GD und hoffe,
    > dass
    > > > sowas da nicht funktioniert (ohne extra zu prüfen).
    > >
    > > Und das wo heute auf Heise ne News aufgetaucht ist, dass in allen PHP
    > > Versionen in gd2 ein Fehler mit Code-Ausführung ist ;)
    >
    > -.- Ich hab auf deinen Kommentar hin gerade mal bei heise geschaut.. Ich
    > weiß nicht mal was gd2 Daten überhaupt sein sollen (Google hilft mir da
    > spontan auch nicht weiter).

  8. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: Trollmagnet 04.05.16 - 13:46

    Lala Satalin Deviluke schrieb:
    --------------------------------------------------------------------------------
    > Ich glaube da sollte eher die Sicherheit vorgehen.
    > Dann wird das Bild eben nicht akzeptiert. Ist besser, als sich Tür und Tor
    > offen zu halten.

    Man sollte niemals mehr Funktionalität implementieren, als unbedingt nötig ist. Alles andere erhöht die Komplexität und dadurch die potentielle Angriffsfläche.

    Wer jetzt anfängt, wild Workarounds zu schreiben, begibt sich auf gefährliches Terrain. Das kann man machen, um temporär eine Problem zu umgehen, aber diese zusätzliche Logik sollte schleunigst wieder entfernt werden, sobald der zugrundeliegende Fehler (in der ImageMagick-Bibliothek) beseitigt wurde.

  9. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: dakira 04.05.16 - 14:16

    Insomnia88 schrieb:
    > -.- Ich hab auf deinen Kommentar hin gerade mal bei heise geschaut.. Ich
    > weiß nicht mal was gd2 Daten überhaupt sein sollen

    Dann betrifft es dich auch nicht. imagemagick und gd2 sind die beiden libraries, die man für serverseitige Bildverarbeitung nutzt. Auf den meisten Linux-Systemen nutzt PHP die libgd2 vom Betriebssystem, welche schon vor einer Weile gepatcht wurde. Daher sind viele Linux-Systeme eher nicht betroffen von der Lücke (wohl aber von den anderen in PHP gepatchten Lücken).

    dakira

  10. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: dakira 04.05.16 - 14:21

    Trollmagnet schrieb:
    --------------------------------------------------------------------------------
    > Wer jetzt anfängt, wild Workarounds zu schreiben, begibt sich auf
    > gefährliches Terrain. Das kann man machen, um temporär eine Problem zu
    > umgehen, aber diese zusätzliche Logik sollte schleunigst wieder entfernt
    > werden, sobald der zugrundeliegende Fehler (in der ImageMagick-Bibliothek)
    > beseitigt wurde.

    Input-Validation ist doch kein wilder Workaround. Das ist einfach saubere Arbeit alles, was in eine App reingeht (und übrigens auch raus) zu überprüfen. Wenn ich bei einem Upload-Formular PNGs und JPGs akzeptiere, dann ist es ganz gewiss kein Hexenwerk diese zu validieren, genausowenig wie es Hexenwerk ist zu prüfen, ob ein String nur alphanumerische Zeichen enthält und nicht mehr als 60 (unicode) chars lang ist.

    dakira

  11. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: lear 04.05.16 - 18:03

    nope, im bug:
    http://www.openwall.com/lists/oss-security/2016/05/03/18

    daneben bist du gut beraten, bei uploads nicht irgendwelche dateinamen zu behalten, sondern die datei in einen hashwert oä. umzubenennen und damit weiter zu arbeiten (weil das angriffe gegen shellscripte etc. ausräumt)

  12. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: FreiGeistler 04.05.16 - 19:06

    > Das ist einfach saubere Arbeit alles, was in eine App reingeht (und übrigens auch raus) zu überprüfen.
    Das muss nicht die Anwendung, das muss das System.
    Stell dir vor, mit sh/mksh/csh/bash/etc. kann man code direkt ausführen. Sicherheitslücke? Nein.
    Da ImageMagick keine primäre Serveranwendung (wie z.B. Apache) ist, wäre Anwendungseigene Validation kontraproduktiv, vor allem wenn das jede Anwendung im System müsste.



    3 mal bearbeitet, zuletzt am 04.05.16 19:11 durch FreiGeistler.

  13. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: xUser 06.05.16 - 13:41

    Insomnia88 schrieb:
    --------------------------------------------------------------------------------
    > Schattenwerk schrieb:
    > ---------------------------------------------------------------------------
    > -----
    > > Oder liegt das Problem nicht eher darin, dass der Entwickler
    > > Benutzereingaben blind akzeptiert.
    >
    > Naja, ich wusste nicht mal, dass man z.B. in PHP überhaupt auf solche Magic
    > Bytes prüfen kann (und was das ist/dass es sowas gibt). Das sind ja nicht
    > irgendwelche Benutzereingaben wie "ich gebe jetzt in Input Feldern Code
    > ein" sondern als Bilder "codierte" Dateien mit Code.

    Auf Magic Bytes prüfen geht schnell, man muss ja nur die ersten x Zeichen einlesen:
    $fp = fopen($filePathOfPng);
    $bytes = fread($fp, 4);
    if ($bytes === "\x89PNG") {...}
    fclose($fp);

    > Man muss ja zwangsweise sowieso prüfen, ob die vorliegende Datei ein Bild
    > ist (um nicht iwelche *zip etc. zu bearbeiten). Es geht also eher darum,
    > dass die Art der Prüfung "falsch" ist (wenn man z.B. nur nach Dateiendung
    > prüft)

    Das ist sowieso falsch, weil Dateiendungen eben völlig willkürlich sind (eine Benutzereingabe) sind. Man sollte zumindest auf den MIME Type prüfen (was im Grunde genau obige Methode nutzt, aber mit komplexerem Pattern Matching):
    http://php.net/manual/de/ref.fileinfo.php

  14. Re: Ist das überhaupt ein direktes Problem von ImageMagick?

    Autor: xUser 06.05.16 - 13:44

    dakira schrieb:
    --------------------------------------------------------------------------------
    > Input-Validation ist doch kein wilder Workaround. Das ist einfach saubere
    > Arbeit alles, was in eine App reingeht (und übrigens auch raus) zu
    > überprüfen. Wenn ich bei einem Upload-Formular PNGs und JPGs akzeptiere,
    > dann ist es ganz gewiss kein Hexenwerk diese zu validieren,

    Doch, weil diese Formate komplexer sind und sich nicht über ein simples Pattern-Matching validieren lassen. Das bedeutet, dass du einen Parser schreiben müsstest. Das ist aber genau der fehleranfälligste Teil (die meisten Sicherheitslücken sind in Parsern).
    Genau deswegen solltest du dies nicht selbst machen, sondern tunlichst an eine Bibliothek auslagern, welche sich auf dieses Format spezialisiert hat.
    Stattdessen solltest du auf den MIME-Type prüfen:
    http://php.net/manual/de/ref.fileinfo.php

    > genausowenig
    > wie es Hexenwerk ist zu prüfen, ob ein String nur alphanumerische Zeichen
    > enthält und nicht mehr als 60 (unicode) chars lang ist.
    Das ist simples Pattern-Matching.

  1. Thema

Neues Thema Ansicht wechseln


Um zu kommentieren, loggen Sie sich bitte ein oder registrieren Sie sich. Sie müssen ausserdem in Ihrem Account-Profil unter Forum einen Nutzernamen vergeben haben. Zum Login

Stellenmarkt
  1. Watson Farley & Williams LLP, Hamburg
  2. Kassenzahnärztliche Vereinigung Bayerns, München
  3. Oskar Böttcher GmbH & Co. KG, Berlin
  4. Anstalt für Kommunale Datenverarbeitung in Bayern (AKDB), München

Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Mobile-Angebote
  1. 369,99€ (Bestpreis!)
  2. 634,90€ (Bestpreis!)
  3. 689€ (mit Rabattcode "PRIMA10" - Bestpreis!)
  4. 789€ (mit Rabattcode "PRIMA10" - Bestpreis!)


Haben wir etwas übersehen?

E-Mail an news@golem.de


Thinkpad Trackpoint Keyboard 2 im Test: Tolle kompakte Tastatur für Thinkpad-Fans
Thinkpad Trackpoint Keyboard 2 im Test
Tolle kompakte Tastatur für Thinkpad-Fans

Lenovos externe Thinkpad-Tastatur bietet alle Vorteile der Tastatur eines Thinkpad-Notebooks. Sie arbeitet drahtlos und mit Akkutechnik.
Ein Test von Ingo Pakalski

  1. Thinkpad X1 Fold Das faltbare Thinkpad kommt im Oktober
  2. Thinkpad X1 Nano Lenovo macht das Carbon winzig
  3. Thinkpad E14 Gen2 (AMD) im Test Gelungener Ryzen-Laptop für 700 Euro

Mafia Definitive Edition im Test: Ein Remake, das wir nicht ablehnen können
Mafia Definitive Edition im Test
Ein Remake, das wir nicht ablehnen können

Familie ist für immer - nur welche soll es sein? In Mafia Definitive Edition finden wir die Antwort erneut heraus, anders und doch grandios.
Ein Test von Marc Sauter

  1. Mafia Definitive Edition angespielt Don Salieri wäre stolz
  2. Mafia Definitive Edition Ballerei beim Ausflug aufs Land
  3. Definitive Edition Das erste Mafia wird von Grund auf neu erstellt

Corsair K60 RGB Pro im Test: Teuer trotz Viola
Corsair K60 RGB Pro im Test
Teuer trotz Viola

Corsair verwendet in der K60 Pro RGB als erster Hersteller Cherrys neue preiswerte Viola-Switches. Anders als Cherrys günstige MY-Schalter aus den 80ern hinterlassen diese einen weitaus besseren Eindruck bei uns - der Preis der Tastatur hingegen nicht.
Ein Test von Tobias Költzsch

  1. Corsair K100 RGB im Test Das RGB-Monster mit der Lichtschranke
  2. Corsair Externes Touchdisplay ermöglicht schnelle Einstellungen
  3. Corsair One a100 im Test Ryzen-Wasserturm richtig gemacht

  1. Sony: Lüfter wird auf jedes PS5-Spiel abgestimmt
    Sony
    Lüfter wird auf jedes PS5-Spiel abgestimmt

    Vier Sensoren messen die Temperatur und optimieren das Kühlsystem der Playstation 5. Laut Sony ist es egal, ob die Konsole steht oder liegt.

  2. Microsoft: Edge-Browser für Linux verfügbar
    Microsoft
    Edge-Browser für Linux verfügbar

    Nach langen Ankündigungen und viel Arbeit stellt Microsoft seinen neuen Edge-Browser auf Chromium-Basis auch für Linux bereit.

  3. Notpetya: USA klagen russische Staatshacker an
    Notpetya
    USA klagen russische Staatshacker an

    Die sechs Angeklagten sollen für etliche Angriffe verantwortlich sein, darunter die Ransomware Notpetya, die weltweit Schäden angerichtet hatte.


  1. 11:37

  2. 11:20

  3. 10:55

  4. 10:39

  5. 09:57

  6. 09:42

  7. 09:12

  8. 09:00