php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
Alt 20.05.2011, 09:25  
Andreas L.
Gast
 
Beiträge: n/a
Standard [Sicherheit] Remote-Grafik einbinden

Hi,

ich möchte den User die Möglichkeit geben ein eigenes Hintergrundbild für ein DIV-Element festzulegen. Das Bild soll aber nicht auf meinen Server hochgeladen werden sondern von einem anderen Server eingebunden werden.

Ein vereinfachtes Code-Beispiel:
PHP-Code:
<?php
  
// $_GET['img'] könnten z. B. so sein: http://www.domain.com/bilder/meinbild.png
  
$remote_img $_GET['img'];
?>
<html>
  <head>
    <style>
      div.test {
        background-image: url(<?php echo $remote_img?>);
      }
    </style>
  </head>

  <body>
    <div class="test">
      Bla bla bla#
    </div> 
  </body>
</html>
Und jetzt die Frage: Wie schauts mit der Sicherheit aus? Kann so Schadcode in die Seite injiziert werden? Was ist wenn statt einem Bild eine PHP oder JS Datei übergeben wird? Können defekte oder manipulierte Grafiken jemanden Zugriff zum Server verschaffen?

Schöne Grüße,
Andreas
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.05.2011, 09:34  
Erfahrener Benutzer
 
Registriert seit: 11.04.2011
Beiträge: 260
PHP-Kenntnisse:
Fortgeschritten
lcrash wird schon bald berühmt werden
Standard

So wie du es machst, kann ich jedenfalls alles einschleusen was ich möchte. Mittels expression() könnte ich so leicht im Interner Explorer an die Cookies herankommen.

Du solltest prüfen a) ob des String eine gültige Adresse ist b) die Ausgabe Escapen:

PHP-Code:
background-image: url("<?php print addslashes($remote_img); ?>");
Ob man prüfen sollte, ob es sich wirklich um ein Bild handelt, bezweifele ich. Wenn sollte man sich dabei nicht auf den gelieferten MIME-Typ verlassen.
lcrash ist offline   Mit Zitat antworten
Alt 20.05.2011, 09:56  
poli-tik
Gast
 
Beiträge: n/a
Standard

Und wenn es das Bild auf dem anderen Server dann irgendwann nicht mehr gibt?
  Mit Zitat antworten
Alt 20.05.2011, 10:08  
Erfahrener Benutzer
 
Registriert seit: 30.07.2008
Beiträge: 1.167
PHP-Kenntnisse:
Fortgeschritten
xm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphärexm22 sorgt für eine eindrucksvolle Atmosphäre
Standard

Ich sag mal so:

Code:
);}</style><script>...
xm22 ist offline   Mit Zitat antworten
Alt 20.05.2011, 10:48  
Erfahrener Benutzer
 
Registriert seit: 11.04.2011
Beiträge: 260
PHP-Kenntnisse:
Fortgeschritten
lcrash wird schon bald berühmt werden
Standard

Schon mal jemand probiert, ob ein Browser für
Code:
background: url("javascript:alert(1)");
anfällig ist?

Könnte bei schlechter Prüfung als URL durchgehen (URN ist es sowieso).
lcrash ist offline   Mit Zitat antworten
Alt 20.05.2011, 12:33  
Andreas L.
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von xm22 Beitrag anzeigen
Ich sag mal so:

Code:
);}</style><script>...
Mir ist klar das ich die URL überprüfen und escapen muss. Meine Fragen waren ja auch:
Zitat:
Kann so Schadcode in die Seite injiziert werden? Was ist wenn statt einem Bild eine PHP oder JS Datei übergeben wird? Können defekte oder manipulierte Grafiken jemanden Zugriff zum Server verschaffen?
Zitat:
Zitat von poli-tik Beitrag anzeigen
Und wenn es das Bild auf dem anderen Server dann irgendwann nicht mehr gibt?
Das ist nicht mein Problem, dafür muss der User sorge tragen.

Zitat:
Zitat von lcrash Beitrag anzeigen
Schon mal jemand probiert, ob ein Browser für
Code:
background: url("javascript:alert(1)");
anfällig ist?

Könnte bei schlechter Prüfung als URL durchgehen (URN ist es sowieso).
Wird von Firefox ignoriert.
  Mit Zitat antworten
Alt 20.05.2011, 13:31  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von Andreas L. Beitrag anzeigen
Und jetzt die Frage: Wie schauts mit der Sicherheit aus?
Ist in der derzeitigen Form nicht mal ansatzweise vorhanden.

http://wiki.selfhtml.org/wiki/Artikel:Kontextwechsel
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 20.05.2011, 15:26  
Erfahrener Benutzer
 
Registriert seit: 02.09.2009
Beiträge: 1.019
PHP-Kenntnisse:
Fortgeschritten
mquadrat befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von lcrash Beitrag anzeigen
Schon mal jemand probiert, ob ein Browser für
Code:
background: url("javascript:alert(1)");
anfällig ist?

Könnte bei schlechter Prüfung als URL durchgehen (URN ist es sowieso).
IE 6 müsste dafür anfällig sein, wenn ich nicht irre.
__________________
Wir suchen PHP Entwickler (Vollzeit) im Raum Darmstadt / Rhein-Main. Infos via E-Mail mueller@new-frontiers.de
mquadrat ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Grafik und txt-Datei per PHP von einem fremden Server holen karte PHP Einsteiger 8 19.05.2011 16:00
SVG Grafik wird nicht vollständig im Browser angezeigt sunshiny. PHP Tipps 2010 3 14.10.2010 16:37
[Erledigt] AJAX/PHP: Neu erstellte Grafik wird nicht dargestellt comlar JavaScript, Ajax und mehr 2 07.08.2010 16:02
[Erledigt] Mit php gd erzeugte Grafik direkt in html einbinden elMoire PHP Tipps 2009 7 18.02.2009 17:48
Koordinaten des Mauszeigers über einer Grafik (Drag&Drop mit jQuery) anbeck JavaScript, Ajax und mehr 5 19.01.2009 16:28
Polnischen Font in PDFLib einbinden nopileos PHP Tipps 2008 3 11.08.2008 12:21
TinyMCE Editor mit GD Grafik rezix PHP Tipps 2008 8 18.12.2007 22:46
[Erledigt] Grafik in Scheiben schneiden PHP Tipps 2006 6 02.05.2006 18:23
Text und Grafik zentriert in einer Zeile php_frage HTML, Usability und Barrierefreiheit 5 26.04.2006 12:48
Grafik drucken PHP Tipps 2006 13 24.02.2006 23:48
Dynamischer Text in einer Grafik per Formular einfügen PHP Tipps 2005-2 2 19.08.2005 00:55
Grafik über mehrere Zellen einer Tabelle neodrei HTML, Usability und Barrierefreiheit 9 18.08.2005 19:26
in zelle oben text und unten grafik am rand janni HTML, Usability und Barrierefreiheit 4 29.06.2005 23:35
Richtiges Einbinden Mano PHP Tipps 2005 1 04.01.2005 19:40
Grafik in Grafik einfügen Filewalker PHP Tipps 2004 3 20.06.2004 14:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
html bild link einbinden remote, php bild von anderem server einbinden, wenn existiert, bilder php auf schadcode prüfen, remote bild einbetten html, html bilder einbinden php, per php generierte svg grafik in html einbinden, php schadcode in bilder, remote mit grafik, php bilder entferntes verzeichnis auflisten, remote grafik, php remote bild laden wenn nicht vorhanden anderes, php editor grafisch, remote verbindung mit grafikleistung

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:53 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum