Archive for the ‘it-säkerhet’ Category

GPG – crashcourse

2014/04/02

Nån form av inledning

Jag vet att jag har skrivit sånt här förut, men upprepning är alltid bra har jag hört.
Dessutom så känns det som att ämnet är något många känner att man borde göra, men det är ju så komplicerat och jobbigt och man vet inte hur eller varför egentligen så därför faller det i glömska.
Sen var det länge sen jag ordbajsade fritt…

Varför kryptering?

Genom alla tider har människor haft behov av att kunna skydda meddelanden av olika slag och av olika anledningar, från ganska oskyldiga saker som kärleksbrev till statshemligheter.
De flesta anser att brev är privata och att endast mottagaren har rätten att bestämma vem som får se innehållet, när telegrafen infördes så blev det ganska vanligt att gemene man utnyttjade enklare krypteringar för att inte telegrafisten skulle kunna ta del av meddelandets egentliga innehåll.
Bilden av ett brev i ett kuvert är något många ser framför sig när man pratar e-mail också, bilden brukar vara att brevet går från sändaren till mottagaren och att ingen på vägen läser det. Denna bilden är helt felaktig.
Att diverse säkerhetstjänster trålar internet efter information är belagt i dagsläget, men vad många inte tänker på är att andra aktörer såsom google, hotmail och yahoo samt mer ljuskygga organisationer gör samma sak för att kartlägga våra vanor och informationsmönster i olika syften. Och även om våra e-mail inte innehåller några hemligheter så är de privata och endast för mottagarens ögon.

Så för att skydda information och se till att endast rätt personer kan läsa den får man ta till kryptering. Dock så lider kryptering av ett stort problem nämligen; hur tusan ska man kunna överföra nyckeln som låser upp informationen till mottagaren på ett säkert sätt?
Lösningen är att man skapar ett system med två nycklar där den ena används för att kryptera informationen och den andra för att dekryptera den, istället för en som används till båda sakerna. Nyckeln som används för kryptering kan spridas till vem som helst medan nyckeln för dekryptering behålls hemlig.

Så vad gör GPG?

Krypterar information. Bland annat…
Det längre svaret är att GPG är ett såkallat hybridsystem som krypterar informationen med en slumpmässigt skapad symmetrisk nyckel (alltså en nyckel som både krypterar och dekrypterar), denna slumpmässiga nyckel krypteras sedan med mottagarens publika nyckel och läggs till som ett huvud till informationen. Mottagaren kan sedan dekryptera den slumpmässiga nyckeln och därefter dekryptera resten av informationen.
Varför gör man det då så komplicerat?
Jo, systemen som utnyttjar två nycklar är extremt långsamma jämfört med systemen med en nyckel (sist jag såg siffror på det handlade det om tiopotenser i skillnad). Men problemet med systemen med en nyckel är just hur man överför nyckeln till mottagaren.

Vidare så ger tvånyckelsystemen en annan fördel; man kan skapa digitala signaturer med dem. Grundteorin här är att man istället för att kryptera informationen med mottagarens publika nyckel så krypterar man med sin egna privata nyckel. Detta får till följd att alla (som har personens publika nyckel) kan dekryptera informationen och på så vis konstatera att någon med tillgång till den privata nyckeln är den som är avsändare av meddelandet.

Jaja, så var får jag tag på GPG?

Man hoppeliskuttar till http://www.gnupg.org/, klickar på download och scrollar lite.

Hur skapar jag en nyckel?

Det är nu det kommer börja bli rörigt, eftersom det skiljer sig en del åt för olika plattformar men jag tänker göra ett försök…
Kommandorad (*nix, men troligen de andra också)
Den mest rakt på metoden, inget fancy och lull-lull. Dock kanske skrämmande för en del.
1. Öppna en kommandotolk på valfritt sätt.
2. Om gpg finns i din sökväg behöver du inte göra något, annars får du ta dig till rätt katalog.
3. Skriv följande:

gpg --gen-key [enter]

Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)

Den eviga frågan är här vilken man ska välja, val 1 och 2 är jämförbara säkerhetsmässigt (det finns några quirks med val 2, men de är inte direkt allvarliga) och det finns prestandamässiga skillnader mellan dem i olika fall. Val 1 är dock standard så man kan lika väl köra på det. Den som är intresserad kan alltid googla ”gpg rsa vs. elgamal” och fundera själv ;)

1[enter]

RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)

1024 bitar räcker troligen om man vill vara säker, 2048 räcker definitivt, men med dagens processorer finns ingen anledning att inte köra på max.

4096[enter]

Requested keysize is 4096 bits
Please specify how long the key should be valid.
0 = key does not expire
n = key expires in n days
nw = key expires in n weeks
nm = key expires in n months
ny = key expires in n years
Key is valid for? (0)

Här finns lite olika skolor hur man bör/kan tänka. Värt att notera är att nyckeln inte slutar fungera helt när den gått ut, man kan dekryptera saker och man kan verifiera signaturer med en utgången nyckel. Man kan dock inte signera eller kryptera med en utgången nyckel.
Mitt upplägg är att jag har en ”huvudnyckel” som inte går ut, som används för att signera andra nycklar (mer om det senare), med ett antal subnycklar (kommer nog mer om det också) som har en livslängd på ett år.

0[enter]

Key does not expire at all
Is this correct? (y/N)


y[enter]

