Pseudonymisering

Pseudonymisering, eller tvättning, av loggar kan behöva ske av många skilda anledningar. Det kan vara att en produkt som hanterar säkerhetsrelevant (kanske sekretessbelagd) information krånglar och leverantören vill ha loggar från produkten. Eftersom det kan finnas säkerhetsrelevant information i loggarna behöver dessa gås igenom innan leverantören kan ges tillgång till dessa.

VARFÖR BEHÖVS PSUDONYMISERING?

Hur du går tillväga.

Är det många olika typer av säkerhetsrelevant information som behöver inspekteras och om mängden loggar är stor kan det bli ett så stort arbete att produkten installeras om istället. Då förstörs också bevisen för vad som krånglade och felet kan uppstå igen.

Ett annat scenario för när tvättning av loggar behövs är när loggar innehåller säkerhetsrelevant information men ägarna av loggarna vill kunna dela dessa med externa parter. Den externa parten kan erbjuda analys, forensisk undersökning eller liknande men säkerhetsföreskrifterna för ägaren av loggarna förbjuder att viss information lämnas ut. Informationen måste då först tvättas, innan den kan lämnas ut till tredje part.

En man håller i en ipad kollar på den.

Hantering av PUL.

Sverige har en lagstiftning runt personuppgifter, PuL (Personuppgiftslagen, http://www.datainspektionen.se/lagar-och-regler/personuppgiftslagen/) som också kan påverka. Om loggar innehåller personuppgifter och dessa ska delas med tredje part regleras detta i PuL. Med en tillräckligt bra pseudonymisering kan personuppgifterna avpersonifieras så att PuL inte längre gäller för det tvättade datat. Dock gäller det då att det inte går att härleda en händelse till en nu levande person, så:

  1. Tvättningen får då inte byta en person till en annan nu levande person
  2. Tvättningen får inte gå att göras i andra hållet. Alltså, det ska inte finnas något sätt att gå från den tvättade informationen till den ursprungliga. Lösningar som använder kryptering och krypteringsnyckel kan då inte användas för att bryta kopplingen till PuL.
En lås med en massa koder runt om.

VAD SKA PSEUDONYMISERAS?

Viktiga delar att komma ihåg.

Olika organisationer har olika krav på vad som ska tvättas i en loggfil. Ofta vill organisationer tvätta följande fält:

  • IP-nummer
  • Personnummer
  • Förnamn
  • Efternamn
  • Telefonnummer
  • Adresser
  • Geo – Data
  • Produkt namn
  • Loggar som indikerar allvarliga fel (i sin helhet)

En bra produkt för loggtvätt ska också kunna kompletteras av kunden för att hantera nya typer av fält.

HUR SKA EN PSEUDONYMISERING GÖRAS?

Att hantera känslig information korrekt.

För all pseudonymisering är det önskvärt, ibland ett krav, att formatet på det tvättade datat är samma som formatet på ursprungsdatat. Om vi tvättar ett personnummer vill vi att resultatet ska vara ett personnummer, inte ett datum. Om vi tvättar IP-nummer vill vi likaså få ett IP-nummer som resultat. Det är för att mottagaren av loggarna då kan använda verktyg på loggarna och dra slutsatser från resultatet. Om semantiken i loggarna ändras kommer verktygen inte att fungera utan anpassning, vilket kan omöjliggöra extern granskning, eller analys.

Bryta kopplingen till PuL.

En översättning från ett ursprungligt värde till ett nytt värde ska kunna sparas under tiden körningen görs. Varje gång samma ursprungliga värde återkommer i loggarna ska det översättas till samma tvättade värde. Detta är ytterst viktigt för att kunna dra slutsatser av information från flera loggposter samtidigt.

För att kunna bryta kopplingen till PuL är det nödvändigt att ingen nyckel existerar som kan återskapa ursprungsinformationen från det tvättade datat. I många andra fall kan det vara önskvärt med den funktionen dock. Börja med en idé om vad som ska uppnås och utgå ifrån den. Verifiera att den känsliga informationen hanteras korrekt enligt PuL (eller inte berörs av PuL) och välj sedan teknik och produkt utifrån det.

En man håller i en ipad kollar på den.

Varför inte använda ett shell-script?

I många fall är det en fullt tillräcklig lösning. Dock är shell-script normalt betydligt långsammare på att hantera stora mängder information och tiden för att implementera en effektiv översättning av personnummer till andra, giltiga, personnummer som inte pekar på nu levande personer i bash ska inte underskattas.

Varför inte använda Open Source?

Det finns inte många Open Source-varianter som stödjer PuL och svenska personnummer idag.

En kvinna kollar på en datorskärm och funderar.

Om Hidesense

Hidesense är en plattform som är utvecklad för den svenska marknaden. Den stödjer icke-deterministisk koppling mellan loggdata och översatta värden. En översättningsfil genereras vid körning men om den raderas försvinner kopplingen däremellan och kopplingen till PuL minskar. För att vara säker på att loggdatat inte är en personuppgift behöver loggdatat undersökas så att alla relevanta uppgifter verkligen har hittats och hanterats.

Är Hidesense gratis?

Hidesense går att köra gratis på Internet, https://hidesense.com för de flesta användare. Om en användare inte vill skicka upp känslig information till en online tvättjänst går det att utveckla reglerna på hidesense.com och sedan ladda ner en regelfil. Regelfilen går att köra offline med hidesense ui, som dock kräver en licens. Det går också att skapa egna regelfiler i JSON eller ett property-format för att inte behöva exponera reglerna på Internet, men regelutveckling underlättas med hidesense.com.

Kontakta oss