It-säkerhet enligt HPS

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

Month: december, 2009

Säkerheten i tunnelbanans spärrar

Stockholms lokaltrafik (SL) har under många år kämpat mot trafikanter som inte betalar för sin resa; i folkmun så kallade plankare. Det har på senare år (och tidigare år också antar jag) varit en kontinuerlig debatt om huruvida det ska kosta att åka kollektivt. Jag är inte här för att lägga några värderingar i det hela så vi skippar den biten.

Ekonomiska styrmedel
Vad som är mer intressant är vad SL gör för att förhindra plankning. Det mest kända motmedlet är förmodligen bötern eller tilläggsavgiften som det kallas när man blir tagen på bar gärning utan giltig biljett. År 2007 höjdes avgiften från 600 kr till 1200 kr. Böter är en form av ekonomiskt styrmedel som syftar till att plankare ska gå i förlust på sina aktiviteter och därför låta bli. Tanken är att en böter kostar mer än biljetten gör per månad och att det räcker med att åka dit en gång i månaden för att förlora på det.

Styrmedlet lider av ett par problem. Att bli ”tagen på bar gärning” innebär att en biljettkontrollant stoppar dig innanför spärrarna och ber dig visa din biljett, om du inte kan göra det får du ett inbetalningskort på 1200 spänn.

Problem #1: Det är inte särskilt vanligt med kontrollanter. Jag åker tunnelbana och buss varje vardag och har de senaste fem åren varit med om det två gånger. Andra gången hade det varit möjligt att undvika kontrollen helt. De flesta man pratar med verkar ha ungefär samma uppfattning.

Problem #2: Kontrollanterna har inga särskilda rättigheter. Majoriteten av den personal som arbetar som biljettkontrollanter har inte rätt att tvinga dig att visa din biljett eller att stoppa dig. Plankaren kan alltså i regel ignorera kontrollanten och lugnt promenera vidare.

Dessa två problem har tillsammans resulterat i att man, i det långa loppet, sparar pengar på att planka. Även om du har kolossal otur och åker på tre böter första månaden så kommer det att jämna ut sig över tiden (om biljettkontrollerna fortsätter som de gjort historiskt). Dock är 3600 kr i böter på en månad något som många inte kan hantera i väntan på att det ska löna sig på sikt. Lösningen på det här ”problemet” kom med P-kassan, en bötesfond skapad av organisationen Planka.nu. Som medlem betalar man 100 kr per månad till fonden och när man åker fast i en kontroll betalas boten med medel från fonden. (Den förväntande bötessumman per månad är alltså mindre än 100 kr.) På det här viset kan man som plankare kliva rakt in i ”det långa loppet” eftersom man delar risken med alla andra. Fonden går inte back på grund av de två problemen ovan. Om SL dessutom skulle få för sig att fördubbla mängden kontroller borde alltså P-kassan bara kunna fördubbla sin medlemsavgift.

Organisationen Planka.nu går dessutom ut med information som underlättar för plankare. Till exempel vilken personal som har rätt att göra vad i tunnelbanan och hur man passerar olika typer av spärrar. Vilket för oss till nästa motmedel.

Fysiska hinder
Alla som har åkt tunnelbana i Stockholm har förstås sett spärrarna längs spärrlinjen, grindar som bara kan passeras med en giltig biljett. Spärrarnas utseende är olika beroende på station och utvecklas förstås över tiden. Som sig bör inom säkerhet handlar det om en kapprustning.

Spärrlinjen ovan består av (vad vi här kallar) första generationens spärrar. Hindret är ett treben som bara snurrar inåt om en giltig biljett har dragits. Säkerhetshålet som utnyttjades mot dessa är att trebenet snurrar utåt utan vidare (för trafikanter som passerar ut från tunnelbanan). Genom att dra trebenet emot sig ett sjättedels varv bildas en lucka som man kan gå genom (pedagogisk illustration).

