Dessa dumheter

Jag läser att flera Linux-system (eller ja, åtminstone Fedora) har en pseudo-enhet som heter /dev/watchdog. Funktionen är denna: Om ett program öppnar enheten för läsning, men sedan inte hör av sig på någon minut, så startas systemet om.

Detta är puckat. Det är också själva syftet med enheten.

Problemet är att om enheten kan öppnas av vem som helst, så kan vem som helst starta om systemet:

$ cat /dev/watchdog

Men om enheten bara är läsbar för root då, i sådana fall kan väl ändå inte vem som helst ta ned burken? Så fungerar ju (enligt uppgift) SELinux.

Det hjälper inte. Gör så här så får du reda på varför:

$ find / -type f -perm -4000

En sådan sökning ger dig en lista över alla program som körs som root. Det innebär att de kan öppna enheten.

Allt du behöver göra är alltså att lista ut hur du ska få något av dem att öppna /dev/watchdog för läsning, men sedan inte något mera. Det är tokmöjligt.

Att köra Firefox på eget konto

Uppdatering: Även om man fortfarande kan använda det här tipset, så finns numera en förbättrad version att använda i stället. Den kommer dessutom med löpande uppdateringar… :-)

* * *

Som webbparanoid står man inför ständiga faror. Tänk om min webbläsare har något farligt säkerhetshål, som någon otrevlig webbsida jag råkar besöka får för sig att utnyttja för att ladda upp alla mina filer, eller än värre ta bort dem helt?

Problemet går givetvis att lösa på flera sätt, och lika givet är att ingen lösning är fullkomlig. Den jag tänker lägga fram här torde fungera som försvar mot de flesta »opersonliga« attacker man kan råka ut för. Om någon däremot faktiskt är ute efter dig så har du nog ingen glädje av det.

Vad vi kommer att göra är att ordna så att Firefox (och faktiskt vilka program du vill) kan köras utan rättigheter till din home-katalog. Simpelt som en plätt.

The following takes place in a unix-like environment. Du måste ha sudo och XTerm installerat.

Skulle sudo bråka med dig, se avsnittet längre ned om sudo.

  1. Skapa en ny användare på ditt system, och döp den till något smart. Låt oss kalla den _web. Ge den en egen home-katalog som heter /home/web.
  2. Spärra all tillgång till din egen home-katalog för andra användare än du själv:

    $ chmod -R og-rwx $HOME

  3. Kontrollera att användaren _web berövats sådan tillgång:

    $ echo "Den här textfilen får du inte läsa." > ~/kontrollfil.txt
    $ sudo -u _web cat ~/kontrollfil.txt
    Password:
    cat: /home/jesper/kontrollfil.txt: Permission denied

    Sedan kan du ta bort testfilen:

    $ rm ~/kontrollfil.txt

    Om inget permission blev denied så har du ett konstigt filsystem. Lämna en kommentar!
  4. Kopiera din webbläsares inställningskatalog till den nya användaren. Använder du Firefox heter den .mozilla och kör du Opera är det .opera. Kopiera katalogen såhär:

    $ sudo cp -r $HOME/.mozilla /home/web/
    $ sudo chown -R _web._web /home/web/.mozilla

    Och liknande för Opera:

    $ sudo cp -r $HOME/.opera /home/web/
    $ sudo chown -R _web._web /home/web/.opera

    En del andra webbläsare sparar sina inställningar i en katalog inuti katalogen .config, däribland Midori. För att kopiera en sådan katalog måste du gå litet annorlunda tillväga.

    $ sudo -u _web mkdir /home/web/.config
    $ sudo cp -r $HOME/.config/midori /home/web/.config
    $ sudo chown -R _web._web /home/web/.config

  5. Med ett par enkla trollformler kan du nu köra igång din webbläsare under en annan användare, men med samma inställningar som dem du kopierade från ditt vanliga konto. Men trollformler är inte roliga att komma ihåg, så vi automatiserar det hela med ett skalskript. I exemplet lägger vi det i filen $HOME/bin/webuser.sh, och detta är vad den skall innehålla: (Eventuellt klagar någon insatt läsare på att $HOME-variabeln får samma värde flera gånger om. Men det verkar faktiskt krävas i vissa sammanhang, och jag är osäker på varför.)
  6. Sista stegets utförande lämnar jag som en övning åt läsaren. Det som måste skapas är en ikon, ett menyalternativ eller något annat fiffigt, som vid aktivering gör bruk av den smått makalösa trollformeln ovan:

    xterm -geometry 20x1 -e 'sudo sh $HOME/bin/webuser.sh WEBBLÄSARE'

    Det sista ordet ska givetvis inte vara »WEBBLÄSARE«, utan det kommando som din webbläsare startas med. Till exempel firefox. Om du får välja mellan att köra kommandot i ett terminalfönster eller inte, så kan du välja att låta bli.

