1. Foren
  2. Kommentare
  3. Security-Forum
  4. Alle Kommentare zum Artikel
  5. › Imagetragick-Bug…

Ist das überhaupt ein direktes Problem von ImageMagick?

Neue Foren im Freiraum! Raumfahrt und freie Software haben jetzt einen Platz, die Games tummeln sich jetzt alle in einem Forum.
  1. Thema

Neues Thema


  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


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. IT-Systemadministrator (m/w/x)
    über grinnberg GmbH, Raum Neumünster
  2. CSV Experte Qualitätskontrolle (m/w/d)
    BERLIN-CHEMIE AG, Berlin
  3. Facheinkäufer*in (IT/TK und Consulting)
    GASAG AG, Berlin
  4. EDV-Organisationsberater*in IT-Administration
    Evangelische Kirche in Hessen und Nassau, Darmstadt

Detailsuche


Golem pur
  • Golem.de ohne Werbung nutzen

Anzeige
Hardware-Angebote


Haben wir etwas übersehen?

E-Mail an news@golem.de