För att förhindra detta sattes en sensor upp i form av en fotocell på insidan av varje spärr. Trebenet går bara att snurra om fotocellen har brytits (vilket den gör naturligt av ens ben när man passerar ut genom spärren). Problemet var att fotocellen är lätt att nå med foten från utsidan, spärren kan sedan passeras på samma sätt som innan (ytterligare illustration).

SL gick till motattack och flyttade ut sensorerna så att de inte går att nå med foten, se bilden nedan.

Det naturliga sättet att ta sig förbi det nya hindret blir att ta sig över det genom att ta tag på sidorna och hoppa (illustration). Något som SL på vissa stationer försöker försvåra genom att sätta upp plåtar på spärrarna.

Det är dock möjligt för agila personer att hoppa över även dessa (illustration). Den senaste modellen av spärr har en viss Star Trek-känsla med glasdörrar som glider åt sidan.

 

Glasspärrarna är förstås inte immuna mot att hoppas över men det är nog tillräckligt bökigt för att vara tillräckligt avskräckande. Dessutom, om sensorerna på insidan bryts så att dörrarna öppnas kommer ett larm att tjuta om spärren passeras i fel riktning. (T ex om du släpper ner Metro på andra sidan så att fotocellerna bryts på insidan men passerar in från utsidan.) Detta larm är dock tillräckligt vanligt för att lida av samma problem som billarm har gjort i många år. Att larmet inte har någon egentlig effekt gör att tailgating är en genomförbar attack eftersom larmet ljuder även då. Så har dock inte alltid varit fallet, från början stängdes glasdörrarna fortare för att förhindra just tailgating. Detta ledde dock till att folk hamnade i kläm och tidsluckan fick därför ökas så att attacken möjliggjordes.

 

För den inbitne plankaren som inte är beredd att dra åt sig uppmärksamhet genom att klättra, tailgatea eller släppa en tidning på insidan finns det en annan lösning. Åk inte från stationer där dessa spärrar är uppsatta, eftersom de inte finns överallt kan man välja vilken säkerhetsnivå man är beredd att försöka passera. Åk från Hötorget istället för T-Centralen.

 

”Men, vad har tunnelbanan med något att göra egentligen?”, hör jag dig säga. Det är bra övning att fundera kring system på det här sättet, oavsett om systemet är en Exchange-server, kollektivtrafiken eller telefontävlingar.

Stefan Pettersson

Annonser

Australiens nya censurlag presenteras med Sverige som censurförebild

Som många nog har sett så har Australien nu gått vidare med förslaget att censurera Internettrafik. Det är en surrealistisk lag baserad på moralpanik, som i slutändan innebär att Australien lägger väldigt mycket pengar på något som inte kan förväntas ge speciellt hög effekt – åtminstone inte på det man säger sig vilja ha. Och som om det inte vore nog – Australiensiska ”Department of Broadband, Communications and Digital Economy” tar upp Sverige som en av föregångarna som redan infört filtrering på ISP-nivå! Det som departementet hänvisar till kan möjligen vara att vissa svenska ISP:er har ett samarbete med polisen där man på egen bekostnad försöker få bort barnporr. Skillnaden mellan ett privat initiativ och en statlig lag är dock enorm.

  • I Sverige är filtreringen frivillig för operatörerna – i Australien tvingas den på
  • Som privatperson kan jag i Sverige välja en ISP som inte filtrerar – Australiensare kommer tvingas på det
  • Som privatperson har jag en viss valmöjlighet om mina pengar ska spenderas på censur, i Australien är det en skattefinaniserad satsning som redan 2007 hade kostat 650 miljoner kronor.
  • I Sverige är det som filtreras enbart barnporr – Australien har med formuleringar som ”detailed instruction in crime, violence or drug use”

 

De två sista punkterna är riktigt allvarliga.


Mycket pengar för lite effekt