You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
”Heinrich Heine (Der Dichter) ”


Real name: otyg test [enter]
Email address: otyg@gallowsground.lan [enter]
Comment: Testkey [enter]

You selected this USER-ID:
”otyg test (Testkey) ”

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit?


O[enter]

You need a Passphrase to protect your secret key.

Se till att skapa en bra lösenfras, som du kan komma ihåg… Och spara den nånstans säkert!
Tappar du bort den så är det kört, det finns INGET sätt (för oss dödliga, och troligen inte för de odödliga heller) att knäcka nycklarna så tappas lösenfrasen bort så är nycklarna oanvändbara (eller ja, den publika kan användas…).
Efter lösenfrasen skapas nyckeln, och till det behövs en massa slump så programmet kommer be dig skriva på tangentbordet och annat för att den ska kunna samla tillräckligt med underlag till slumpgeneratorn. Därefter är nycklarna klara att användas.

Jag kommer återkomma hur man gör ovanstående i gui-varianterna (gpg4win främst eftersom jag inte har tillgång till nån Apple-maskin) när jag riggat miljö för det.

Vad gör jag med mina nycklar nu då?

Den hemliga skyddar du med ditt liv och ser till att ta backup på, filen heter secring men man kan exportera en specifik hemlig nyckel också på ungefär samma sätt som med den publika nyckeln vilket jag kommer gå igenom nedan.

Den publika sprider du antingen helt öppet eller till specifika personer, helt beroende på tycke och smak.
Att sprida den publika nyckeln fritt för vinden är löjligt enkelt, man skickar upp den till en s.k. nyckelserver (det finns en drös och majoriteten av dem synkar mellan varandra). Såhär går man tillväga för att skicka nycklarna till en server:

gpg --send-keys [nyckel-id]

Nyckel-id visades när du skapade din nyckel, men kan även tas fram med kommandot gpg –list-key som genererar nåt liknande det nedan:

pub 2048R/1EC847E0 2011-08-21
uid otyg [otyg@gallowsground.lan]

I ovanstående fall är nyckel-id 1EC847E0 eller 0x1EC847E0.

Om man nu av en eller annan anledning inte vill sprida sin nyckel till vemsomhelst så kan man exportera den till en fil som kan skickas till personen (såhär kan man även exportera sina privata nycklar) på följande sätt

gpg -a --export [nyckel-id] > [filnamn]

Flaggan a gör att saker trillar ut som ASCII och därmed kan skickas på valfritt sätt utan problem.
Det som trillar ut är något i stil med

—–BEGIN PGP PUBLIC KEY BLOCK—–
Version: GnuPG v1.4.11 (GNU/Linux)

mQSuBFLgyIsRDADT0Xa9fYM+GGRLenwJC8b6OwhCnEh6coqsLrWi+MRbNWRQqLvF
(…)
7K3vIpoIqTnh1M/4kCxjfQ==
=OF6I
—–END PGP PUBLIC KEY BLOCK—–

Hur kryptera/dekryptera/signera/kontrollera signatur?

Återigen så blir det kommandorad, och det blir att hantera filer på disk (gpg4win gör att man kan högerklicka och kryptera/dekryptera/signera/kontrollera en fil vet jag).
För att kryptera en fil är något av kommandona

gpg -e -r [mottagare] [fil]
gpg -ae -r [mottagare] [fil]

som gäller. Det senare ger en ASCII-fil medan det förra ger en binärfil som kan ställa till problem vid överföring.
För att signera en fil gör man något av följande

gpg -[a]s [fil]
gpg --clearsign [fil]
gpg --detach-sign [fil]

och uppger sin lösenfras. Den första ger en binär signatur av filen, om inte a-flaggan tas med, den andra ger en ascii-signatur av filen och den tredje ger ett separat ”certifikat” för filen. Dom mer tekniska skillnaderna mellan varianterna lämnar jag till den intresserade läsaren att utforska. Generellt så använder jag clearsign när jag bara signerar och -[a]es när jag krypterar och signerar.

För att dekryptera eller kontrollera en fil skriver man bara

gpg [filnamn.ändelse].{asc,sig,gpg}

Är den krypterad kommer du få frågan om din lösenfras, är den signerad kommer det visas av vem den är signerad och i båda fallen kommer en ny fil skapas som saknar ”extraändelsen”.

…mottagarens nyckel?

Hur får man då tag på en mottagares nyckel?
Precis som i fallet med att sprida sin egen nyckel kan man antingen plocka den från en exporterad fil som man har fått från personen, eller genom att hämta den från en nyckelserver.
Har man fått den exporterade nyckeln i en fil är operationen enkel.

gpg --import [filnamn]

För att hämta nycklarna från en nyckelserver kör man följande

gpg --recv-key [nyckel-id] --keyserver [nyckelserver]

För att hitta en persons nyckel kan man köra kommandot

gpg --search-keys [namn email] --keyserver [nyckelserver]

som även importerar den.
Slutligen så kan man importera den direkt från en url med kommandot

gpg --fetch-keys [url]

Men hur fasen vet jag att det är person Xs nyckel jag har?