Vad kommer hända när du dubbelklickar på den där ikonen? Jo, en pytteliten ruta dyker upp på skärmen som frågar efter lösenord. Det är sudo som frågar, och i sina flesta inkarnationer är det lösenordet till ens eget konto det ber om. Vanligtvis frågar sudo inte heller efter lösenordet oftare än kanske var tionde eller tjugonde minut. Programmet kommer nämligen ihåg lösenordet åt dig en stund efter att du matat in det.

Om sudo bråkar!

Om sudo inte vill låta dig hålla på med sådant precis hur som helst, så kan du lägga till följande rad i slutet av filen /etc/sudoers – men akta dig! Om du råkar göra den filen ogiltig kan du bli utelåst från ditt eget system!

user    ALL=(ALL) SETENV: ALL

Första ordet ska förstås inte vara user, utan ditt eget användarnamn på din burk. Detta är viktigt! Gör du fel, som sagt, så får du rejäla problem, och kommer sitta och svära över att du aldrig lärt dig ed, en texteditor anpassad för en tid då man hade skrivare istället för datorskärmar. (Jag skojar inte.)

Ett sätt att undvika sådana missöden är att försöka redigera filen med följande kommando:

$ sudo env EDITOR=gedit visudo

Ersätt gedit med den texteditor du gillar att använda. När du ändrat färdigt i filen och sparar och stänger, så kommer visudo kontrollera att filen är riktig. Har du gjort något tokigt kommer den ge dig en chans att reparera skadan innan det är för sent.

Och till sist, om du inte gillar att sudo kommer ihåg dina lösenord, lägg till följande rad långt upp i /etc/sudoers, bland de andra Defaults-raderna, om du har några.

Defaults timestamp_timeout =0

Det var allt!

Epostfälla avslöjade intrång på Svenska Spel?

Alldeles nyss lade jag på luren efter att ha pratat med en projektchef för Spelkortet (tror jag det var) på Svenska Spel, som faktiskt lät lite uppskakad av min fråga. Kanske borde jag tacka min trevliga telefonröst och min förmåga att låta seriös för att han inte bara avfärdade mig, eftersom det faktiskt verkar som att de utsatts för oegentligheter.

Det rör sig antingen om ett dataintrång där åtminstone epostadresser stulits, eller också om att någon inom organisationen läckt samma information – kanske mot »betalning«? Det kan också vara så att det handlar om en osannolik slump, så glöm för guds skull inte bort att läsa frågetecknet i rubriken.

Händelsen måste även ha ägt rum tidigare än september, då de upptäckte en trojan på sitt interna nätverk.

Men hur sjutton kan jag veta det?

Att gillra en epostfälla

Sedan flera år tillbaka lämnar jag aldrig ut min egentliga epostadress till andra än mina närmaste. Istället använder jag en ny i varje nytt sammanhang, och när jag registrerar mig på någon sajt blir det med en unik för den sajten.

Eftersom jag äger mina egna domäner har jag valet att ta emot all epost som skickats till icke existerande mottagare. När ett företag kontaktar mig, gör de det på en adress som bara de har.

Inte ens på min egen dator eller min epostserver finns adressen lagrad. Den är icke-existerande.

(Samma trick går förresten att utföra med många (men inte alla) mejltjänster, bland annat GMail, genom att man ger dem en plusadress – istället för att ge dem adressen till.mig@example.com, ge dem till.mig+derasnamn@example.com, så kommer deras utskick ändå att levereras till din egen adress.)

Men några plusadresser är det inte tal om i det här fallet, utan det handlar verkligen om adresser som inte finns.

Fällan slår igen

Så döm om min förvåning när det i april i år trillade in reklam för rakebacklovers.com på den adress jag givit till Svenska Spel och bara till dem. Jag epostade deras kundtjänst och frågade vad det kom sig, men fick inget svar.

Utöver några ytterligare reklammeddelanden under april, så vet jag inte om jag fick något mera förrän i augusti, eftersom jag kan ha raderat dem utan att reflektera över att mottagaradressen var Svenska Spels.

Men i augusti kom alltså fler. Denna gång från onlinehunters.net.

Jag kontaktade dem igen via epost, men utan svar.

Idag ringde jag dem istället. Efter att ha fått höra av en trevlig supporttjej att vad jag berättade om stred mot deras policy några gånger, erbjöd hon sig att slussa mig vidare till någon med bättre koll.

Snart pratade jag med den där projektchefen, bifogade en kopia av ett av reklamutskicken till honom, och fick höra ytterligare tio gånger att det stred mot deras policy.

Epostfällan hade slagit igen (igen, det har hänt förr)!

Pinsamt!?

Nja, egentligen inte särskilt.

