|
| Kode i CSS ? Fra : Stig Johansen |
Dato : 19-09-08 05:43 |
|
Hej alle.
Måske skulle den over i clientside, men jeg prøver først her hos CSS
hajerne.
I forbindelse med lidt research til et monitor projekt, er jeg stødt på
denne her:
< http://www.hostmonsterforum.com/showthread.php?t=2767&page=2>
Den handler lidt om hvad svineørerne foretager sig på websider.
Men det, der undrer mig er dette udsagn:
<citat>
I just realized that all *.css and all *.js files on my server have added
code.
</citat>
Virkningen af at injecte kode i .js filer er åbenlys, men CSS ?
Jeg går ud fra der er et formål, så deraf mit spørgsmål:
Kan man indlejre (javascript) kode i CSS ?
I givet fald hvordan ?
--
Med venlig hilsen
Stig Johansen
| |
Erik Ginnerskov (19-09-2008)
| Kommentar Fra : Erik Ginnerskov |
Dato : 19-09-08 06:17 |
| | |
Stig Johansen (19-09-2008)
| Kommentar Fra : Stig Johansen |
Dato : 19-09-08 06:33 |
|
Erik Ginnerskov wrote:
> Stig Johansen wrote:
>
>> Kan man indlejre (javascript) kode i CSS ?
>> I givet fald hvordan ?
>
> Kan man hacke sig ind og pille, kan man også indsætte en import-kommando i
> css. Denne import kan være en php, der laver noget snavs.
Ok - ja det er godt set, tak for det.
Dvs. der er ikke tale om eksekvering af kode i browseren, men aktivering af
en ekstern URL (?).
Det vil i givet fald kunne benyttes til DDoS attacks, samt rapportering til
C&C servere m.m.
--
Med venlig hilsen
Stig Johansen
| |
Rune Jensen (19-09-2008)
| Kommentar Fra : Rune Jensen |
Dato : 19-09-08 09:44 |
|
On 19 Sep., 07:32, Stig Johansen <wopr...@gmaill.com> wrote:
> Dvs. der er ikke tale om eksekvering af kode i browseren, men aktivering af
> en ekstern URL (?).
Man kan importere en fil (fandt jeg så lige ud af). Men om den bliver
eksekveret, hvis det ikke er CSS, er noget andet
http://www.cssnewbie.com/css-import-rule/
....man kunne da godt lave nogle forsøg. Jeg mener at kunne huske,
f.sks. FF er indstillet til at overse alt, som ikke følger
specifikationerne
Noget andet er så, hvad med evil coding i alm. CSS, f.eks.
body{
background: url(evilURL);
}
Er det muligt?
MVH
Rune Jensen
| |
Stig Johansen (19-09-2008)
| Kommentar Fra : Stig Johansen |
Dato : 19-09-08 18:30 |
|
Rune Jensen wrote:
> Man kan importere en fil (fandt jeg så lige ud af). Men om den bliver
> eksekveret, hvis det ikke er CSS, er noget andet
Det var netop det med eksekveringen jeg var i tvivl om.
> Noget andet er så, hvad med evil coding i alm. CSS, f.eks.
> body{
> background: url(evilURL);
> }
> Er det muligt?
Hvis du sætter evilURL til at pege på et offer, og injecter den slags på
tilpas mange hjemmesider har du et effektivt DDoS attack.
Hver eneste besøgende på disse sider vil udløse en request til offeret.
Det ser i øvrigt ud til at der faktisk er mulighed for at eksekvere kode via
CSS:
< http://www.thespanner.co.uk/2007/11/26/ultimate-xss-css-injection/>
Jeg har dog ikke efterprøvet det, min interesse er kun at være opmærksom på,
at CSS kan misbruges.
--
Med venlig hilsen
Stig Johansen
| |
Bertel Lund Hansen (19-09-2008)
| Kommentar Fra : Bertel Lund Hansen |
Dato : 19-09-08 19:27 |
| | |
Stig Johansen (19-09-2008)
| Kommentar Fra : Stig Johansen |
Dato : 19-09-08 21:48 |
|
Bertel Lund Hansen wrote:
> Stig Johansen skrev:
>
>> Hver eneste besøgende på disse sider vil udløse en request til offeret.
>
> ... hvis siden ikke ligger i brugerens cache.
Ja, lidt afhængig af hvad det er for en browser og hvordan den er sat op.
Den 'rigtige' måde at bruge cache på, er at sende en request til serveren
med en if-modified-since header, hvorefter serveren kan svare not modified.
Først her bruges cachen da der ikke kommer yderligere data fra serveren.
IE har en eller anden 'automagisk' indstilling hvor den selv beslutter om,
og hvornår, den skal spørge om ændringer.
Min IE har jeg sat til altid at spørge, for ellers kan man ikke være sikker
på at se aktuelle data.
Firefox synes jeg er blevet rigtig slem, og man skal refreshe i en
uendelighed - føles det som om. Jeg har ikke fundet ud af hvor jeg kan
ændre det i FF.
Bruger mest Konqueror, som opfører sig korrekt.
Men du har ret hvis vi ændrer udsagnet til:
'... hvis browseren ikke spørger om ændringer'
--
Med venlig hilsen
Stig Johansen
| |
Bertel Lund Hansen (19-09-2008)
| Kommentar Fra : Bertel Lund Hansen |
Dato : 19-09-08 22:45 |
|
Stig Johansen skrev:
> Firefox synes jeg er blevet rigtig slem, og man skal refreshe i en
> uendelighed - føles det som om. Jeg har ikke fundet ud af hvor jeg kan
> ændre det i FF.
Kan du ikke sætte cachen til 0 Mbyte? Jeg har ikke prøvet. Hvis 0
ikke dur, så brug 1.
--
Bertel
http://bertel.lundhansen.dk/ FIDUSO: http://fiduso.dk/
| |
Stig Johansen (20-09-2008)
| Kommentar Fra : Stig Johansen |
Dato : 20-09-08 05:19 |
|
Bertel Lund Hansen wrote:
> Kan du ikke sætte cachen til 0 Mbyte? Jeg har ikke prøvet. Hvis 0
> ikke dur, så brug 1.
Det vil ikke være en god løsning.
Hvis man fjerne cachen vil alle filer blive hentet hver gang.
Cachen er god nok, men det er det med datosammenligninger jeg ikke rigtig er
tryg ved.
Under hjælpeteksten (IE) skriver de noget om (kan ikke copy/paste) ved
automatisk:
- Kontrollerer pr. dag
- Holder øje med om den ændrer sig, og kontrollerer 'even less'
Jeg ved ikke med andre, men jeg skal ikke have IE til at bestemme hvornår
jeg skal se nyeste versioner af filer. Man kan reelt ikke stole på man ser
aktuelle data.
Samme med FF (Kim har givet en løsning).
Jeg vil gætte på disse funktioner er lavet for at kompensere for dem der
ikke kan lave hjemmesider uden 100 vis af KB.
At Firefox er 'hoppet med på vognen' undrer mig lidt. Jeg synes ikke det er
troværdigt, men på den anden side har det nok noget at gøre med at FF skal
være lige så 'hurtig' som IE.
Selvfølgelig er det hurtigst, ukritisk at vise cachen, men troværdigt ?
Ikke i mine øjne.
--
Med venlig hilsen
Stig Johansen
| |
Kim Ludvigsen (20-09-2008)
| Kommentar Fra : Kim Ludvigsen |
Dato : 20-09-08 00:14 |
|
Stig Johansen skrev:
> Firefox synes jeg er blevet rigtig slem, og man skal refreshe i en
> uendelighed - føles det som om. Jeg har ikke fundet ud af hvor jeg kan
> ændre det i FF.
Prøv dette:
I adressefeltet, skriv:
about:config
Enter
Bekræft, at du nok skal være forsigtig
I feltet filter, skriv:
doc_fr
Dobbeltklik på linjen browser.cache.check_doc_frequency
Udskift værdien "3" med "1"
Luk siden
--
Mvh. Kim Ludvigsen
Beskyt dine data med stærk kryptering - velegnet til bærbare
computere og USB-nøgler.
http://kimludvigsen.dk
| |
Stig Johansen (20-09-2008)
| Kommentar Fra : Stig Johansen |
Dato : 20-09-08 05:27 |
|
Kim Ludvigsen wrote:
> Dobbeltklik på linjen browser.cache.check_doc_frequency
> Udskift værdien "3" med "1"
Tak, fandt det.
Gad vide hvorfor en sådan, syens jeg, vigtig funktion skal gemmes, i stedet
for at ligge under options.
Og de må være kloge de FF folk, for option 3 siger:
Check for a new version when the page is out of date. (Default)
Hvornår er en version 'out of date' ?
På min hjemmestrikkede server sender jeg ingen information om cache-control
eller expiration-date, så de må have en rigtig god krystalkugle.
--
Med venlig hilsen
Stig Johansen
| |
Rune Jensen (19-09-2008)
| Kommentar Fra : Rune Jensen |
Dato : 19-09-08 12:09 |
|
On 19 Sep., 19:29, Stig Johansen <wopr...@gmaill.com> wrote:
> Det ser i øvrigt ud til at der faktisk er mulighed for at eksekvere kode via
> CSS:
> < http://www.thespanner.co.uk/2007/11/26/ultimate-xss-css-injection/>
>
> Jeg har dog ikke efterprøvet det, min interesse er kun at være opmærksom på,
> at CSS kan misbruges.
Ser jo ud til, det er IE, som er mere sikker dér?
Nu tales der om at "oversætte" koden til entities, men burde begge
metoder, oversat eller ej, ikke være ulovligt/ikke validt i et stilark
- det er jo ikke CSS, og burde kunne tages af en validator også??
Jeg har en fornemmelse af, der har været besvaret noget lign. før.
Var det i forb. med attack/injections via <img HTML-tagget, måske.
Måske spørgsmålet så skal lyde, hvordan browseren ved, at det den har
med at gøre er CSS, script eller HTML. For hvis den ved helt
nøjagtigt, at det er f.eks. CSS, kan den jo bare sortere alt andet
skidt fra (og hvorfor gør den så ikke bare det).
Jeg har ikke hørt om den beskrevne sikkerhedsbrist i CSS før, og jeg
er lettere forundret over, det skulle være så relativt simpelt;)
MVH
Rune Jensen
| |
Rune Jensen (19-09-2008)
| Kommentar Fra : Rune Jensen |
Dato : 19-09-08 12:54 |
|
On 19 Sep., 20:27, Bertel Lund Hansen <unosp...@lundhansen.dk> wrote:
> Stig Johansen skrev:
>
> > Hver eneste besøgende på disse sider vil udløse en request til offeret.
>
> ... hvis siden ikke ligger i brugerens cache.
Det vil den vel ikke gøre, hvis CSSen er ændret siden sidst (hvilket
den vel er, hvis det er injected code)?
Eller hvad?
MVH
Rune Jensen
| |
Philip Nunnegaard (19-09-2008)
| Kommentar Fra : Philip Nunnegaard |
Dato : 19-09-08 19:57 |
|
"Rune Jensen" <runeofdenmark@gmail.com> skrev
> > > Hver eneste besøgende på disse sider vil udløse en request til
> > > offeret.
>
>> ... hvis siden ikke ligger i brugerens cache.
> Det vil den vel ikke gøre, hvis CSSen er ændret siden sidst (hvilket
> den vel er, hvis det er injected code)?
Også min tanke. Men måske kommer det an på den enkelte brugers
browserindstilling.
IE er som standard sat op til at lade cachen overtrumfe den faktiske side,
men selv har jeg sat den til at tjekke "ved hvert besøg på siden", fordi jeg
kun finder cachen nyttig ved større filer eller ved gamle langsomme
forbindelser.
| |
|
|