Det kommer alltid finnas sätt att kringgå censuren. Det borde Australiensarna veta eftersom de efter att ha spenderat 650 miljoner kronor på ett system fick se det knäckt inom en halvtimme av en 16-åring. En av förespråkarna, Senator Fielding, tog lätt på det och menade att det var klart att det inte skulle fungera, för att det skulle fungera behövde man ha censuren BÅDE på den lokala datorn och på ISP-nivå: Family First senator Steve Fielding, a cyber safety campaigner, said cracking the software highlighted the need for compulsory filtering by internet providers.


”You need both. You need it at the ISP and at the PC level,” Senator Fielding said. ”The Government has not listened to common sense and it leaves kids exposed.”


Det låter som ”truthiness” i mina öron.

Vem avgör vad som är ”detailed instruction in crime, violence or drug abuse”?

Att förbjuda barnporr är politiskt väldigt enkelt. Att få en hållbar, verklig effekt kan vara svårare, men ändå är det en relativt enkel grej att avgöra vad som är barnporr och inte. Jämför då istället med vad som anses vara ”detailed instruction in crime”. Är exempelvis material som visar hur man dyrkar upp lås något som ska förbjudas då? Hur är det med instruktionsfilmer på t.ex. metasploit? Eller WEP-crack? Hur är det med kampsportsfilmer, visst innehåller väl dom detaljerade instruktioner på våld?

 

Hur ska man avgöra vad som är vad? Hur ska det överklagas när något hamnat på listan som kanske borde vara tillåtet? Vad kommer all den här driften kosta och vad får man ut av det?

Vad som krävs för effektiv censur – Iran som exempel

Iran gjorde häromveckan det enda ”rätta” om man verkligen vill censurera bort specifika delar – stäng av ALLT. Just Iran är ett bra exempel att titta på för till skillnad från Australien så har insatserna varit höga. Australien lider bara av moralpanik och om det fungerar i praktiken eller inte spelar egentligen inte så stor roll – politikerna kan alltid hävda att de tar tag i situationen och spinna vidare på det. Men i Iran så dör människor och staten får ett eskalerande svårkontrollerat läge när för staten obehaglig information sprids via Internet och nya protester organiseras. Iran har från tidigare erfarenheter dragit slutsatsen att det inte går att censurera enbart vissa delar/funktioner på ett tillräckligt effektivt sätt.

….

Det skulle vara verkligt intressant hur Australiensarna tänkt mäta effekten av sin lag. Antalet blockeringar gjorda? Antal minskade upptäckta brott av en viss typ?  .. antal blockeringar borde jämföras med antal lyckade kringgåenden, och per definition så har man ju missat dem. För antalet minskade upptäckta brott finns liknande argument samt att den siffran påverkas av så ofantligt mycket annat. Hur tänker man visa folket att den här satstningen inte bara är pengar i sjön där storebror staten övervakar invånarna?


Carl-Johan ”CJ” Bostorp

Hur hackerintrång går till

Vi har tidigare bloggat om Verizons rapporter som redogör för hur dataförluster (huvudsakligen kortnummer) har gått till. Nu är Verizon ute med ett tillägg till den senaste rapporten, den har det (amerikanska namnet) 2009 Data Breach Investigations Supplemental Report, Anatomy of a Data Breach (pdf).

Den kompletterande rapporten syftar bl a till att förklara attackerna noggrannare, ge exempel på hur man bör skydda sig och ”war stories”. De slutsatser CJ drar i posten om föregående rapporten är fortfarande aktuella så jag tänkte istället rekommendera de ”war stories” som finns för varje attacktyp. Som vi har hävdat tidigare är det generellt ganska skralt med exempel på hur attacker har gått till och varje tillfälle att läsa sådana bör tas.

Min favorit-war story under kategorin ”don’t complicate things”:
A large e-commerce retailer contracted Verizon to conduct an investigation into recent fraud reports
and determine if a data breach had occurred within their online portal. Investigators examined access
logs from the e-commerce application and found over 600,000 failed attempts to authenticate to the
online shopping cart. This all occurred within a two-day period in the previous month and originated
from a single IP address in southeast Asia.

