X-Content-Security-Policy på MozillaDanmark.dk

31. august 2010 af Jesper Kristensen med Ingen kommentarer »

Firefox 4 er på trapperne (den er som jeg tidligere har nævnt i Beta lige nu), og den indeholder blandt andet nye sikkerhedstiltag, som hjemmesider kan gøre brug af. En af disse er Content Security Policy, forkortet CSP.

CSP er et ekstra lag af sikkerhed, man kan tilføje til sin hjemmeside. Lidt lige som User Access Control i Windows, Protected Mode i Internet Explorer og sandboxing i Google Chrome, giver CSP en ekstra beskyttelse, i tilfældet af at der skulle være et sikkerhedshul et eller andet sted. Men hvor de tre andre metoder er til styresystemer og programmer, er CSP til hjemmesider.

CSP er en HTTP header på en hjemmeside, som fortæller hvad hjemmesiden må gøre. Hvis en hacker får adgang til at smugle ondsindet kode ind på hjemmesiden, vil CSP i visse tilfælde kunne forhindre den i at gøre skade, da CSP-politikken ikke giver tilladelse til at gøre hvad end det ondsindede stykke kode måtte finde på. På http://mozilladanmark.dk/ ser CSP-headeren således ud:

X-Content-Security-Policy: allow ‘none’; img-src ’self’; style-src ’self’; object-src ’self’; options inline-script

Her står at siden må indhente billeder, CSS style sheets og plugins fra samme domæne (mozilladanmark.dk), mens den ikke må hente nogen andre resurser nogen steder fra. Det kunne fx være scripts, videoer eller iframes. Billeder og style sheets bruger vi masser af, og plugins bruger vi på siden testjava.

Den sidste tilladelse i vores CSP er “options inline-script”, som gør at vi kan udføre inline JavaScript på siderne produkter, thunderbird og kompozer. Egentligt burde jeg have placeret scriptet i en ekstern .js fil og brugt en “script-src ’self’”-tilladelse, men jeg var doven her. inline-script i CSP er kun tiltænkt til brug som en midlertidig overgang. I de fleste dynamiske hjemmesider laves HTML’en dynamisk, så at tillade script her er normalt usikkert. Med script-src har man bedre kontrol over hvorfra scriptet kommer. Det er de færreste hjemmesider der leverer dynamisk genereret indhold med en “Content-Type: application/javascript” HTTP header.

Ved at begrænse tilladelserne til nøjagtigt hvad siden bruger, sikrer vi at hvis en hacker får smuglet noget som helst andet ind, vil det blive afvist af Firefox 4. Det er vigtigt at være opmærksom på at CSP er et ekstra lag beskyttelse. Man skal stadig lave sin hjemmeside, så den er sikker uden CSP.

Jeg har kun tilføjet CSP til vores statiske sider under adressen http://mozilladanmark.dk/, hvilket ikke inkluderer vores forum, wiki og blog. Nu tænker du måske at jeg bruger CSP der hvor der er aller mindst brug for den, og du har da også ret. Grunden er at vi ikke selv laver vores forum-, wiki- og blog-software. Det er udviklerne af denne software, der skal anvende CSP, hvis de vil. Jeg har kun tilføjet CSP til de sider jeg selv har lavet.

Tilføjelsen af CSP har allerede afsløret en fejl på MozillaDanmark.dk. Vi bruger XHTML, vel at mærke HTML5-definitionen af XHTML, hvor siden læses af browserens XML-parser i stedet for HTML-parseren. XML-standarden dikterer at browseren ikke nødvendigvis skal stille HTML-entities til rådighed, når siden læses som XML. Det vælger Firefox dog at gøre, men det er stadig en god ide at lade være med at bruge dem, da andre browsere ikke nødvendigvis gør det. På vores thunderbird-side havde vi dog overset dette. Vi havde brugt HTML-entiteten ­, som jeg nu har udskiftet med XML-varianten ­. Grunden til at CSP fangede dette er relateret til følgende besked i Firefox fejlkonsollen:

