Externe css Datei einbinden - Gefahren?
T-Rex
- css
Moin,
da gibts so eine Seite die stellt etwas dar. Um es einfach zu halten sagen wir mal da ist eine box. die ist per default rot.
Diese Seite kann sich jeder einbinden der lust hat. Unter anderem per Iframe. Bei dieser Lösung hat derjenige der den Iframe einbinden keinerlei Chance auf das Layout (oder Farben) Einfluss zu nehmen. Deshalb meine geniale Idee, eine CSS Datei mit zu laden. Das ganze sieht dann so aus:
iframe src='www.example.org?css=externe-css-datei'
Auf der Seite wird dann der Parameter "css" als Link zu einer Css Datei ins HTML gebaut.
Da es sich "nur" um css handelt sollte es kein großes Gefahren geben? Oder übersehe ich was? Kann man eine Webseite mit einer CSS Datei hacken? Im Moment ist nur die Gefahr des XXS da ja ein Parameter der Url in die Webseite gesetzt wird. Oder hab ich was übersehen?
Gruß
Gefahrloser
T-Rex
Ja, CSS kann auch aktive Inhalte enthalten, z.B. behavior, calc (womöglich CPU-Teergruben), javascript-Pseudo-URLs. Weitere Risiken: Netzwerküberlastung, Netzwerkteergruben, Einbettung von illegalem Schweinkram als Bild, DoS mittels Einbetten von Dokumenten von Drittparteien. Insgesamt ist nicht abzuschätzen, was alles schief gehen kann, wenn du fremde Inhalte von böswilligen Benutzern ungefiltert übernimmst, welche sich auch noch jederzeit ändern dürfen.
Die bewährte Vorgehensweise im Hinblick auf die Sicherheit ist es, zunächst ein strenge Ausnahmeliste (Whitelist) zu erzeugen, dann Benutzereingaben/-dokumente hindurchzufiltern, z.B. mittels http://p3rl.org/CSS::Adaptor::Whitelist. Das Ergebnis hostest du selber!
Puh das klingt ja alles gar nicht so nett.
Die Idee dahinter ist, dass jemand Content per Iframe auf seine eigene Seite holt. Damit er Einfluss auf das Styling hat ist uns eben die Idee mit dem Parameter in der Url gekommen. Darüber soll die Css Datei übergeben werden, welche dann eingebunden wird.
Wenn jetzt jemand Scheisse baut, schadet er doch nur sich selbst?
Gruß
der Typ der nie Scheisse in einem Post schreiben wird
T-Rex
Hallo,
Wenn jetzt jemand Scheisse baut, schadet er doch nur sich selbst?
vor allem den nichtsahnenden Nutzern, die "seine Seite" mit "eurem iframe" und "seinem bösen Stylesheet" laden.
der Typ der nie Scheisse in einem Post schreiben wird
Niemals! ;-)
Ciao,
Martin
Wenn jetzt jemand Scheisse baut, schadet er doch nur sich selbst?
Nein, er schadet (neben sich selber) auch dem Content-Lieferanten.
Beispiele hat CPan ja hierfür genannt.
Grüße, Heinz
مرحبا
Damit er Einfluss auf das Styling hat ist uns eben die Idee mit dem Parameter in der Url gekommen. Darüber soll die Css Datei übergeben werden, welche dann eingebunden wird.
Mach doch 5 - 10 verschiedene Versionen und biete diese zur Auswahl an.
iframe src='www.example.org?v=1;color:2;bgcolor:3;border:2'
so in etwa.
mfg
@@Malcolm Beck´s:
nuqneH
iframe src='www.example.org?v=1;color:2;bgcolor:3;border:2'
Semikolon als Trennzeichen. Love it.
Qapla'