It-säkerhet enligt HPS

Stefan Pettersson på High Performance Systems skriver om säkerhet på svenska

Tagg: skadeansvar

Fuskbyggen revisited: två skillnader

Title: Samsung Printer Backdoor Account

Description: Network-aware printers manufactured by Samsung before October 31, 2012 (including some Dell printers actually built by Samsung) have a hard-coded SNMP read-write community string, which enables full administrative access to the device – even when SNMP has been disabled by the user. A patch is currently being developed by Samsung; in the interim, users should consider blocking all SNMP traffic to impacted printers, which likely contain sensitive information that could be used by an attacker or industrial spy.

Reference:
http://www.kb.cert.org/vuls/id/281284
http://l8security.com/post/36715280176/vu-281284-samsung-printer-snmp-backdoor

Det här möts man av i veckans @RISK-nyhetsbrev från SANS (min fetstil). Jag skrev om fuskbyggen tidigare, alla fuskbyggen är dock inte jämlika, det finns skillander.

Skillnad #1: det finns buggar och det finns buggar

Buggar och säkerhetsbuggar har alltid funnits och kommer alltid att finnas. I samma nyhetsbrev som ovan rapporteras också CVE-2012-5533, en DoS-bugg i lighthttpd: genom att skicka ett request med en header där en token är tom hamnar servern i en oändlig loop och slutar svara. Det är ett misstag som är lätt att göra och förvisso går det att upptäcka sånt genom testning, problemet med kombinatorisk explosion gör dock att det är omöjligt att täcka alla testfall. Med andra ord, sådana här buggar kommer att dyka upp emellanåt. Deal with it.

En hårdkodad community string på en skrivares SNMP-server är en helt annan bugg. Det är förresten ingen bugg, det är slarv. Att strängen dessutom verkar har funnits sedan 2004(!) gör det bara mer besvärande. Det är helt enkelt inte okej.

Skillnad #2: det finns mjukvaror och det finns mjukvaror

Det är en sak om ett företag utvecklar mjukvara som de ska använda själva, och slarvar. De flesta har inget problem med någon som binder ris för egen rygg. Däremot, om företaget utvecklar mjukvara med avsikt att sälja den – kräva pengar i utbyte för att någon ska få använda den – och slarvar. Det är helt enkelt inte okej.

Eller finns det förmildrande omständigheter?

Personuppgiftslagen och datasäkerhet — del 2

I förra delen om säkerhet och PuL lade jag lite groundwork för vad lagen säger om just säkerhet och faktumet att man inte kan bli straffad för att säkerhetsnivån är olämplig. Däremot kan man, som sagt, bli skadeståndsskyldig. Dock kunde inte Datainspektionen hänvisa till några fall där skadestånd utbetalats på grund av att en personuppgiftsansvarig inte hade tillsett att säkerhetsnivån var lämplig.

De exempel som gavs (felaktigt registrerad som avliden, personnummer bland tentaresultat o dyl) verkar mest handla om slarv.

Frågan jag ställer mig är: varför har ingen av användarna på Efterfesten, Bilddagboken, Gratisbio, Bloggtoppen eller någon av de andra som hackats startat ett civilrättsligt mål och begärt skadestånd?

Håll i er för nu blir det IANAL på riktigt.

Skadestånd definieras av svenska Wikipedia som ”den ersättning som den som orsakat en skada betalar till den som drabbats av skadan, som ersättning för denna”. Första paragrafen i skadeståndslagen beskriver den s k allmänna ansvarsregeln:

1 § Den som uppsåtligen eller av vårdslöshet vållar personskada eller sakskada skall ersätta skadan.

Tre krav (eller rekvisit som det heter på juridiska) finns alltså:

  1. Skada ska ha vållats,
  2. uppsåtligen eller av vårdslöshet och
  3. skadan ska ha drabbat en person eller sak.

