Twitter url injection exploit

The worm that appeared all over twitter today exploits a few features of the Twitter web site:

  • Twitter loads jQuery. This makes the life much easier for the exploit. Many websites do this. 
  • Twitter has a class named modal-overlay that creates a blocking overlay on top of the entire content. The class is display:none as default, i.e. invisible. Many websites has something similar. 
  • Twitter has a url linker that turns urls in people’s status updates into clickable links. Many websites do this too. This is the key to the exploit. 

The url linker looks for content in the status update that looks like a url. Anything that begins with http:// is a good candidate. It happily continues across quote characters (encoded/masked as &) and It puts the text inside an href attribute.

So if a link text continues with an onmouseover event attribute containing script that submits itself into the user’s status update textarea, Twitter’s url linker happily enters the script into the href of a link tag, but the browser stops at the quote charater and reads the rest as normal attributes, and since web browsers are tolerant for bad html it brings the script to life even if the resulting html is incorrect. Since one of the injected attributes is a class named modal-overlay which is specified as a blocking element that covers the entire web page, it is impossible to do anything without firing the onmouseover event which fires the script so it submits itself into the user’s status update. And then it spreads itself to the followers of that user. At least those who use the Twitter web site. 

Bild_48

This was just a quick explanation, maybe there are some details lurking that I’ve missed or misunderstood. 

Until Twitter fixes the exploit the best thing is to avoid using the Twitter.com web site and use a standalone Twitter client instead

 

Update: Twitter @safety comments the exploit http://twitter.com/safety/status/25118959058

Update 2: Twitter have plugged the XSS exploit now, @delbius of Twitter safety team reports http://twitter.com/delbius/status/25120366027

Update 3: It was apparently an old bug that showed up again. http://gigaom.com/2010/09/21/twitter-website-hacked-user-accounts-filled-with…

Gillarut.se glappar

Uppdaterad – nu är det fixat.

Utan att blanda mig i det politiska just nu så har jag svårt att förstå hur man kan sköta en lansering så här illa. 

En pressrelease som plockades upp av Resumé idag säger ”På sajten Gillarut.se”. 
Skitched-20100826-144633
Det är bara ett litet problem:
Skitched-20100826-144920
Det glappar lite, om man säger så. Adressen fungerar alltså inte utan www, och det var precis så adressen i pressmeddelandet var angiven. 

Ok, man har alltså betalat förmodligen hyggligt stora pengar till en reklambyrå för den här kampanjen, och så missar man så totalt i det tekniska genomförandet med en liten detalj som inte kostar många sekunders arbete att göra rätt. Det handlar om en A record i DNS och att konfigurera webbservern att kännas vid adresser både med och utan www genom ett serveralias. Sedan är det bra att även göra en redirect till www. 

”Utan www? Tänkte inte på det. ”

Så, helt utan kostnad bjuder jag på nya DNS-poster till Gillarut.se. Håll i er nu:
gillarut.se.    A    84.216.4.83
www.gillarut.se.    CNAME    gillarut.se.
Se där, helt gratis var det. Nu är det bara någon som ska peta in detta i DNS. Sedan ska det in något i webbserverns sitekonfiguration också. Hade det varit Apache handlar det om ett serveralias-direktiv, men nu är det IIS så då får någon annan bjuda på den kunskapen. 

Bara för att vara snäll bjuder jag på en länk till Gillarut.se också. 
Skitched-20100826-145812

Uppdatering: Nu fungerar http://gillarut.se. Trevligt att någon tar till sig av gratistipsen. Eller hur det nu gick till. 
$ host gillarut.se
gillarut.se has address 84.216.4.83

På väg till SSWC

Om en stund ska jag ta mig till Rasta på Hallandsås (lite ändrade planer) för att kliva på buss 4 mot Sweden Social Web Camp 2010. 

Här är lite länkar om skriverier och annat om SSWC:

Flickr-grupp med bilder från SSWC, fylls på fortlöpande
Vädret på Tjärö – hade tänkt hoppa över stövlar och seglarställ men packar ner det ändå för att skrämma bort regnet. 
Twitter-flödet om #sswc för den som orkar…
Video om hur planeringen av en okonferens går till
Internet är den nya bilen – intervju med Kristin Heinonen i SvD 
Det är enklast att hitta intressanta projekt på Twitter – Sydsvenskan intervjuar riskkapitalisten Nikolaj Nyholm
Hur konferenser förändrar samhället – Anders Mildner om SSWC och begreppet okonferens

Hundratals nätnördar i gröngräset – SR Blekinge rapporterar, även bildspel

Jag fyller på med mer länkar efter hand. 

Har dekorerat datorn med en passande dekal – det är ju lite hippt. 
Frukost

Posterous load times

This blog is powered by Posterous, a lovely free blog service that is incredibly simple to use so you can focus on content instead of technical details. Just send an email to post@posterous.com and you have created a blog! Attach photos, video and music and they are published with a nice gallery or a media player. It can’t be much easier.

 

But the pages on a Posterous site load way too slow. This is mostly caused by a chain of redirects that happens at every page load. No less than three redirects happen each time via posterous.com/sso/verify/… before the real page is loaded, and with a latency of about 0.5 seconds for each redirect the visitor spends 1.5 seconds waiting before anything useful happens. Add another 1-1.5 seconds latency for the actual page load and we’re up to almost 3 seconds wait before we get to the action and the page starts showing.

See the page load timing chart below.

Bild_39Bild_40Bild_41Bild_42Bild_43

The redirects only to affect blogs with custom domains such as this one. Blogs with URLs ending with .posterous.com aren’t affected so they enjoy much faster load times. Apparently the redirects are to verify Posterous users across different domains, as a single sign-on system (hence ”sso” in the redirect URL).

To be fair, Posterous suffered serious problems with a DoS attack during the last week so pages may have loaded unusually slow or not at all lately, but this doesn’t take away the fact that there are three time consuming redirects at each page load.

This needs to be fixed, Posterous! There must be other less obtrusive ways to handle single sign-on. And once a user is identified and verified (or found to be non-identified), he shouldn’t need to be verified again at each page load.

 

By the way, for Swedish site owners that are interested in optimizing page load times (everyone should, especially since Google has become more interested in response times as a factor to rank a page), Swedish consulting firm Fleecelabs offer a site trimming service called Trimlabb. If you want to do it yourself Yahoo has published Best Practices for Speeding Up Your Web Site which is a must read for web developers.

 

Google Wave floppar

Först ville alla ha Google Wave men ingen fick.

Sedan fick alla ha Google Wave men ingen ville.

Nu vill inte ens Google ha Wave längre.

Så kan det gå. För radikalt och komplext. För hög tröskel för användarna så det floppade. Vi får hålla oss till enklare tjänster som exempelvis Etherpad. Inte mig emot. 

Men jag tror inte Google Wave är dött. Vi kommer säkert att se delar av Waves funktioner smygas in i andra tjänster, framför allt i Gmail och säkerligen integreras i Google Docs på något smart sätt. Och då på ett sätt som är lättare för användarna att ta till sig.

Wave är dött. Leve Wave!

Wave

Photo credit: cookelma edited by Daniele Bazzano

Snart dags för SSWC

Det var ordentlig rusning efter biljetter till årets upplaga av Sweden Social Web Camp eller SSWC, nördhajken på Tjärö den 13-15 augusti. En så kallad okonferens av modernt socialt snitt, mitt i naturen med fåren som sällskap. Jag hängde på låset och fick både biljett till konferensen (nr 5 tror jag) och plats på det åtråvärda vandrarhemmet. Som gammal scout är jag visserligen van vid övernattning i både tält och vindskydd men det blir allt längre sedan och man börjar väl bli lite bekväm. 

Plats på twitterbussen från Göteborg har jag också. Som enda resenär från Halmstad får jag på nåder kliva på i farten på Snapparps rastplats innan bussen tar genvägen över Malmö på väg till Blekinge. 