Det korta svaret är: det vet du inte om du har hämtat den från en nyckelserver, e-mail eller url.
Men för att kunna avgöra ifall man kan lita på att en nyckel kommer från den person som man tror att den tillhör så kan andra personer signera en nyckel, och om tillräckligt många personer som du litar på bevisligen har signerat en nyckel så kan man anta att den nyckeln tillhör en person de litar på.
Ett exempel som tillämpar en annan modell är SSL-certifikaten som man använder när man surfar säkert, dessa är hierarkiskt signerade av en rot-auktoritet som säger att den litar på utfärdarna av certifikaten som säger att de litar på de som vill ha sina certifikat signerade.
Tillitsmodellen i gpg är decentraliserad och du väljer själv ifall du litar på en publik nyckel eller ej, och du väljer själv att berätta för omvärlden att du litar på en nyckel eller ej. Om man litar på att en nyckel kommer från den som den verkar komma ifrån så signerar man den, exporterar och skickar till ägaren av nyckeln (som sedan väljer ifall den vill publicera den signerade nyckeln eller ej). På detta sättet byggs ett nät av tillit upp runt en nyckel, dock så är många signaturer på en nyckel inte samma sak som att nyckeln är att lita på.
Tanken är snarare att man ska kunna hitta en kedja från en okänd nyckel till en person som man litar på, den där six degree of separation-grejen.
Så hur signerar man en nyckel då? Såhär:

gpg --sign-key [nyckel-id]
gpg -a --export [nyckel-id]

Den sista är bara om man vill skicka den till ägaren till nyckeln så att hän vet att ytterligare en person litar på nyckeln.

Check… Låter jobbigt… Kan man göra det roligt?

Jadå, man kan dra ihop en nyckelsigneringsfest och beroende på antalet deltagare kan man göra det hur jobbigt (och roligt) som helst. Grundbulten här är att alla ska kunna identifieras och kunna kopplas med deras nyckel-id och nyckel-fingeravtryck, sen kan man antingen på plats signera varandras nycklar eller göra det i hemmets lugna vrå.
För mer info och idéer hur det ska gå till; se dessa sidor!

Ok, fint. Men hur får jag skiten att funka med min mejlklient/gmail/whatever?

Det är här det riktigt jobbiga börjar. Det finns plugins till de flesta mejlklienter som är mer eller mindre användarvänliga, till Thunderbird (och derivat) rekommenderar jag EnigMail, gpg4win tror jag har en del plugins eller integrationer till Outlook och windows mail, men det enklaste är att googla.
Kör man webmail som gmail eller hotmail så får man leta reda på plugins till webbläsaren som kan sköta operationerna via klipp-klistra, WebPG är ett sådant plugin till Firefox och Chrome(/ium) som jag har använt med skiftande resultat.
Fattigmansversionen är att skriva det man vill i lämplig editor, kryptera/signera till ascii-armoured och klippa ut och klistra in manuellt.

Das Ände

Helt ärligt så är jag inte särskilt nöjd med ovanstående textvägg, men jag hoppas att någon någonstans kommer finna den användbar på ett eller annat sätt.
För den som vill hitta åt min gpg-nyckel så finns den här.

Annonser

Scam spam är alltid kul

2013/04/30

Tjatja bloggen!
Long time, no see, as usual!
Brukar roa mig med att läsa spam-mail som dimper ner i min mejlbox, generellt sett är de så uppenbara att jag bara garvar.
Men idag trillade det in ett som kunde tas för något hyfsat seriöst, var djävulen i detaljerna som satte dit det om vi säger så.
Klipper in hela mejlet (dock utan formatering och html samt med en maskad mejladress) nedan till allmän beskådan innan jag går lös på det.

From: Jörgen Nilsson (XXXX@tele2.se)
Subject: Nyhetsbrevet April

Hej! Vi hoppas du fått en god start på spelåret 2013 och att du är lika entusiastisk som vi över att fortsätta spelåret och allt det kommer att ge! Glädjande nog kan vi avslöja att 335 av våra spelare vann med Primera-64 i förra omgången
Förändringarna för denna omgången är att spelinstruktionen är mycket enkel att förstå. Även om du aldrig tidigare spelat med system kommer du att på ett enkelt sätt att kunna använda Primera-64

Nyheter år 2013
Under andra kvartalet 2013 kommer vi att bygga ut vår tjänst ytterligare.
Vår nya uppdaterade hemsida kommer då förhoppningsvis att vara klar och utlagd. Vi meddelar adress senare. De nyheter som kommer har vi till stor del dig som kund att tacka för! Vi får mycket bra idéer och önskemål av våra kunder och några av dem kommer att realiseras inom kort. Vi hoppas att Ni fortsätter och mejla in och ge oss fler uppslag. Spelklubben som håller på att bildas fick vi från en av våra kunder

Veckans erbjudande
TIPPA 1 HEMMASEGER OCH VINN MINST 6000 KR INNAN 5 VECKOR! (Garanterat)

GRATIS BONUS längre ner på sidan.

Äntligen!!
Nu har den nya Primera-64 metoden kommit till Sverige.
En nyhet som revolutionerar tippningen.
Med Primera-64 behöver du bara tippa 1 säker hemmamatcher för att uppnå ett snittvärde över på 1*12*+3*11 rätt. Detta ger som regel över 6000 kronor.
Som tillägg kan Primera-64 ge dig 13 rätt nästan varje gång det är från 5 till 10 hemmasegrar på kupongen. Det bästa av allt – detta är möjligt med endast en insats på bara 64 kr per vecka. Men inte nog med det; med Primera-64 har du större möjlighet att vinna 50 miljoner!