Det räcker med ett enda exempel. Granska valfri tråd på Flashback som rör dumpar från community-sajter så kan du snabbt konstatera att det här inte är en engångshändelse.

Det här är omedelbart efter att Bloggtoppen-dumpen har publicerats på Flashback. Lösenorden i dumpen knäcks och används tillsammans med mailadresserna för att hitta konton på Facebook, webbmail, Dropbox, etc där samma eller liknande lösenord används. Ett manuellt men trivialt arbete. Snubben i forumet bedömer att 15-20 % av användarna har samma lösenord till sina mailkonton.

Payoff för det (ringa) besväret är i det här fallet nakenbilder på bloggare (eller deras flickvänner). På sikt är det sedan i princip oundvikligt att dessa sprids och när de en gång har gjort det kommer de ALDRIG att försvinna. Vad som kommer att hända är att de dyker upp på porrsajter.

Märk väl att det finns flera personer att lasta i allt det här: (1) det är webbtjänsten som har lösenorden, (2) det är tjuven som bryter sig in, stjäl dem och publicerar dem, (3) det är kräk… personen som tar lösenorden, stjäl nakenbilder och publicerar dem samt (4) offret. Jag fokuserar här endast på de först- och sistnämnda.

Tillbaks till juridiken; duger beskrivningen ovan för rekvisit 1 och 3, att skada har vållats en person? Självklart. Hur är det då med vårdslösheten? Det finns flera sätt att argumentera fram och tillbaka kring det här men låt mig ta det till spetsen på en gång:

Betrakta följande:

  • Lisa, 16 har samma lösenord på (det påhittade) nätverket Fjortiskommunen.se som på Dropbox.
  • Lösenordet är dåligt, ”fotboll1995” eller nåt.
  • Fjortiskommunen har omkring 50 000 medlemmar.
  • Fjortiskommunen lagrar bland annat namn, ålder, kön, ort, intressen, mailadress och diverse annat som användarna laddar upp själva.
  • Fjortiskommunen lagrar lösenord i klartext, MD5-hash eller motsvarande format.
  • Fjortiskommunen har ett skolboksexempel på SQL injection i sökfunktionen.

Fullständigt trovärdiga omständigheter. Vem har varit vårdslös? Jag skulle svara Fjortiskommunen vilken dag i veckan som helst.

Går det att jämföra med en familj som förvarar kopior av sina hemnycklar hos ett larmbolag och att det sedan framkommer att bolaget förvarade nycklarna i ett arkivskåp på lastkajen? Larmbolaget har definitivt varit vårdslöst.

Frågan är sedan, har Lisa varit vårdslös? Visst men vad spelar det för roll? Var hon mer vårdslös än familjen med nycklarna? Är hon vårdslös när hon använder kontokortet på en skimmad bankomat? De har ju knappast en skyldighet att utvärdera säkerheten i tjänsten de köper.

Jag har inte några gjort enorma ansatser att diskutera det här med peers såhär innan publikation (det här är en blogg, inte debattsidan i SvD) men två tydliga responser har dykt upp. Den första är tyvärr fel och den andra är, som tur är, fel.

Respons 1: ”Men straff, än mindre skadestånd, skulle ju inte hindra sånt här för att hända.”

Nähä? Så traffet för att bryta mot 3 kap. 1 § i brottsbalken hindrar inte heller någon från att ”beröva annan livet”?

Respons 2: ”De där sajterna kommer bara att friskriva sig i sina användaravtal.”

Nej ser du, det får man nämligen inte göra! Se sidan 368 angående 31 § i Personuppgiftslagen, En kommentar av Sören Öman och Hans-Olof Lindblom: ”Kraven på säkerhetsåtgärder kan inte frångås ens med den registrerades samtycke”.