CSP: Directive “allow ‘none’” violated by resource://gre/res/dtd/xhtml11.dtd

Det betyder ganske enkelt at jeg i min CSP ikke har tilladt resource://gre, og at det derved ikke er tilladt for browseren at indlæse HTML-entities som fx ­ på siden.

CSP er i øjeblikket ikke en standard. Det er lavet af Mozilla og virker i øjeblikket kun i Firefox 4. Men andre browser-producenter (herunder IE-teamet) har givet rosende ord til CSP, så man kan håbe de også vælger at implementere det, hvis det bliver populært blandt hjemmesider. Af andre sikkerhedsnyheder i Firefox 4 kan nævnes X-Frame-Options, som dog også kommer i Firefox 3.6.9. X-Frame-Options er heller ikke en standard, og blev oprindeligt introduceret af Internet Explorer, men er nu understøttet af flere browsere. Hos MozillaDanmark bruger vi dog ikke X-Frame-Options, da alle de sider hvor det er relevant, er lavet af andre (forummet, wikien og bloggen), og at bruge det på sider, hvor det ikke er nødvendigt, har nogle ulemper. Fx vil sider der bruger X-Frame-Options ikke kunne ses i Google billedsøgning, da billedsøgningen netop indrammer siden i en frame.

Så er der en ny Firefox 4 Beta klar

24. august 2010 af Jesper Kristensen med Ingen kommentarer »

Den næste Firefox 4 Beta er klar til at blive downloaded og gennemtestet af dig.

Download Firefox

Blandt nyhederne er Firefox Sync, hvormed du på sikker vis kan dele bogmærker, historik, gemte adgangskoder osv. mellem Firefox på flere forskellige computere (fx arbejdet og hjemme) og på mobilen. Du får også en ny måde at organisere faneblade på, med Firefox Panorama. En fuld beskrivelse af disse to nyheder inklusiv videoer af dem kan ses i den engelske annoncering af denne Beta-opdatering.

Til webudviklerne er der i forhold til den forrige beta nu bedre understøttelse af HTML5 Video samt en mere effektiv, dog stadig eksperimentel, metode til at lave animationer i JavaScript.

Prøv den, og glem ikke at fortælle hvordan du oplever den, enten her, i vores forum, eller via den indbyggede Feedback-knap. Vi har allerede lært en del via den feedback vi har fået, og vi vil gerne have endnu mere. Fx er jeg selv via den indbyggede Feedback-knap blevet mindet om at opdatere den danske ordbog til stavekontrollen, så brugere af en ikke-dansk Firefox 4 Beta også kan få dansk stavekontrol.

Prøv Firefox 4 Beta!

12. august 2010 af Jesper Kristensen med 1 kommentar »

Den nye Firefox 4 kommer nærmere og nærmere, og er fuld af spændende nyheder og forbedringer. Mozilla vil gerne sikre at Firefox 4 bliver den bedste browser nogen sinde, og til det har vi brug for at du prøver betaen og fortæller os hvad du synes om den og ikke synes om den.

Skærmbillede af Firefox 4 Beta

Så skynd dig at hente Firefox 4 Beta på dansk, og brug Feedback-knappen i øverste højre hjørne til at fortælle os, hvis du oplever noget godt eller skidt med Firefox 4. Vi har brug for så meget feedback som muligt, og vi lytter til alle.

Skærmbillede af Feedback-knappen

Firefox 4 Beta har været i gang siden starten af sommeren, men vi skriver først nu om den her på siden, da den første Beta på dansk lige er kommet.

Her er en opsummering af nogle af nyhederne i Firefox 4:

  • Faneblade vises i toppen af vinduet.
  • I Windows 7 og Windows Vista er den traditionelle menulinje erstattet med en ny simplere Firefox-knap. Den kan tilvælges manuelt på andre operativsystemer.
  • App Tabs, der kan køre webapplikationer som fx Gmail så de mere ligner almindelige programmer. Se også videoen.
  • HD video: fuldskærms-video er nu hardwareaccelereret og Googles nye WebM-format understøttes, så du kan se HD-videoer på YouTube direkte i browseren.
  • Ny håndtering af tilføjelser, som vises i et faneblad i stedet for en selvstændig dialogboks.
  • En rettelse i implementeringen af CSS-standarden, så hjemmesider ikke længere kan se hvilke andre sider du har besøgt.
  • Beskyttelse mod nedbrud i plugins, som blev introduceret i Firefox 3.6.4 er udvidet til at omfatte alle plugins, og er nu også tilgængelig på Mac’en.