Vår oslagbar unik vinstgaranti längre ner på sidan!
Är du bland de första som beställer, får du även tillgång till de bästa programmen för Stryktips, V75, Lotto, Måltips, alla program och hjälpmedel en spelvän behöver.
Det sammanlagda värdet är mer än 800 kr:- UTAN EXTRA KOSTNAD!

OBS! GLÖM INTE DIN GRATIS BONUS (Det kommer en till längre ner!)
Svarar du inom 10 dagar så får du dessutom 5 nykonstruerade V75 system med vår unika vinstgaranti, alla godkända ATG HELT GRATIS!

OBS! GLÖM INTE DIN GRATIS BONUS NR 2
Du får dessutom två spelböcker som lär dig steg förs steg hur man använder spelsystem för stryktipset och V75. Våra absoluta storsäljare (värde 995:-)

VINSTGARANTI!
Vi garanterar , att du efter 5 veckors spel har vunnit minst 6000 kr annars återbetalar vi hela beloppet som du har betalt för systemet.
Garantivillkor: Du måste klara av att tippa dina två hemmamatcher riktigt under garantitiden, samt ha lämnat in kupongerna.
Vi är det enda företaget om lämnar garant!

Ja Tack! Jag vill absolut inte missa chansen att vinna stort!
Jag får därför HELA spelpaketet för introduktionspriset 298 kronor
+ porto (Ord pris 998:- kronor + porto)

Svarar du inom 5 dagar så får du dessutom 5 nykonstruerade V75 system med vår unika vinstgaranti, alla godkända av ATGl HELT GRATIS!
Mejla in din order: Klicka här för att beställa
OBS glöm inte skriva in namn och adress vid beställningen! )

Med vänlig hälsning, och hopp om ett lyckosamt 2013 önskar vi på Nordic Systems

Vänliga hälsningar,
Nordic Systems
Stureplan 2
114 35 Stockholm

Jörgen Nilsson
Marknadsansvarig

To remowe from mejllist just click here: remove@nordicsystems.se

Hoppas alla läste igenom det ordentligt nu; förutom att det verkligen är reklamsnack hela vägen igenom och att jag är tveksamt till hur ett företag som uppenbarligen sysslar med tipset har fått mig som ”kund” (en mer sport-ointresserad person än jag är svårhittad) så en intressan sak som kan upptäckas utan att djupdyka i teknikaliteter:

Den marknadsansvarige använder uppenbarligen en privat mejladress för utskicket, trots att Nordic Systems antingen har en egen MX eller i alla fall någon form av forwarding (remove@nordicsystems.se).

Men förutom den lilla missen så är det väl inget att haka upp sig på?
Förutom den lilla detaljen att en dnskoll mot nordicsystems.se returnerar absolut ingenting! Alltså kan inte mejladressen remove@nordicsystems.se fungera!

Dags för lite mer detaljgranskning av mejlet i fråga, och nu kommer det en hög med utdrag från det oprocessade originalet med start i själva huvudet av mejlet. Mejlet har skickats från Tele2, men avsändaren har enligt mejl-huvudet använt Telenors smtp-servrar (uppgifter har maskats, saker som rör mig har märkts ”NPCOTYG” och övrigt är markerat XXXX):

Received: from smtprelay-h31.telenor.se (smtprelay-h31.telenor.se. [213.150.131.4])
by mx.google.com with ESMTPS id l3si114920lag.109.2013.04.30.12.29.31
for
(version=TLSv1 cipher=RC4-SHA bits=128/128);
Tue, 30 Apr 2013 12:29:31 -0700 (PDT)
Received-SPF: softfail (google.com: domain of transitioning XXXX@tele2.se does not designate 213.150.131.4 as permitted sender) client-ip=213.150.131.4;
Authentication-Results: mx.google.com;
spf=softfail (google.com: domain of transitioning XXXX@tele2.se does not designate 213.150.131.4 as permitted sender) smtp.mail=XXXX@tele2.se
Received: from ipb3.telenor.se (ipb3.telenor.se [195.54.127.166])
by smtprelay-h31.telenor.se (Postfix) with ESMTP id 28AC9C0A3
for ; Tue, 30 Apr 2013 21:29:31 +0200 (CEST)
Message-Id:
X-LISTENER: [smtp.euromail.se]
X-SENDER-IP: [46.194.177.XXXX]
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: Apl6ALMagFEuwrE3PGdsb2JhbABSKoIZg1daa4EGgkmlBwGKcoZzBIEVAwEBAQE4NYIyFw8BXxwCJgJFGg8EAYd5AxOTbow4iwaDUCuCFYZRHIkRjF6Ca3ENgQYDjRGGRpgLOjJ9
X-IronPort-AV: E=Sophos;i=”4.87,583,1363129200″;
d=”scan’208,217″;a=”323474023″
Received: from XXXX.cust.telenor.se (HELO XXXX.cust.telenor.se) ([46.194.177.XXXX])
by ipb3.telenor.se with ESMTP; 30 Apr 2013 21:29:30 +0200
From: ”=?UTF-8?B?SsO2cmdlbiBOaWxzc29u?=”

Dock så kan det finnas naturliga förklaringar till ovanstående; t.ex. att personen har ett konto hos Telenor som han använder och har sin mejlklient inställd på, men han vill att ev. svar ska hamna på tele2-adressen eller att den avsändaren ska användas. Jag har ett par, tre olika mejladresser som jag skickar ifrån som kommer visa gmail i header-fälten trots att from visar något helt annat.