Faktumet att man inte kan friskriva sig är ju en vinst för personuppgiftslagen. Min fråga kvarstår dock: varför har ingen av användarna på Efterfesten, Bilddagboken, Gratisbio, Bloggtoppen eller någon av de andra som hackats startat ett civilrättsligt mål och begärt skadestånd? Vi har ju mängder med exempel som mycket väl skulle kunna visa sig uppfylla alla tre rekvisit i den allmänna ansvarsregeln.

Stefan Pettersson

Personuppgiftslagen och datasäkerhet — del 1

Innan du fortsätter läsa, märk väl att IANAL, trots det skulle jag vilja skriva lite om lagkrav. Lagom till att it-bubblan började blåsas upp ordentligt, 1998, kom personuppgiftslagen (1998:204) eller PuL som den kallas. Lagen har ett syfte som är enkelt att förstå:

1 § Syftet med denna lag är att skydda människor mot att deras personliga integritet kränks genom behandling av personuppgifter.

Innan vi går vidare på datasäkerhet kan det vara värt att ta del av ett par viktiga definitioner som görs i 3 §:

Behandling (av personuppgifter)
Varje åtgärd eller serie av åtgärder som vidtas i fråga om personuppgifter, vare sig det sker på automatisk väg eller inte, t.ex. insamling, registrering, organisering, lagring, bearbetning eller ändring, återvinning, inhämtande, användning, utlämnande genom översändande, spridning eller annat tillhandahållande av uppgifter, sammanställning eller samkörning, blockering, utplåning eller förstöring.

Personuppgifter
All slags information som direkt eller indirekt kan hänföras till en fysisk person som är i livet.

Personuppgiftsansvarig
Den som ensam eller tillsammans med andra bestämmer ändamålen med och medlen för behandlingen av personuppgifter

Två saker är viktiga att notera angående definitionerna: (1) I princip allt du kan göra med data är behandling, jag har svårt att komma på något som inte skulle falla under begreppet. (2) Personuppgifter behöver inte nödvändigtvis vara sådant man tänker på i första hand, t ex personnummer. Det är t ex fullt rimligt att postnummer och förnamn tillsammans kan betraktas som en personuppgift. Anta att förnamnet är Qristofer och att postnumret är till en liten ort utanför Skumträsk med 300 invånare så förstår du varför.

PuL beskriver också i 4 och 5 §§ ett par förutsättningar som måste vara uppfyllda, förenklat att behandlingen måste vara helt eller delvis automatiserad samt att behandlingen måste ske i Sverige.

Så vilka säkerhetskrav ställer personuppgiftslagen? Beroende på hur man ser på det så är lagen antingen väldigt tydlig eller väldigt otydlig. PuL säger följande om säkerhet (min fetstil):

31 § Den personuppgiftsansvarige skall vidta lämpliga tekniska och organisatoriska åtgärder för att skydda de personuppgifter som behandlas. Åtgärderna skall åstadkomma en säkerhetsnivå som är lämplig med beaktande av

a) de tekniska möjligheter som finns,
b) vad det skulle kosta att genomföra åtgärderna,
c) de särskilda risker som finns med behandlingen av personuppgifterna, och
d) hur pass känsliga de behandlade personuppgifterna är.

Det är allt.

Jag har absolut inga problem med det. För det första, hur ska man annars uttrycka sig i en lagtext? För det andra, säkerhetsnivån ska ju alltid vara som den beskrivs i 31 §, oavsett om det handlar om personuppgifter eller kärnstridsspetsar.

Tillsynsmyndigheten Datainspektionen (DI) har dock en del rekommendationer eller ”allmänna råd”, se t ex Säkerhet för personuppgifter. Texten från DI ställer inga särskilda krav så det är inte alls att jämföra med t ex PCI DSS. Däremot rekommenderar man förstås lösa saker som ledningssystem för informationssäkerhet och riskanalyser. Håhåjaja…

Då har jag mer problem med 49 § som beskriver straff: ”Till böter eller fängelse i högst sex månader eller, om brottet är grovt, till fängelse i högst två år döms den som uppsåtligen eller av grov oaktsamhet” bryter mot diverse paragrafer. Dock inte säkerhetsåtgärderna, 31 §.