Här är ett avsnitt ur deras aktuella medlemsvillkor:

Svenska Spel skall behandla information rörande de uppgifter som registrerats om Spelaren, inklusive spelkontotransaktioner, konfidentiellt. Endast behörig myndighet kan erhålla sådana uppgifter enligt svensk lag eller regeringsbeslut.

Man måste ha klart för sig att de knappast fattat beslut om att sälja sitt epostregister till ryska online-kasinon. Vad som däremot skulle kunna vara pinsamt är att de inte svarat på mina mejl.

Räknar man in att jag kan vara precis vem som helst (och det är jag ju) så hade jag förstått om de skickat något tråkigt och avfärdande svar. Nu svarade de inte alls istället, och med tanke på vad Svenska Spel faktiskt är för slags bolag, är det ändå lite anmärkningsvärt att eventuella säkerhetsfrågor kastas i papperskorgen.

Särskilt som den första människan jag pratade med faktiskt föreslog att någon kanske ringt och låtsats vara mig, och på så vis fått tag på min epostadress. I det här fallet är det någonting oerhört osannolikt, eftersom adressen faktiskt innehåller »svenskaspel«. Vem är så dum egentligen?

Läckor är omöjliga att förhindra helt

Att de råkat ut för en registerläcka är en helt annan sak. Det är dåligt, ska undvikas, men det går inte att göra det omöjligt att komma åt uppgifterna. Åtminstone inte i praktiken.

Allt man kan göra är att minska sannolikheten att det sker.

I det här fallet kan man i första hand misstänka ett insider-jobb eller ett dataintrång. Båda är omöjliga att helt förhindra.

Någon måste ha tillgång till epostregistren, annars finns ingen som kan göra utskick eller ändra adress om det blivit fel. Några av de datorer som epostadresserna lagras på måste i sin tur vara kopplade till internet för att kunna göra utskicken.

Man kan göra det svårt att bryta sig in i datorer, liksom man kan göra det krångligt att få med sig data ut ur organisationens lokaler, men det går aldrig att förhindra helt.

Att jag bara fått reklam från diverse nätkasinon antyder dessutom att de som skaffat epostadresserna varit på jakt specifikt efter just Svenska Spels register.

Inga tvivel

Det råder för mig ingen tvekan om att det är på deras sida läckaget skett. Den aktuella epostadressen finns, förutom i deras register, endast i det fåtal reklamutskick jag har sparade i min knädator – epost från Svenska Spel har jag aldrig sparat efter att jag läst dem – och när jag väl fick reklamutskicken hade ju adressen bevisligen redan kommit ut.

Tillika intressant är att jag valt att avstå alla former av utskick ifrån Svenska Spel. Min epostadress hanteras rimligtvis inte av deras system över huvud taget, förutom när det gäller databasunderhåll.

De illegala utskick jag fått innehåller inte mitt namn heller, utan är adresserade som om jag hette detsamma som den första delen av min epostadress. Även om detta antyder att någon kommit åt en utskickslista, istället för något komplett medlemsregister, så ska jag egentligen inte finnas på några utskickslistor eftersom jag avböjt alla utskick. Vad för register som läckt, om något läckt, det vågar jag alltså inte gissa.

Så till sist, frånsett alla indicier på att det är Svenska Spels register som läckt, hur stor är den isolerade sannolikheten att någon ändå kunnat få tag på adressen genom att ta sig in i min lilla knädator kristina?

Den är så otroligt försvinnande liten, att det är meningslöst att ens tänka tanken.

Min användarprofil kan inte beskrivas mera träffande än med ordet paranoid. Epostadressen kan ha funnits i något mejl åt gången på min hårddisk, kanske sammanlagt motsvarande ett par dygn sedan jag registrerade mig hos dem för flera år sedan. Bortsett då från de här reklamutskicken, som jag sparat på.

För att säga det så att en geek förstår: Jag är paranoid och kör uteslutande OpenBSD. Firefox och Pidgin går under en annan användare utan tillgång till mina filer, eftersom jag är lite oroligt lagd. Mitt radionätverk är WPA-PSK, men jag tunnlar genom IPSec ändå. För att komma åt adressen måste man ge sig på mig specifikt – det finns säkert flera som skulle klara av det, inte minst genom att helt enkelt bryta sig in i min lägenhet – men varför ett sådant hästjobb för att bara sälja min adress till två sketna nätkasinon?

Jag säger det otroligt sällan, men den här gången är jag faktiskt helt säker. Läckan var hos Svenska Spel, kanske via någon anställd eller dataintrång, och det är med all sannolikhet inte bara just min adress som läckt. Kanske handlar det om samtliga epostadresser de hade registrerade i våras. Kanske handlar det till och med om mera än bara epostadresser.

Det blir spännande att se vad som händer!