Därför kommer lite andra skojiga utdrag från mejlet; t.ex. kan man ta en titt på ”Klicka för att beställa”-delen, som ser ut såhär oprocessat:


‹BR>Mejla in din order ‹/B>: ‹/FONT>‹FONT face=Verdana size=4>
‹A href="mailto:nordsys@swedenmail.com?subject=Best=C3=A4llning av Primera-64">
Klicka h=C3=A4r f=C3=B6r att best=C3=A4lla ‹/A> ‹BR>‹/FONT>

Jag vet att det är svårläst, men ur ovanstående så kan man med viss möda utläsa att beställningsmejlet går till adressen nordsys@swedenmail.com. Det finns två MX till swedenmail.com: mx00.gmx.com och mx01.gmx.com, http://www.swedenmail.com leder till en ganska typisk ”ingen har registrerat denna domänen”-sida med diverse utlänkar. Siten gmx.com å sin sida verkar vara en sida som erbjuder MX-tjänster.

Som avslutning tar jag upp slutklämmen på mejlet:

To remowe from mejllist just click here: ‹/FONT>‹A href=”mailto:returadress@swedenmail.com?subject=Unsubscribe”>‹FONT face=Verdana size=1>remove@nordicsystems.se‹/FONT>

Felstavning på ”remowe” (remove) och ”mejllist” (mailing list) kan diskuteras, varför har man en engelsk (felstavad) avslutning?
Hade man kört på standardinställningarna i t.ex. mailman hade avslutningen varit på engelska och rättstavade.

Nästa sak i avslutningen är att även här används skilda mejladresser mellan vad som visas och vad som kommer stå i mejlklienten.

Summa Summarum
Behöver jag ens nämna att en googling på ”Nordic Systems” ger resultat som inte är relaterade till spel? Kan hinta om att det är garagedörrar och grejer…

Men; reklamsnack rakt igenom mejlet, avsändaradress som ser ut som en privat, skickat från en annan leverantör än den som från-adressen var och länkar som pekar på en tredje mail-leverantör (varav en är uppenbart under falsk flagg då länktexten säger en sak och koden pekar på en annan). I rest my case…

Hoppas du har det bra i fortsättningen bloggen!
Kanske börjar blogga lite mer rutinmässigt igen nån dag, vem vet?

Data i molnet

2011/02/02

Jag kunde faktiskt inte låta bli att skratta till imorse när jag hörde att man kallade svenska företag för ”blåögda” när det gäller att lagra data i molnet.

Visst jag kan förstå att molnlagringen är frestande eftersom man slipper en massa tråkiga (och kostsamma) delar i företaget såsom egna servrar, lagringsutrymme (både för direkt lagring och för backuper) o.s.v.
Men samtidigt blir jag extremt förvånad över att det kommer som en nyhet att data som lagras i molnet ev. kan kommas åt av andra än kunden.

Det tyder på en rejält bristande insikt i hur saker och ting fungerar i verkligheten, t.ex. att den som har fysisk tillgång till en maskin i princip alltid har tillgång till data som lagrats på den. Då spelar det ingen roll hur säker överföringen mellan kund och lagringsplats är eftersom den länken är irrelevant i sammanhanget.

Och överföringen i sig är problematisk; står servrarna i nåt annat land så kan man räkna kallt med att uppgifterna fångas upp av mellanliggande säkerhetstjänster (Hej FRA!), och i en del av dessa fallen så kan det vara så att den skyddade överföringen inte alls är skyddad p.g.a. lagar som kräver att staten ska ha tillgång till kryptonycklar etc.

Andra problem som kan finnas med molntjänsterna är det Datainspektionen verkar oroa sig för; att uppgifter som raderas inte alls raderas. Och detta kan jag också se som ett problem; driftar man servrar med känsliga uppgifter själv, då kan man kontrollera att raderingen utförs på relevanta ställen och när lagringsmediet byts så kan man själv tillse att destruering verkligen sker.
Finns datat i molnet så försvinner i princip dessa säkerhetsmekanismerna också.

Cyberkrig hit och cyberkrig dit

2011/01/22

Ok, det har varit en del snack om hotet om cyberkrig under veckan.
Personligen så är det ett hot som jag är medveten om att det finns, men jag har svårt att se det som så allvarligt som många verkar vilja att det ska vara.

När det gäller detta ämnet så kan man konstatera att hotet kan placeras i en av tre kategorier; som en del i en militär kampanj, som en del i en terrorattack och ren brottslighet.

I fallet med ”ren” brottslighet så är hotet ganska litet eftersom det inte finns någon direkt ekonomi i att släcka ned ett helt lands infrastruktur, enskilda företag är snarare det man kommer rikta in sig på (vilket är nog så allvarlig; men i min värld är det inte ett krig).

I fallet terrorism så är cyberkrig inte heller speciellt prioriterat därför att det skapar inte kaos och panik hos de utsatta som t.ex. en bomb gör, dock så kan man öka effekten av en fysisk attack genom att angripa infrastruktur i den digitala rymden.

När det kommer till ”riktiga” krig så är det inga nyheter alls; att släcka fiendens kommunikationer har man sysslat med sen tidernas begynnelse (kidnappa budbärare, skjuta ned brevduvor, spränga kablar, störa ut radio), och även i detta fallet så kommer angreppet mot den digitala infrastrukturen knappast vara det enda angreppet.