Hittills är jag nöjd med att jag bara missat en årgång av SSWC. Det låter väl bra. 

Sswcbadge2010

PS. Extra trevligt att loggan ser ut att vara två spinnakerseglande båtar uppifrån

PSI-direktivet – Öppet brev till generaldirektörer och andra myndighetschefer

Kära generaldirektörer, låt oss tillsammans göra världen bättre!

Ni sitter sedan många år tillbaka på stora mängder data som är intressant ur flera aspekter. Det handlar om information som vi skattebetalare redan betalt för. Olika aktörer i samhället kan vidareutnyttja information för olika ändamål, t.ex. genom skapandet av nya e-tjänster, såväl kommersiella och ideella. Men ofta har det varit förknippat med stora kostnader och svårtillgängliga lösningar. Äntligen ser vi en ändring komma till stånd.

Att vi entreprenörer kan ta del av denna information även elektroniskt har vunnit laga kraft sedan idag, den 1:a juli 2010. Den så kallade PSI-lagen (Prop. 2009/10:175) öppnar upp för stora möjligheter att skapa tjänster som förbättrar vardagen för oss alla.

Att ni själva sitter på kunskapen att förädla denna information i viss mån är mycket möjligt, rent av sannolikt, men om fler får möjlighet att jobba tillsammans så kommer garanterat resultaten att bli ännu bättre. Det saknas sannerligen inte internationella exempel på de effekter man får av att släppa publikt data tillgängligt för vidareutnyttjande.

Vi vill därför uppmana alla myndigheter och deras chefer att snarast börja arbeta i PSI-direktivets anda och uppfylla den intention som lagen speglar. Citerar från regeringskansliets sida om PSI – vidareanvändning av information:

”Syftet med lagen är att främja utvecklingen av en informationsmarknad genom att underlätta enskildas användning av handlingar som tillhandahålls av myndigheter.”

För att detta ska bli verklighet krävs i praktiken ett API till era tjänster. Vi vill därför med detta brev uppmärksamma er på behovet av att ni skyndsamt öppnar upp en sådan möjlighet. Först då kan vi börja jobba på allvar, och först då kan både ni, vi, lagstiftarna och samhället se den fulla nyttan av den utveckling som startar nu. Vi är många som är villiga att hjälpa till, så se det här brevet också som en utsträckt hand. Dialogen är igång, nu är bollen er.

Ovanstående text är i huvudsak författad av Jonas Lejon (ansvarig bland annat för tjänsten govdata.se), bearbetad av Joakim Jardenberg (bland annat projektledare för Makten och Öppenheten) och helt fri att kopiera, bearbeta och vidarebpublicera enligt CC0 (det är en nolla, även om det inte ser så ut…).

CSS3 please

Med CSS3 kommer möjligheten att lösa mycket inom webbdesign som man tidigare använt grafik för. Innan CSS3-standarden har satt sig och fått fäste bland den stora mängden webbläsare finns redan nu möjligheten att lösa en del av nyheterna med webbläsarspecifika CSS-element. 

Men det gäller bara att hålla reda på hur man anger detta för olika webbläsare, och som hjälp för detta finns css3please.com (presenteras här) som helt enkelt skapar CSS-koden för klassiska webbdesign-utmaningar som rundade hörn, rotering, bakgrundsgradienter, transparens, och skuggning. Men tyvärr fungerar inte rundade hörn med IE6, 7, 8 och det är kanske den som hade varit mest trevlig att kunna använda. Det finns dock ett projekt curved corner som använder en HTC-fil (HTML Component) för att ge IE samma stöd för border-radius som mer rumsrena webbläsare har. Det har dock inte fungerat så bra när jag försökt använda det på en befintlig design. 

Det är inga vackra lösningar och css-valideringen blinkar rött, men den som väntar på något gott…

Uppdatering: Här finns en liknande tjänst www.css3maker.com som även länkar till systertjänsterna www.html5generator.com (coming soon) och www.onlycssmenu.com.