Ett par gånger tidigare har jag diskuterat säkerhet för cloud computing och tänkte har beröra en typ av angrepp mot lösenord som mindre ofta korrekt hanteras.
En typ angrepp mot lösenordsskyddade resurser innebär att möjliga lösenord prövas tills rätt lösenord hittas eller angriparen ger upp. Processen kan optimeras genom att utnyttja vanliga fel som ger mindre säkra lösenord.
Systematiskt skydd av enskilda konton
Betrakta först när endast ett konto finns. Åtgärder för att systematiskt höja säkerheten kan inkludera:
- Automatiskt göra vissa enklare kontroller av lösenordet för att undvika vissa mindre säkra lösenord.
- Automatiskt söka efter osäkra lösenord p.s.s. som angriparen.
- Öka arbetet som krävs av angriparen för att kontrollera lösenord.
När det kommer till att öka angriparens arbete har vi bl.a. följande åtgärder:
- Låt det ta N s extra tid innan felaktig inloggning anges.
- Öka extra tid som tas vid felaktig inloggning efter flera fel.
- Öka tiden tydligt efter X antal felaktig inloggning. Kontot är "låst" under en viss tid.
- Lås kontot och kräv någon annan verifiering efter en viss tid.
Hur blir det med många konton?
Antag nu att datasystemet vi skyddar har massor av användare. Twitter har t.ex. 6 miljoner unika besökare per månad (enligt Wikipedia) och troligen många gånger fler registrerare användare. Förändrar detta något? Ja tidigare skyddsmekansimer blir otillräckliga om angreppet inte är riktat mot en individ eller en liten grupp individer (t.ex. alla medarbetare från företaget X på det sociala nätverket Y):
- Angriparens lösenordsgenerering ger lösenordskandidat: dogPretty1
- Inloggningsklienten testar dogPretty1 på inloggningsnamn: hans
- Servern indikerar fel.
- Inloggningsklienten testar dogPretty1 på inloggningsnamn: karin
- Servern indikerar fel.
- Inloggningsklienten testar dogPretty1 på inloggningsnamn: maria
Varför är detta annorlunda? Inga av tidigare beskriva säkerhetsmekanismer ger skydd mot detta angrepp.
Hur kan angreppet systematiskt hanteras?
Vanliga skyddsmekansimer handlar om att detektera klienter som beter sig som en angripare. Det är t.ex. inte normalt att samma dator försöker logga in på många konton. Hur bra detta kan fungera begränsas av identifiera en dator. IP-adress är en logisk väg att gå men är inte perfekt:
Nivån måste sättas relativt högt därför att många användare inte sällan finns på samma synliga IP-adress: Stora proxy-tjänster, anonymsurfning, stora företag m.m.
Det handlar för angriparen om att utnyttja möjligheter att kunna uppvisa många IP-adresser. Alla möjligheter som begränsar nivån som kan sättas kan missbrukas för angreppet. Även kapade hemdatorer kan utnyttjas.
Sammantaget är det mycket svårt att få tillräcklig säkerhet via dessa mekansimer. Långsiktigt måste lösningen vara att man lämnar lösenorden. På längre sikt kommer säkert också någon gemensam lösning. Jag gissar att kreditkortsföretaget genom att vara de som bär de större kostnaderna och vara globala kommer införa lösningar som även i övrigt blir populära.
Säkerheten mot angreppet kan emellertid höjas avsevärt om säkerhetskraven avseende:
- Automatiskt göra vissa enklare kontroller av lösenordet för att undvika vissa mindre säkra lösenord.
- Automatiskt söka efter osäkra lösenord p.s.s. som angriparen.
Avseende 1 är min erfarenhet som användare att kraven är låga. Avseende 2 har jag aldrig av någon webbsajt blivit ombedd att byta från ett osäkert lösenord trots att jag ofta använder sådana.
Hur ska företag och individer hantera detta problem?
Utnyttjar man dessa tjänster och har behov av tydlig säkerhet är den lösning som finns att använda mycket säkra lösenord. Det finns säkert många guider om det på nätet och några tips är:
- Använd många tecken.
- Ha både små och stora bokstäver.
- Blanda in siffror.
- Ha med alfanumeriska tecken.
Betänk att angreppet inte är riktat. Hela poängen med angreppet är att plocka konton med svaga lösenord utan att utlösa lösning på något konto.
Företag måste också beakta var deras medarbetare egentligen loggar in någonstans och med vad. Har användarna värdefull information på andra datasystem utanför företaget och hemmet? Kan ett identifierat lösenord på ett system på nätet ge möjlighet att komma åt användarens konto på andra platser? Kan det vara en väg in till värdefulla resurser t.ex. på företagets egna servrar?
Kommentera