Under kølerhjælmen er en række forbedringer, som blandt andet har betydning for webudviklere og udviklere af Firefox-tilføjelser:

  • CSS3 Transitions gør det nemt at lave elegante animationer. Se demoen.
  • Layers & Retained Layers udnytter hardwareacceleration og giver hurtigere scrolling.
  • Ændringer i XPCOM, som gør Firefox hurtigere, men som også kræver ændringer i en del tilføjelser før de kan virke med Firefox 4.
  • HTML5 Parser er en fælles indsats blandt browserleverandører, blandt andet med det formål at alle hjemmesider skal vises ens uanset hvor mange syntaksfejl de måtte indeholde.
  • WebSockets kan bruges til at lave realtids-webapplikationer som fx online spil og chat.
  • IndexedDB giver mulighed for at gemme større mængder struktureret data på klienten med bedre ydeevne og offline tilgængelighed som nye muligheder.
  • Web-konsol er en funktion til at se hvad der sker i en webside.
  • Mulighed for at lave tilføjelser, der kan installeres/afinstalleres/opdateres og så videre uden en genstart af Firefox, samt nemmere udvikling af tilføjelser med det nye Jetpack SDK.
  • HTML5 Forms giver mulighed for at lave simple form inputs hvor browseren tager sig af forkerte inputs og hjælper brugeren med at udfylde felterne.
  • HTML5 History gør det muligt for AJAX-baserede webapplikationer at fungere med brug af frem- og tilbage-knapperne.
  • URI’er i File API’et og FormData-objektet gør det muligt at håndtere store filer med JavaScript uploads.
  • Nye CSS-egenskaber og -selektorer som resize, any, calc og image-rect.
  • Touch screen API.
  • Content Security Policy, hvor hjemmesiden selv specificerer hvilke potentielt risikable funktionaliteter den vil bruge og har sikret sig selv imod, hvorved alt andet vil blive blokeret.
  • Se den fulde liste.

Sagt igen, prøv betaen. Den er for alle, der vil være med til at forme hvordan Firefox 4 kommer til at se ud, og du behøver ikke gøre andet end at bruge den og give os feedback.

Du kan sige din mening via Feedback-knappen i betaen, i kommentarfeltet her på bloggen eller i vores forum. Så hvad synes du generelt om Firefox 4? Føles den nemmere at bruge? Føles den hurtigere? Er der websider der ikke virker lige så godt som i den forrige udgave? Nogen der virker bedre?

Referencer for nyhederne i Firefox 4: 1 2 3

Hvor svært kan det være at lave login til banker og offentlige hjemmesider?

2. august 2010 af Jesper Kristensen med Ingen kommentarer »

Både det nye NemID og dens mange forgængere har altid været meget omdiskuteret omkring sikkerhed og teknisk besværlighed. Jeg har skrevet lidt om hvad jeg synes om NemID på en engelsk Mozilla-blog, men vil da også gerne lige give et link her.

Min holdning er at grundideen er god, men den bliver både brugt forkert og teknikken er ikke med endnu.

Thunderbird 3.1 og Lignthing 1.0b2 udgivet

24. juni 2010 af Jesper Kristensen med Ingen kommentarer »

Så er Thunderbird 3.1 her på dansk til Windows, Linux og Mac med dens tro følgesvend Lightning 1.0b2. Blandt nyhederne i Thunderbird 3.1 er den nye Lynfilter-værktøjslinje, en bedre opgradering fra Thunderbird 2 og en masse små forbedringer og rettelser. Den kan hentes fra Mozillas hjemmeside.

Firefox 3.6.4 udgivet