Dock så kan man se en skillnad mellan ett användade av digitala hot i fallet terrorism och i fallet militära operationer; i fallet terrorism når man effekt ifall man startar det digitala angreppet efter det fysiska angreppet medan militären sannolikt kommer att slå digitalt först och sedan angripa fysiskt.

Schneier har ett antal postningar om just det överdrivna hotet om cyberkrig som länkar till andra som har bättre koll på det där än vad jag har. Länkar som vissa politiker kanske borde läsa innan de pratar om hur farligt det där med cyberkrig är…

Allt kan hackas

2010/05/19

Dagens bilar är i princip rullande nätverk av datorer. Det är väldigt få saker i en modern bil som inte övervakas eller styrs av en dator och dessa datorer behöver kommunicera med varandra av olika anledningar.

Jag har tillochfrån skämtat, särskilt med min pappa, om att man skulle kunna hitta på en massa roliga saker med någon annans bil om man lyckas kontrollera dessa datorerna. Nu är det några amerikanska forskare som har gjort just detta.
Deras forskningsrapport är rätt skrämmande läsning, inte så mycket för att man i princip kan fjärrstyra bilen helt utan för att datorerna och nätverket de kommunicerar över är i princip helt oskyddat.

Vissa funktioner som man utnyttjade (t.ex. att flasha om vissa datorer) är av sådan natur att man inte borde kunna göra det medan bilen är igång.

Förvisso så kan jag förstå varför tillverkarna inte har lagt ned någon större energi på att skydda systemen; man antar att skalskyddet som själva bilen utgör är tillräckligt. Forskargruppen har t.ex. inte funderat över möjliga attackvägar för att kunna installera system som möjliggör fjärrstyrning av den angripna bilen i någon större utsträckning, man har nöjt sig med att konstatera att om någon kan koppla in något i bilens nätverk så kan man påverka i princip alla ingående komponenterna.

Jag tycker att rapporten i sig pekar på något som man ofta missar i dagens samhälle; säkerhetsfunktioner implementeras sällan i system eftersom det finns en form av fysiskt skydd som gör manipulering av känsliga system i princip omöjlig.
Sedan lägger man till mer funktionalitet och öppnar upp för fler ingående delar och vips så kommer någon på att man ska kunna styra någon del i kedjan via internet eller telefonen. Saknas det då otillräckliga säkerhetsfunktioner högre upp så finns det inget egentligt skydd för manipulering utifrån av hela systemet.

Det enda sättet, enligt mig, att kunna lösa denna typen av problem är att redan från början designa med säkerheten i fokus och man måste försöka se in i framtiden, omvänt gäller att nya funktioner som hakas på gamla system måste designas så att missbruk av och genom dem försvåras.

Funderingar kring One Time Pad

2010/05/15

Jag tänkte egentligen skriva några ord om Säpo-härvan, men jag drabbades av skrivkramp eftersom det var andra tankar som bestämde sig för att annektera skrivdelen av min hjärna.

Det som mest har legat och gnagt är lite funderingar om användningen av kryptering när man kommunicera över internet, denna biten har jag inte direkt några synpunkter på (tvärtom). Det som har legat och gnagt var en diskussion jag blev involverad i om att använda One Time Pads för krypteringen, något jag personligen anser vara meningslöst och dessutom mycket riskfyllt.

One Time Pad är ett extremt enkelt krypto, egentligen så handlar det om att man adderar klartext till nyckelmaterialet.
Problemet med One Time Pad ligger inte i själva algoritmen utan i nyckeln, för att ett chiffer ska kunna kallas One Time Pad är det några saker som måste uppfyllas och dessa är:
1. Nyckeln måste vara av samma längd som klartexten
2. Nyckeln måste vara slumpmässig
3. Nyckeln måste överföras till motparten på ett säkert sätt
4. Nyckeln måste förstöras och aldrig återanvändas

Om ovanstående fyra kriterier uppfylls så är ett dokument krypterat med en OTP matematiskt oknäckbart eftersom en icke slumpmässig datamängd adderad till en slumpmässig datamängd av samma storlek ger ett slumpmässigt resultat.
Kryptotexten ger inga ledtrådar om innehållet som man kan upptäcka på statistisk väg och försök med varje möjlig nyckel kommer ge som resultat att man får samtliga klartexter av samma längd.

Om man tittar på de fyra punkterna ovan så är det punkt två och tre som ställer till problem.

För att chiffret ska räknas som ett OTP krävs det att nyckeln är sant slumpmässig, utnyttjas mjukvarubaserade slumptalsgeneratorer så får man inte äkta slumptal. Det finns mjukvarubaserade slumptalsgeneratorer som anses som kryptografiskt säkra (d.v.s. det är i princip omöjligt att utifrån föregående slumptal förutse kommande).
Utan att föra en lång diskussion om slumptalsgeneratorer så kan man konstatera att ifall en mjukvaruslumptalsgenerator används för att skapa nyckeln så är det inte ett OTP och därmed är beviset för oknäckbarhet upphävt.
Förmågan att motstå angrepp ligger hos slumptalsgeneratorn; knäcks den så att ett angripare kan förutse och återskapa slumptalen så har han knäckt chiffret.