Well, as the old saying goes, the 600,003rd time’s a charm. The attacker landed on the correct
combination and nabbed 50,000+ credit card numbers, usernames and passwords, and other personal
information. A review of the application’s settings showed they allowed for infinite authentication
attempts. Interestingly, the application was configured to log failed attempts, which clearly showed a
dictionary-style brute-force attack. Failed passwords appeared in an alphanumeric, sequential order.

Värt att notera är hur rapporten ger två sorters rekommendationer; indicators and mitigators. Orden är svåra att översätta till svenska på ett bra sätt men det handlar om att upptäcka och mildra intrång. Jag brukar dela upp säkerhetsarbete i tre aktiviteter;

  • man kan försöka förebygga intrång,
  • man kan försöka upptäcka intrång och
  • man kan försöka göra något åt intrång som redan inträffat.

Det är förstås en ständig debatt kring vad du ska lägga dina pengar på men det gläder mig att Verizon täcker de två tidigare på ett bra sätt. Jag hoppas kunna skriva om mina åsikter i frågan i framtiden.

Välkommen till en ny vecka!


Stefan Pettersson

Det är skillnad på XSS och XSS

Det är skillnad på XSS och XSS Cross-site scripting innebär kortfattat att en användare på en sårbar webbsida kan attackera en annan användare av samma webbsida. Det hela bygger på förtroende; din lokala ICA-handlare är sårbar eftersom jag kan gå in och lägga ett förgiftat äpple i fruktavdelningen som du sedan köper och äter. Du skulle aldrig ha ätit äpplet om jag gav det till dig direkt men eftersom du litar på ICA och inte har någon möjlighet att avgöra om det är ett äkta ICA-äpple så är det här ett effektivt sätt att förgifta dig.

I verkligheten är det förstås lite mer komplicerat. Det finns i grunden två sorters XSS-attacker: reflected och persistant. Reflected är oerhört vanligt förekommande, jag skapar en URL till en sårbar sida, URL:en innehåller attackkoden och när du klickar på länken studsar koden på sidan och du åker dit. Det är den här sorten som XSSed samlar på och just nu finns 36 000 XSS-sårbarheter registrerade. En försvarlig mängd.

Den andra sorten, persistant, har ingenting med länkar att göra. Där är det helt enkelt så att en attack mot en webbsida leder till att attackkoden sparas och sedan visas för besökare. Varje besökare. Nu blir förgiftad så fort du sätter foten i ICA-butiken, vare sig du gillar äpplen eller inte!

Folk accepterar generellt inte vilken skillnad det är på reflected XSS och persistant XSS. Det är jämförbart med att hindra Adam från förorten att åka till jobbet, och att sänka hela gröna tunnelbanelinjen.

Lyckligtvis är den här sorten synnerligen ovanlig… förutom när den kommer i form av SQL injection. Det är en fin gräns mellan persistant XSS och SQL injection där det är möjligt att skriva till databasen. Angripare kunde inte bry sig mindre.

Samsung.se hackar (ovetandes) sina kunder.

Reflected XSS är inget att ligga vaken om nätterna för, även om du driver en sida med många besökare. Persistant däremot…


Stefan Pettersson

Migrerat och klart + OWASP Top 10

Det där var ingen höjdare att göra manuellt, men nu är migreringen i a f klar. För er som missade början av det hela så har vi, som sagts i nya bloggens först post, flyttat till molnet.

Cloud computing

I övrigt på tapeten är mötet med OWASP Sweden på Omegapoint ikväll där den nya versionen av Top Ten (pdf) ska diskuteras. Jag tror att placeringen av cross-site scripting som tvåa på listan kommer att väcka störst debatt. Jag och CJ ska dit, hoppas att vi syns där!


Stefan Pettersson