Alvorligt sikkerhedshul på cvr.dk

Version2 blogger Kræn Hansen har opdaget et sikkerhedshul på hjemmesiden for CVR-registeret, cvr.dk, som Erhvervsstyrelsen står bag. Der er tale om et persistent cross-site-scripting hul, som gør det muligt for en angriber at få siden til at køre javascript, hvis angriberen opretter en virksomhed.

Kræn Hansen, der til dagligt læser Computer Science på DTU, fandt ud af, at hvis der bliver sat særlig HTML-kode ind i et adressefelt i forbindelse med oprettelsen af en virksomhed på cvr.dk, så er det muligt at hive javascript ind på siden fra et eksternt site. Og ad den vej har det været muligt at præsentere vilkårligt indhold på cvr.dk.

Læs også: In data we trust! XSS sårbarhed på CVR.dk

»Det er jo et spørgsmål om at en ondsindet person vil kunne mistbruge den tilid, som folk lægger i de data, som cvr.dk præsenterer,« siger Kræn Hansen.

Et cross-site-scripting angreb kan fungere ved, at en ondsindet person lokker et offer til at klikke på et særligt udført link, der præsenterer ofret for angriberens indhold på en hjemmeside, som angriberen ikke ellers har kontrol over. På den måde kan det se ud som om, det er personen eller organisationen bag hjemmesiden, der er afsender på indholdet.

Persistent cross-site-scripting

Den angrebsvektor, Kræn Hansen er faldet over, er dog på sin vis værre.

For her er der som nævnt tale om et persistent cross-site-scripting angreb. Det persistente består i, at en angriber ikke længere behøver lokke et offer til at klikke på et særligt link, da den ondsindede kode bliver lagret i CVR-registrets database, og dermed automatisk hentet frem, når en bruger besøger siden.

Som Kræn Hansen beskriver i sit blogindlæg, kan det foregå ved, at angriberen opretter en virksomhed på cvr.dk og indtaster HMTL-koden, der hiver javascript ind på siden, i et adresse-felt. Fremover vil alle, der besøger siden med virksomheden, enten ved selv at søge sig frem til den, eller ved at klikke på et direkte link til den, blive præsenteret for en side under cvr.dk, hvor en angriber har fuldstændigt kontrol over indholdet.

Og Kræn Hansen kan sagtens komme i tanke om, hvordan det vil kunne misbruges. Eksempelvis i forhold til antallet af ansatte og dermed virksomheden størrelse, som via cross-site-scriptet vil kunne manipuleres på cvr.dk, hvilket i sidste ende kunne påvirke sådan noget som investeringslysten i virksomheden.

»Det er noget der bliver trukket fra Skat og så videre, det er ikke data, man normalt har skriverettighed til, men det er noget, jeg kan ændre alligevel, når jeg overtager den del af websitet,« siger han.

Kræn Hansen har, som en god whitehat-hacker jo gør, rettet henvendelse til Erhvervsstyrelsen, inden han gik ud med oplysningerne om den potentielle angrebsmulighed. Og det potentielle sikkerhedshul er nu lukket.

Erhvervsstyrelsen er taknemmelig

It-chef i Erhvervsstyrelsen Morten Kildevang Jensen beskriver den sårbarhed, som Kræn Hansen fandt frem til, og som nu er lukket, som alvorlig.

»Denne type fejl har meget høj prioritet i Erhvervsstyrelsen og vurderes til at være i kategorien alvorlig, da brugerne skal kunne stole på data såvel som den kanal som udstiller data,« skriver Morten Kildevang Jensen i en mail.

Det er uvist, hvornår fejlen er opstået, men den kan have eksisteret i længere tid, oplyser Morten Kildevang Jensen. Han fortæller, at Erhvervsstyrelsen løbende overvåger tilstanden på alle selvbetjeningsløsninger.

»Men der er altid den mulighed, at brugerne opdager sikkerhedsproblemer inden Erhvervsstyrelsen. Vi er derfor altid interesseret i at høre fra vores brugere, hvis de oplevere situationer, hvor sikkerheden er truet. Generelt er Erhvervsstyrelsen taknemmelige for, at eventuelle sikkerhedsbrister på cvr.dk, indmeldes direkte til Erhvervsstyrelsen, således at eventuelle fejl kan rettes hurtigt – som det er sket i denne sag,« skriver Morten Kildevang Jensen.

Posted in computer.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>