Mens Asprox-virussen hærgede for nylig, fik it-ansvarlige landet over noget at bekymre sig om i ferien. Hvor sikre er mon deres websider, når en virus har travlt med at snyde sig vej til SQL-databasen?
Version2 har spurgt to CMS-firmaer om hvilke sikkerhedsaspekter, man skal holde øje med som kunde, når et CMS skal indkøbes, udvikles eller ses efter i krogene.
Få et CMS med et abstraktionsniveau mellem SQL-databasen og resten af systemet. Det er rådet fra Michael Seifert, direktør for den store danske CMS-producent Sitecore. Når der er et lag i midten, som arbejder i XML, kan virussen nemlig ikke få adgang til databasen.
»Så er der skærmet af, og så er virussen ikke et problem,« siger Michael Seifert.
Del systemet i to
Niels Hartvig, direktør for Umbraco som står bag open source-CMS'et af samme navn, anbefaler et system, der kan deles i to: Et "live-miljø" uden skriverettigheder, og et redaktør-miljø, der kan lægges på en anden server bag en firewall. Så er præsentationsdelen helt kapslet ind og har ikke har adgang til databasen.
Når det rigtige CMS-system er fundet, skal det sættes op og tilrettes. Det foretages typisk af et konsulentfirma, som opsætter hele sitet. Her kommer der tit nogle ekstra sider på, der får direkte adgang til databasen.
»Her kan man også bygge et abstraktionsniveau ind, men problemet er selvfølgelig, at det koster ekstra timer på din regning hver gang. Og det er et sted, hvor der ofte bliver sparet,« siger Michael Seifert.
Når nogle af websiderne har direkte adgang til databasen, kan der komme sårbarheder, hvis udvikleren har en dårlig dag og kvalitetssikringen ikke er god nok.
»Det er ikke noget problem for en dygtig programmør at sikre en side med direkte adgang til databasen mod angreb, men der kan jo ske fejl alle steder, der er mennesker involveret«, siger Michael Seifert.
Begræns brugernes rettigheder
Opstår der en sårbarhed, er det vigtigt, at alle brugere ikke har fulde rettigheder til hele systemet, men kun til det, de arbejder med.
»Jeg tror, man vil blive overrasket over hvor mange sites, der kører med noget nær en systemadministrator-konto med fuld adgang til hele databasen. Der mangler best practice omkring det, så de forskellige lag af websitet får forskellige rettigheder. Der er som udgangspunkt ingen grund til at selve websitet skal have samme skriverettigheder til databasen som redigeringsmiljøet,« siger Niels Hartvig.
Michael Seifert anbefaler desuden, at man sikrer sig, at leverandøren som minimum kører en række standardtest mod sårbarheder som cross-site scripting og SQL-injektion.
Når websiden er klar til brug, råder Niels Hartvig til en omgang hjemme-hackning, før man går live.
»Der findes mange gratis programmer, som kan teste et site for sårbarheder. Så sender man en robot af sted med en uskadelig SQL-injektion og ser, om den finder noget,« siger han.
To af værktøjerne finder du under 'eksterne links' nederst her på siden.
Når websiden er oppe, er det hurtig lapning af sikkerhedshuller, der er afgørende. Her minder open source-manden Niels Hartvig om, at man med lukket software kan risikere at skulle betale for sikkerhedsopdateringerne.