Säkerhetsåtgärderna kan man alltså strunta i, det enda man riskerar då är skadeståndskrav enligt 48 §. Jag har tyvärr inte hittat några civilrättsmål där 31 § har varit inblandad (DI kunde inte nämna några heller) men här är några andra:

  • En person var, under en vecka, felaktigt registrerad som avliden i folkbokföringsdatabasen. Fick 25 000 kr i ersättning för kränkningen. (beslut 2002-09-03, dnr 1652-02-42)
  • En person var felaktigt registrerad i belastningsregistret vid två tillfällen. Fick 10 000 kr. (beslut 2006-06-26, dnr 955-06-42)
  • En student fick 1 000 kr i ersättning för att universitetet hade publicerat en resultatlista med hans personnummer på intranätet under mindre än 48 timmar. (beslut 2003-03-28, dnr 73-02-42)

Så kan det gå… I nästa del tänkte jag jämföra dessa med andra fall där just brott mot 31 § skulle kunna vara anledningen till att någon har utsatts för kränkning eller lidit skada. Då blir det förstås ännu mer varning för IANAL. Jag tror dock att det kan vara informativt ändå, det borde om inte annat skapa debatt.

Trevlig helg!


Stefan Pettersson

Skadeansvar åvilar tillverkaren

Update @2011-09-28: God vän och insiktsfull kollega Christoffer har tagit upp software liability också.

Trots att jag gör det hela tiden så gillar jag egentligen inte att bara hänvisa till andra bloggar eller artiklar och säga ”det här är bra”. Nu måste jag dock göra det igen…

Poul-Henning Kamp, FreeBSD-utvecklare extraordinaire (och pappa till FreeBSD-MD5-hashen), skrev för omkring två veckor sedan en artikel om software liability: tillverkare av mjukvara borde hållas ansvariga för fel i produkten. Precis som tillverkare av hus, bilar eller tvättmaskiner. Jag har skämtat om ämnet tidigare och tycker att det är en väldigt attraktiv tanke men jag har inte tagit en tydlig position ännu. Jag har lite svårt att överblicka effekterna.

Anywho, Kamps artikel är suverän. Han inleder med en diskussion och utveckling av Ken Thompsons tal Reflections on Trusting Trust från 1984 (som jag har nämnt tidigare någon gång tror jag) och problemen med att man aldrig kan lita på andras kod. Därifrån tar han det vidare till ett förslag om tre klausuler (FreeBSD, go figure) som lämpar över ansvaret för skador på tillverkaren.

Rolig är han också:

Today the operant legal concept is ”product liability,” and the fundamental formula is ”if you make money selling something, you’d better do it properly, or you will be held responsible for the trouble it causes.” I want to point out, however, that there are implementations of product liability other than those in force in the U.S. For example, if you burn yourself on hot coffee in Denmark, you burn yourself on hot coffee. You do not become a millionaire or necessitate signs pointing out that the coffee is hot.

Trevlig helg!


Stefan Pettersson

Säkerhetsrisker i Adobe – återkallar programvaror

Totalt gäller Adobes återkallning fyra av tillverkarens programvaror. Anledningarna är en rad fel som kan innebära säkerhetsrisker, skriver Dagens Industri.

Programvarorna började återkallas i måndags. Adobe och samriskbolaget meddelar på sin hemsida att man återkallar totalt 18 848 installationer.

Totalt gäller det säkerhetsbrister i fyra av tillverkarens program:

– Adobe Flash 10.1.102.63 kontrollerar inte längden på indata från…

…nä, inte riktigt. Det handlar egentligen om säkerhetsrisker i några av Volvos bilar. Artikeln från DagensPS.se heter Säkerhetsrisker i Volvo – återkallar 4 bilmodeller. Tänk om det hade varit likadant i vår bransch?


Stefan Pettersson