Nästa problem är egentligen det riktigt stora, ovanstående är av mer akademisk karaktär; att överföra nyckeln på ett säkert sätt. Detta hänger ihop med att nyckeln måste vara lika lång som det överförda meddelandet; man måste överföra stora mängder nyckeldata via en säker kanal. Säker kanal i detta fallet är i princip att överlämna en dvd-skiva eller ett usb-minne med nyckeln på till mottagaren, antingen ansikte mot ansikte eller via en betrodd kurir.
I diskussionen jag deltog i menade en av deltagarna att man kan skicka nyckeln i krypterad form (t.ex. med gnupg eller liknande) till mottagaren, jag menar att det tillvägagångssättet är förkastligt.

Om man använder OTP så gör man det för att man inte litar på att andra krypteringsmetoder är tillräckligt säkra, man behöver garanterad oknäckbarhet. Att då skicka nyckeln (som antagligen är åtskilliga hundra megabyte eller gigabyte för att minska antalet nyckeltransporter) under ett skydd som är sämre än det man vill uppnå är bara korkat. Då kan man lika gärna använda den ”sämre” krypteringen redan från början.

Summasummarum; Att använda OTP vid kommunikation är sannolikt en dålig idé.
För det första så är nyckelhanteringen ett stort problem då man dels måste skapa stora mängder slumptal och dels för att dessa ska överföras till mottagaren på ett säkert sätt.
För det andra så finns det en risk att man invaggar sig själv i en falsk känsla av trygghet då det är svårt att skapa äkta slumptal och det är svårt att skapa dem i stora mängder. Är inte nyckelmaterialet sant slumpmässigt så har man inte garanterad oknäckbarhet.

Jag kan dock se vissa användningsområden för OTP, och det skulle vara för överföring av sessionsnycklar till andra krypteringssystem.
Det blir gnupg (etc.) på steroider. De flesta system som bygger på kryptering med öppna nycklar funkar som så att man krypterar data med en symmetrisk algoritm (ex. AES) och en för meddelandet unik nyckel. Nyckeln krypteras sedan med mottagarens offentliga nyckel och bifogas meddelandet.
I detta fallet kan en angripare välja att antingen angripa den symmetriska delen med meddelandet eller den asymmetriska som innehåller nyckeln. Det är alltså två skilda algoritmer som man måste lita på att de är tillräckligt säkra.
Ersätter man den asymmetriska delen med otp så har man eliminerat den ena riskfaktorn, men skyddet är fortfarande inte starkare än den symmetriska algoritmen.

Nackdelen är dock att man förlorar hela poängen med att använda kryptering med öppen nyckel, men för personer som har möjlighet att träffa varandra fysiskt nångång ibland och som behöver kommunicera säkert över ett osäkert medium så kan detta vara en fungerande lösning…

Google chrome klarade sig

2010/03/25

Läser att Google Chrome klarade sig helskinnad igenom Pwn2Own-tävlingen.
Alla de andra deltagande webbläsarna kunde användas för att bryta sig in i det underliggande systemet. Artikeln missar dock en viktig poäng när det gäller Chrome; ingen försökte sig på att bryta sig in i datorn genom den.

Å andra sidan säger en av deltagarna att det är svårt att bryta sig in via Chrome eftersom det finns ett flertal säkerhetslager, så även om man hittar sårbarheter så är de svåra att utnyttja. Men… tid, tålamod och tur är allt som behövs.
Därmed inte sagt att Chrome är osäkert.

Braband, bra eller snack?

2010/01/22

DN skriver väldigt kort om TPB-dödar-tjänsten Braband.
På Braband.se beskrivs tjänsten såhär:

BraBand är idag Sveriges enda aktör som tillhandahåller tryggt internet i ordets rätta bemärkelse.

Oavsett om du är en engagerad förälder eller företagare är BraBand en billig och effektiv försäkring mot att ingen användare kan missbruka din internetuppkoppling.

Vidare så lyfter man fram att Braband hindrar illegal nedladdning, krypterar internettrafiken, virusscannar nedladdade filer och ökar hastigheten på uppkopplingen (i Faqen står det dock ”I de flesta fall så kommer inte hastigheten på din Internetanslutning att påverkas eller påverkas positivt.”).

Så, vad har jag för synpunkter på tjänsten?
Egentligen så har jag inga synpunkter på tjänsten som sådan eftersom jag inte kan testa den på ett vettigt sätt utan jag kan bara läsa om den på deras hemsida.

Vad jag dock direkt kan påpeka är att man garanterar att ingen kan missbruka internetuppkopplingen, en sådan garanti kan inte lämnas av någon. Man kan garantera att det blir svårt, men man kan aldrig garantera att det kommer ske (helt ärligt, användare är generellt sett fantastiskt uppfinningsrika när det kommer till att kringgå säkerhetssystem).

Man skriver att man hindrar illegal fildelning, man nämner inte med ett ord att man sannolikt även hindrar legal fildelning (remember, många torrentsidor används för att sprida legalt material).

Kryptering av internettrafiken är förvisso vettigt, men jag antar att det man krypterar är länken mellan användaren och Brabands serverhall. Alltså kan man sannolikt, om man vill, manipulera trafiken mellan Braband och resten av internet. På samma tema så funderar jag på ifall Braband anonymiserar trafiken som t.ex. Ipredator, sannolikt gör man inte det (man nämner det inte i alla fall) eftersom man kommenterar andra krypteringstjänster med orden

