(Tipstack till Jakob.)
Computer Sweden skriver om Phonekey, ett svenskt företag som har en ny säkerhetslösning.
Enligt artikeln fungerar Phonekeys säkerhetslösning så här:
Tekniken innebär att du måste ringa ett speciellt nummer från din telefon innan det går att använda ditt betalkort, logga in på ditt konto på den sociala nätverkssajten eller komma åt någon annan tjänst som använder sig av det hänglås Phonekey innebär.
– Tekniken säkrar enkelt all korthantering och inloggning, säger Tonie Söderström, mannen bakom tekniken och en av grundarna.
Det företag som vill använda säkerhetsmekanismen installerar Phonekeys mjukvara på en server, låter användarna registrera sina telefonnummer och ger sedan användarna varsitt speciellt nummer att ringa när de vill använda företagets tjänster.
Användaren ringer två signaler till det anvisade numret och lägger på. Ett tidsfönster öppnas och användaren kan logga in eller använda sitt betalkort.
Enligt artikeln kan tekniken användas som en extra säkerhetsfunktion, eller som ersättning för lösenord eller pin-koder.
Visst låter det bra? Eller kanske inte. Låt oss göra en analys. (Jag vill poängtera att jag inte sett Phonekeys patent, utan bara det som står i artikeln.)
Vid en säkerhetsanalys gäller det att identifiera vilka premisser, förutsättningar och (ofta implicita) antaganden säkerheten bygger på. Och sedan funderar man på vad som händer om dessa premisser inte gäller – när det skiter sig (för att tala Dalsländska.)
Om vi tolkar artikeln rätt skall man innan man använder en tjänst som skyddas av Phonekeys lösning första gången, först registrera ett visst telefonnummer, exempelvis din mobil. Du får även ett speciellt telefonnummer att ringa upp med ditt registrerade telefonnummer för att aktivera den tjänst du vill använda när du vill använda den.
Man kan se denna mekanism som en separat autenticeringskanal för tjänsten. Att tjänsten inte är aktiv för en given användare om den först inte autenticerat sig via den separata kanalen är det som skall ge den extra säkerheten. Den som vill attackera en sådan tjänst behöver alltså både kunna ringa upp med det korrekta numret till den speciella numret innan det går att komma åt tjänsten (som i sin tur kanske skyddas av en identitetskod tillsammans med PIN-kod eller lösenord).
Pudelns kärna är att man litar på att det telefonnummer som ringer upp ett givet annat telefonnummer går att lita på. Tyvärr är det kanske inte något som är skrivet i sten. I USA är det relativt enkelt att utföra Caller ID Spoofing, dvs förfalska det uppringande numret. I Sverige är det svårare, men att det finns folk (som jobbar hos teleoperatörer) med kunskap, förmåga och möjlighet att förfalska ett uppringande nummer är nog inget falskt påstående.
Vidare, det nummer man får att ringa upp kan man knappast utgå ifrån att det är en hemlighet. Även om det är så att alla användare får ett eget, unikt nummer, vilket låter otroligt, är det svårt att se att det numret skulle kunna betraktas som en hemlighet att lita på.
Men det mest bekymmersamma med hela systemet är att det (att döma av artikeln) blir svårt att hantera säkerhetsproblem. Vad skall man göra om något så trivialt som att en användares mobil vars nummer har registrerats för en tjänst blir stulen? Att en användares mobil någon gång blir stulen är inte bara ett mer troligt scenario än att någon fejkar caller-ID, det är antagligen något som kommer att vara relativt vanligt.
Jag anser att bra säkerhet bygger på så få hemligheter som möjligt – och att dessa hemligheter är så lätta att byta ut som möjligt. En PIN-kod eller ett lösenord är bara en sekvens av tecken. Kan du inte lita på dom är det relativt lätt att byta ut dom. Att byta telefonnummer för att du inte kan lita på den längre för att logga in på din tjänst är inte alls lika enkelt.
Det vore intressant att veta hur Phonekey tänkt lösa dessa problem – hur spärrar man, byter nummer. Kan någon annan enkelt skicka in ett meddelande om att telefonen blivit snodd och att nu gäller ett annat nummer? Kan man säga att en given telefon blivit stulen och därmed orsaka ett DoS-problem för en användare?
Phonekeys mekanism kan ses som ett sätt att försöka krångla till accessen till en given tjänst genom att införa ett extra moment. Men att ersätta en PIN-kod med detta förfarande är fel. Det är snarare så att för att Phonekeys teknik över huvud taget skall ge en ökad säkerhet skulle dom behöva införa en PIN-kod som kopplar ett givet nummer (något du ev har) till kunskap om något (något du vet). Detta blir en så kallad tvåfaktors säkerhetslösning.
Och om det nu skulle visa sig gå fel – att caller-ID inte går att lita på, kommer Phonekey att täcka upp – vilka garantier lämnar dom?
Så tyvärr, jag tror inte på Phonekeys säkerhetslösning. Att dom får patent på den är ok, det finns många dumheter som patenterats. Det som vore tråkigt är om Phonekeys lösning används istället för bra, väl fungerande säkerhetsmekanismer. Att Fredrik Åhgren, VD för säkerhetsföretaget SE46 inte kan göra en vettig bedömning av Phonekeys hemmasnickrade säkerhetslösning är tyvärr lite skrämmande.