22. juni 2010 af Jesper Kristensen med Ingen kommentarer »

Nu er Firefox 3.6.4 klar til download enten fra Mozillas hjemmeside eller fra menuen Hjælp, menupunktet Tjek for opdateringer.

Firefox 3.6.4 har en enkelt større nyhed, som er kørsel af plugins i selvstændige processer på Windows og Linux (Mac OS kommer først med i Firefox 4). Det betyder at hvis Flash, Silverlight eller QuickTime går ned, så vil Firefox ikke længere ryge med i faldet, og du kan fortsætte med at surfe. Hvis du oplever at din Firefox går ned en gang i mellem, så vil du sikkert få glæde af denne opdatering. Langt over halvdelen af alle nedbrud i Firefox skyldes nemlig plugins.

Nedbrud i Firefox-pluginnet Flash

Den nye version udsendes automatisk som en sikkerheds- og stabilitetsopdatering til alle, som har Firefox 3.6.x, så du behøver ikke at gøre noget for at få den. Det er første gang Mozilla introducerer større ny funktionalitet i en sikkerheds- og stabilitetsopdatering, men formegenligt ikke den sidste. Det nye åbne videoformat WebM fra Google er en af kandidaterne, som måske vil komme i en lignende opdatering senere.

Test Firefox 3.6.4 – Beskyttelse mod nedbrud i plugins

8. juni 2010 af Jesper Kristensen med Ingen kommentarer »

Firefox 3.6.4 er snart ved at være klar til udgivelse. Denne version er speciel, da det er første gang Mozilla udgiver en større nyhed i en automatisk sikkerheds- og stabilitetsopdatering. Opdateringen vil køre videoer, animationer og spil lavet med Flash, Silverlight og QuickTime i en separate proces (kaldet Out Of Process Plugins), hvilket betyder at Firefox og alle dine faneblade vil forblive åbne, selv hvis en af disse plugins går ned.

Du kan hjælpe med at gennemteste Firefox 3.6.4 før den endelige udgivelse, så vi kan være sikre på den virker lige så godt som Firefox 3.6.3.

Thunderbird 3.1 Release Candidate er her

27. maj 2010 af Jesper Kristensen med 2 kommentarer »

Så er release candidate af Thunderbird 3.1 klar til test, og kan hentes på dansk fra Mozilla Messagings hjemmeside. Prøv den hvis du vil hjælpe med at teste den, eller vent til den endelige udgave kommer om ganske kort tid. Vi vil som altid gerne høre fra dig hvis du har kommentarer til oversættelsen.

Nogle af nyhederne i Thunderbird 3.1 er en forbedret hurtig søgning efter mails i en given mappe samt en forbedret opdatering fra Thunderbird 2.0. Desuden bringer den nye version Thunderbird op på den nyeste Mozillaplatform som også bruges af Firefox 3.6.

Til fodbold- og Firefox-fans

25. maj 2010 af Jesper Kristensen med Ingen kommentarer »

I anledningen af VM vil Mozilla afholde Firefox Cup, og vi har brug for en der vil hjælpe med at oversætte de 200 ord som sitet består af til dansk. Hvil du hjælpe, så deltag i bug 567537.

Åben HTML5 Video med WebM

19. maj 2010 af Jesper Kristensen med Ingen kommentarer »

Rygtebørsen har været i gang i lang tid siden Google købte On2, men i dag blev WebM endeligt annonceret. WebM består af:

  • Video-codec’et VP8, som Google fik da de købte On2, og som Google nu har givet helt frit.
  • Audio-codec’et Vorbis, som også er åbent og som allerede i dag er understøttet af fx Firefox 3.6.
  • Et container-formatet, som er et subsæt af formatet Matroska.

WebM vil blive understøttet i browserne Firefox, Opera og Google Chrome, samt i Flash-pluginnet. Desuden bliver alle YouTube videoer tilgængelig i WebM-formatet, og en række andre store spillere inden for video har meldt deres støtte til formatet.

Dette er en stor dag for åben og tilgængelig video på nettet, som frit kan produceres og afspilles af alle.