BraBand är en motpol till dom krypteringstjänster som dykt upp vars erbjudande är framtaget för att underlätta olaglig verksamhet.

Att man scannar trafiken efter virus har jag inga speciella synpunkter på egentligen.

Uttalandet om att Braband kan få trafiken att gå snabbare finner jag en smula märkligt. Antagligen kör man nån form av cache i tjänsten som under vissa omständigheter kan snabba upp det hela, men antagligen ligger det man säger i Faqen närmare sanningen; sannolikt kommer ingen prestandaförändring märkas av användaren.

Vad mer kan man säga?
Jag saknar information om hur filtreringen sker, men utifrån vad man kan läsa på hemsidan verkar det handla om DNS-filtrering i första hand. DNS-filtrering kan kringgås med relativt enkla medel, lite beroende på hur programmet som användaren installerar på sin dator är byggt.

Jag är ganska sugen på att beställa denna tjänsten enbart för att lista ut hur den fungerar…
Frågan är om man kan ”bryta sig ur” tjänsten genom att använda TOR eller i2p?

Intressant

Hur AES fungerar

2009/09/22

Via bloggen Kryptera hittade jag denna underhållande ”serie” om historien om AES och hur AES fungerar under huven.

De flesta borde kunna hänga med i alla fall till ”Act2 – Crypto Basics” men även fortsättningen är riktigt intressant läsning för den som är nyfiken på hur en ”riktigt” krypteringsalgoritm kan se ut i verkligheten.

Håll till godo!

Ser även hos herr Schneier att man lyckats faktorisera talet 15 med en kvantdator.
Nu kanske faktorisering av talet 15 är speciellt svårt (3×5), men att man har lyckats göra det med en kvantdator är ett viktigt steg för forskningen inom området.
Men ännu är det lång tid kvar innan det är ett riktigt hot mot våra nuvarande krypteringsalgoritmer.

Intressant

Alla dessa virus och trojaner

2009/09/22

Aftonbladet slår på stora varningstrumman för en trojan som enligt experterna hjälper till att tömma drabbade personers bankkonton.

Trojanen snappar upp och vidarebefordrar känslig information till någon ute på den digitala spindelväven. Om hotet är så allvarligt som AB gör gällande är jag inte helt säker på och jag tänkte gå igenom varför nedan.

Bankkonton
Trojanen lyssnar, vad jag kunde förstå, passivt på uppgifter som knappas in. Alltså kan trojanen komma över inloggningsid och lösenord till internetbanken. Frågan är om detta är tillräckligt för att kunna länsa kontot på pengar?
Jag ställer mig tveksam till det av ett par anledningar, för det första så tillämpar alla internetbankerna (såvitt jag vet) engångssystem för lösenorden. Alltså kan inte ett uppsnappat lösenord återanvändas.
Nästa steg är att överföra pengarna från kontot, även detta brukar kräva ett nytt engångslösenord både för själva överföringen och för att lägga till ett nytt konto som överföringen sker till. Här kan man inte heller återanvända tidigare lösenord (dessutom brukar dessa ha koppling till det nya kontonummret och summan som ska överföras).
Dock så tillämpar i alla fall Swedbank en variant där man kan logga in med en fast lösenord, dock så tillåts man bara att överföra pengar mellan sina egna konton med den inloggningen.

Alltså ställer jag mig tveksam till att denna trojanen fixar att stjäla pengar direkt från ett bankkonto, men jag är inte säker. Det kan vara så att trojanen tillåter fjärrstyrning av den infekterade datorn och då hamnar allt i ett lite annorlunda ljus. Jag kan även tänka mig att man med hjälp av trojanen kan få information som kan användas till phising för att komma åt pengar…

Lösenord
Uppsnappade lösenord ser jag som ett mer överhängande hot i detta fallet eftersom detta kan ge tillgång till mejlkonton och liknande som kan användas till diverse dunkla syften tillexempel att skicka spam.

Så hur skyddar man sig?
Hur gör man för att slippa oroa sig för denna trojanen (och andra sattyg)?
Det grundläggande är att ha ett uppdaterat antivirusprogram, men allra bäst är om man kan stoppa trojanen redan innan den når datorn.
Eftersom trojanen verkar spridas via annonser på diverse sidor (”Viruset smittar genom att en dataanvändare besöker en webbsida som är infekterad med skadlig kod.”) så är min rekommendation att installera någon form av reklamblockeringsplugin i webbläsaren (tillexempel ABP till Firefox).
Sen är det det gamla vanliga om att inte klicka ”OK” eller ”JA” i varenda dialogruta som dyker upp…

Petrify verkar vara inne på samma linje som jag.
Intressant

Uppdatering: Det verkar inte ens som att Symantec, som Aftonbladet hänvisar till, ser trojanen som något större hot:

Trojan.Clampi
Risk Level 2: Low

Threat Assessment
Wild

* Wild Level: High
* Number of Infections: 50 – 999
* Number of Sites: 10+
* Geographical Distribution: High
* Threat Containment: Easy
* Removal: Easy

Damage

* Damage Level: Medium
* Payload: May download other threats on to the compromised computer.

Distribution

* Distribution Level: Low

Uppdatering två:
Jag glömde ett av de klockrenaste tipsen för att minska skadorna av såna här trojaner; kör inte som administratör utan som ”begränsad användare”. Det minskar trojanens möjligheter att avlyssna avsevärt (om den ens kan installeras)!