sikkerhet
Denne feilen må du ikke finne på å gjøre. Men den er ikke uvanlig
Norsk firma lekket backup og egen kildekode i nettbutikken.
Det mye som kan gjøres for å forsterke sikkerheten til nettsteder og webapplikasjoner. Dette gjelder også nettsteder som kjøres i webhoteller. Det er i stor grad nettstedeieren selv som må sørge for sikkerheten. For at det skal være enkelt å komme i gang, er ting sjelden så avsperret og begrenset som det bør være.
I denne artikkelen skal vi ta for oss én eneste innstilling som er veldig enkel å sette, og som det er veldig fort gjort å glemme å ta hensyn til. Konsekvensene kan være store, for ofte kan en slik forglemmelse oppdages av uvedkommende gjennom et enkelt internettsøk.
Backup og databasefiler
I september i fjor oppdaget Roy Solberg, en sikkerhetsinteressert utvikler som digi.no har omtalt en rekke ganger, at en norsk bransjeforretning med både fysisk og nettbasert butikk, hadde gjort sikkerhetskopier av hele nettstedet, samt en database med både kunde- og handelsdata, tilgjengelig via nettstedet til nettbutikken.
Kundedatabasen inneholdt blant annet navn, epost, adresse og telefonnummeret til hver av de rundt tusen kundene, i tillegg til hashet og saltet passord, samt komplett kjøpshistorikk.
Solberg har valgt å ikke oppgi hvilken butikk det dreier seg om, da det er lite som tyder på at dataene har blitt lastet ned av andre. Solberg skriver mer om denne beslutningen i sitt blogginnlegg om saken.
Datalekkasjen skyldte at de aktuelle filene var lagret i mapper som var åpent tilgjengelige på nettstedet.
Mappehierarki
I mange tilfeller er nettsteder basert en mappehierarki med en dokumentrot-mappe på toppen. Hele eller deler av denne strukturen kan bli avslørt av URL-ene til nettstedet, som i det reelle eksempelet nedenfor, hvor vi bare har skiftet ut domenenavnet.
https://www.nettsted.no/wp-content/uploads/sites/4/backup/
Her kan enhver nettleserbruker fjerne deler av URL-en for å bevege seg lenger opp i mappehierarkiet, for eksempel til:
https://www.nettsted.no/wp-content/uploads
I en slik mappe kan det ligge mye som kanskje ikke alle og enhver bør ha enkel tilgang til, dersom muligheten til å gjøre nettopp dette ikke har blitt stengt.
I det reelle eksempelet over fungerer URL-en over og viser en oversikt over innholdet i mappen uploads, inkludert en rekke undermapper som enhver navigere til. I dette reelle tilfellet inneholder mappene tilsynelatende bare bilder som uansett er offentliggjort på det aktuelle nettstedet. Men det kunne like gjerne ha vært filer som egentlig ikke bør være tilgjengelige på weben.
Helt nødvendig å kjenne til
Årsaken til at det er mulig å se innholdet i mappene, er at det å vise en slik oversikt, er standardfunksjonalitet i mange webserverinstallasjoner. Dette er noe administratorer kan skru av eller på ved behov. Avhengig av det sentrale oppsettet, kan dette være aktivert som standard.
Dersom nettstedeieren ikke har tilgang til å endre den sentrale innstillingen, noe som gjerne er tilfellet i webhoteller, må listingen deaktiveres for hver mappe.
Hvordan dette gjøre, avhenger av hva slags webserver som benyttes. Vi har funnet fram til oppskrifter for noen av de vanligste webserverne her: Apache, Nginx, IIS.
«Google-dorking»
De fleste nettsteder har heldigvis kontroll på dette og sørger for at det ikke er mulig for eksterne brukere å liste innholdet i slike mapper. Som angriper er det derfor lite effektiv å prøve dette på enkeltnettsteder.
Det Solberg hadde gjort da han oppdaget tilfellet med den norske nettbutikken, var å utnytte de mer avanserte søkemulighetene i Google. Dette kalles for Google-dorking eller Google-hacking.
Mappelistinger som de nevnte har gjerne en del fellestrekk, i alle fall så lenge de er levert fra den samme typen webserverprogramvare. Solberg søkte etter denne strengen:
intitle:"index of" intext:backup
Mappelistinger fra Apache vises på sider som har en tittel som begynner med «index of», og dersom ordet «backup» finnes i teksten på siden, så antyder jo det at slike sikkerhetskopier kan være tilgjengelige via nettopp denne websiden.
Nok av tilfeller
Solberg varslet den aktuelle nettbutikken, og halvannen time senere fikk han svar fra nettbutikkens IT-leverandør som takket ham for at han hadde varslet dem.
Digi.no har spurt Solberg om han har inntrykk av at slike åpne mapper eller kataloger er et utbredt problem.
– Det er veldig vanlig at kataloger på webservere er åpne. Det var nok enda vanligere før da Apache (gjerne med LAMP-stacken) virkelig dominerte tjenestene vi bruker til daglig. Som oftest går det greit at en katalog er åpen, men det er nok av tilfeller der det avslører for mye, skriver Solberg i en epost til digi.no.
Han nevner blant annet et tidligere tilfelle han har omtalt, hvor han fant flere PHP-skripts som han ikke ville ha gjettet adressen til.
– Flere av disse ga ut ulik informasjon om brukerne, skriver Solberg.
– En variant av disse åpne katalogene i dag er jo såkalte «buckets», som ikke er innstilt til å ikke oppgi alle filene som er der. Det har det vært nok av eksempler på de siste årene.
Må filene være på nett?
Solberg mener det kan være lurt for nettstedeiere å stille seg spørsmålet om de ville ha hatt noe imot å ha åpne mappelistinger i utgangspunktet.
– Hvis man virkelig ikke ønsker det, så bør man kanskje vurdere om filene burde vært tilgjengelig via internett i første omgang, skriver han.
Solberg anbefaler alle IT-selskaper å google seg selv, samt å leie inn et eksternt selskap til å gjøre penetrasjonstester og jevnlige sikkerhetsrevisjoner.
– Teknisk sett er det utrolig enkel for en systemadministrator å gjøre feil som dette. Men det er noe du bare ikke kan gjøre, avslutter Solberg.