Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(In)security allgemein Sicherheit, Anonymität im Netz. Schutz und Maßnahmen. Prävention und Konzepte. Sicherheitsarchitekturen allgemein und auf der Netzwerkebene.

Schadcode in Bildern

Diskussion: Schadcode in Bildern im Forum (In)security allgemein, in der Kategorie Security Area; Anzeige Hallo ! Man kann ja in Bildern diversen Schadcode einfügen. Nun habe ich eine Web-Applikation wo User Bilder hochladen ...

Like Tree2Likes
  • 2 Post By bitmuncher

Antwort
Alt 08.10.11, 17:52   #1 (permalink)
 
Registriert seit: 19.08.04
Dawen Leistung: Addierstift
Likes: 1
Standard Schadcode in Bildern

Anzeige

Hallo !

Man kann ja in Bildern diversen Schadcode einfügen. Nun habe ich eine Web-Applikation wo User Bilder hochladen dürfen/müssen. Wenn ich nun das Bild per "convert" einmal skaliere und die Größe um 1px reduziere, wird dann auch der Schadcode entfernt ?! Bzw. kann beim Befehl convert etwas passieren ( z.B. Shellcode einspielen ? )

Dawen ist offline   Mit Zitat antworten
Alt 08.10.11, 18:01   #2 (permalink)
 
Registriert seit: 04.10.11
koskor Leistung: Facit NTK
Likes: 0
Standard

Ich kann mir eigentlich nicht vorstellen das durch das simple skalieren eines Bildes, der Code geändert wird. Ich bin mir aber nicht zu hundertprozent sicher.
Ganz interessant fand ich diese Webseiten:
Upload-Bilder auf Schadcode prüfen - PHP - WebmasterWork

Security Control - Ordner auf Grafiken mit Schadcode prüfen (1.6.03 - 1.6.5) - Downloads | aktuelle PHPKIT Version - Kitnetwork Supportforum

So wie ich das gesehen habe geht das mit php recht einfach.

Ich hoffe ich konnte dir weiterhelfen
koskor ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 08.10.11, 18:44   #3 (permalink)
Themenstarter
 
Registriert seit: 19.08.04
Dawen Leistung: Addierstift
Likes: 1
Standard

Hallo !

Ist schon einmal ganz gut. Ich kannte die erste Seite bereits. Problem ist halt alles, was von außen kommt. Ich überlege was die schönste Möglichkeit wäre.

Aktuell überlege ich :

- convert und danach ein combine mit einem transparenten Bild.

Bei meinem Test war alles weg. Ich bin jetzt aber auch nicht der super cracker.
Dawen ist offline   Mit Zitat antworten
Alt 08.10.11, 19:01   #4 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

Wenn es um eine Webapplikation geht, solltest du nicht irgendwelche "externen" Programme aufrufen sondern z.B. eine entsprechende Funktionalität aus der ImageMagick-Lib oder aus der GDLib nutzen. Aufrufe von Programmen in Webapps stellen immer ein erhöhtes Risiko dar.
Tarantoga and Machine like this.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist offline   Mit Zitat antworten
Alt 08.10.11, 19:25   #5 (permalink)
Themenstarter
 
Registriert seit: 19.08.04
Dawen Leistung: Addierstift
Likes: 1
Standard

Zitat:
Zitat von bitmuncher Beitrag anzeigen
Wenn es um eine Webapplikation geht, solltest du nicht irgendwelche "externen" Programme aufrufen sondern z.B. eine entsprechende Funktionalität aus der ImageMagick-Lib oder aus der GDLib nutzen. Aufrufe von Programmen in Webapps stellen immer ein erhöhtes Risiko dar.
Hallo !


convert ist doch aus der ImageMagick-Lib ?! Über diese will ich die Bilder skalieren. Upload läuft uploadify !
Dawen ist offline   Mit Zitat antworten
Alt 08.10.11, 19:52   #6 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

convert ist ein Programm, das die ImageMagick-Lib nutzt. Wenn du PHP nutzt, findest du die entsprechenden Funktionalitäten für das zugehörige PECL-Modul unter PHP: ImageMagick - Manual. In dem Moment, wo du über system(), exec() oder shell_exec() etwas aufrufst, nutzt du damit ein Programm des Systems und das sollte man in Webapps wo immer möglich vermeiden. Dabei kann bereits ein nicht korrekt validierter oder umgewandelter Dateiname dazu führen, dass ein Angreifer andere Programme aufruft, als das von dir gewünschte, und sich so Zugriff auf den Server verschafft.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist offline   Mit Zitat antworten
Alt 09.10.11, 09:09   #7 (permalink)
 
Registriert seit: 30.03.07
ByteSurfer Leistung: Facit NTK
Likes: 17
Standard

Prüfe das Bild auf die Eindeutigkeit, ob es z.B. ein jpg ist.
Ich glaube laut dem Buch "wie programmiere ich eine sichere Webanwendung" mich zu Erinnern, das die Php type Prüfung (frag mich jetzt nicht welche) nur auf ein vorkommen im Namen prüft. QUASI "test_jpg.gif" würde true bie einer Prüfung auf jpg liefern ...

letztendlich solltest Du wie bereits erwähnt mit imagemagick alle Grafiken in eine JPG wandeln, da Du hier davon ausgehen kannst das der Schadcode, wenn vorhanden, eliminiert wird...
ByteSurfer ist offline   Mit Zitat antworten
Alt 09.10.11, 19:12   #8 (permalink)
Senior Member
 
Registriert seit: 13.07.08
enkore Leistung: K 6-3enkore Leistung: K 6-3enkore Leistung: K 6-3
Likes: 85
Standard

Zitat:
Zitat von ByteSurfer Beitrag anzeigen
Prüfe das Bild auf die Eindeutigkeit, ob es z.B. ein jpg ist.
Ich glaube laut dem Buch "wie programmiere ich eine sichere Webanwendung" mich zu Erinnern, das die Php type Prüfung (frag mich jetzt nicht welche) nur auf ein vorkommen im Namen prüft. QUASI "test_jpg.gif" würde true bie einer Prüfung auf jpg liefern ...

letztendlich solltest Du wie bereits erwähnt mit imagemagick alle Grafiken in eine JPG wandeln, da Du hier davon ausgehen kannst das der Schadcode, wenn vorhanden, eliminiert wird...
@1: Nö, Identifzierung läuft bei FILES [type] über MIME, bei GetImageSize dürfte es Magicnumber, also letztendlich das gleiche wie bei MIME, sein.

@2: Der sicherste Weg sollte sein nur die Bilddaten erneut zu speichern. Sprich Bild laden -> Isolieren (Metadaten und alles was sonst noch da ist entfernen) -> speichern. Evtl. zwischendrin noch ein Combine machen, damit jedes Byte einmal angeschaut wird.
__________________
"It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."
+++ BREAKING +++ Troll ertrinkt im Planschbecken +++
enkore ist offline   Mit Zitat antworten
Alt 10.10.11, 07:14   #9 (permalink)
 
Registriert seit: 30.03.07
ByteSurfer Leistung: Facit NTK
Likes: 17
Standard

Zitat:
Nö, Identifzierung läuft bei FILES [type] über MIME, bei GetImageSize dürfte es Magicnumber, also letztendlich das gleiche wie bei MIME, sein.
Genua, da du hier bei einem nicht Bildtypen false zurückbekommst.
ByteSurfer ist offline   Mit Zitat antworten
Alt 10.10.11, 16:41   #10 (permalink)
 
Benutzerbild von Hackse
 
Registriert seit: 31.07.06
Hackse Leistung: 8086
Likes: 32
Standard

Zitat:
Zitat von ByteSurfer Beitrag anzeigen
Genua, da du hier bei einem nicht Bildtypen false zurückbekommst.
Auswertung des MIME-Types, Ermittlung der Bildgröße etc. ist nur für jene Fälle ausreichend, in denen (ausführbare) Schadprogramme als *.jpg und Konsorten unbenannt wurden.

Wenn Du jedoch Schadcode in einer validen Bilddatei eingebettet hast, wird Deine Prüfung trotz des Schadcodes true zurückgeben. Prüfung auf MIME-Type ist somit ungenügend.

Tools wie mogrify und convert täte ich ausschließlich auf Bildern aus eigenen Bildquellen anwenden, jedoch nicht auf Bilder/Code von Fremden (sprich extern hochgeladene Bilder über einen Webserver).

Greetz
Hackse
Hackse ist offline   Mit Zitat antworten
Alt 11.10.11, 17:30   #11 (permalink)
Senior Member
 
Registriert seit: 13.07.08
enkore Leistung: K 6-3enkore Leistung: K 6-3enkore Leistung: K 6-3
Likes: 85
Standard

Das sicherste dürfte einfach ein Load, Merge und Save mit GD sein.
__________________
"It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."
+++ BREAKING +++ Troll ertrinkt im Planschbecken +++
enkore ist offline   Mit Zitat antworten
Alt 11.10.11, 18:49   #12 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

GD macht bei PHP 5.3.x Schwierigkeiten, wenn man grosse Bilder oder welche im Loop verarbeiten will. Ein 800k grosses JPEG kann da durchaus mal 40MB RAM fressen. Daher nutzen die meisten Plattformen mittlerweile ImageMagick. Wir mussten die Erfahrung kürzlich bei der Umstellung auf PHP 5.3 machen.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist offline   Mit Zitat antworten
Alt 11.10.11, 18:57   #13 (permalink)
Senior Member
 
Registriert seit: 13.07.08
enkore Leistung: K 6-3enkore Leistung: K 6-3enkore Leistung: K 6-3
Likes: 85
Standard

Hmm dann würde ich den Weg gehen und ein kleines PHP Plugin für Freeimage schreiben. Das hat sich bei mir immer als sehr speichersparend herausgestellt.
__________________
"It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."
+++ BREAKING +++ Troll ertrinkt im Planschbecken +++
enkore ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Security Area » (In)security allgemein » Schadcode in Bildern
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
? in Bildern KaM!KoZe Downloads 8 30.11.05 12:24
mit Bildern bei XAMPP/Apache .tails Internet Allgemein 9 14.10.05 19:49
Nachrichten in Bildern ByteWolf Cryptography & Encryption 4 22.05.05 16:59


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61