It-säkerhet enligt HPS

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

Tagg: slarv

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?

Annonser

Varför är Bildts Gmail ett säkerhetsproblem?

I lördags gick Aftonbladet ut med nyheten att utrikesminister Carl Bildt använder en privat Gmail-adress för officiell kommunikation:

Enligt uppgift till Aftonbladet har Bildt uppmanat höga tjänstemän inom utrikesförvaltningen att kontakta honom på Gmail-adressen i stället för hans officiella via Utrikesdepartementet. Kommunikationssättet ska vara utbrett bland svenska ambassa­dörer trots att systemet är ifrågasatt.

– Gmail är inte säkert. Informationen ligger lagrad på servrar i andra länder. Det är ett amerikanskt företag som inte tvekar att lämna ut material till säkerhetstjänster, säger Joakim von Braun, it-säkerhetsexpert.

Flera källor uppger att Bildt föredrar att kommunicera via sin Ipad, men det har inte varit problemfritt.

Fotografi av Aftonbladets framsida

Både molntjänster och BYOD alltså? Hualigen.

Låt oss först och främst konstatera att säkerhetsproblemen med gmail.com i stort också gäller riksdagen.se (eller var hans formella mail nu ligger), den viktiga skillnaden är att man saknar kontroll över Gmail; det är svårt eller omöjligt för Riksdagens säkerhetsfolk att övervaka, kontrollera eller anpassa säkerheten hos Google.

Vilka säkerhetsproblem riskerar Bildt i praktiken?

Först och främst, (1) med tillgång till Bildts Gmail-konto kan man förstås läsa allt som har skickats och tagits emot. Enligt utsago så ska inget omfattas av sekretess och det kanske stämmer. Bildt är ju en rätt van politiker och har säkerligen koll på vad han skickar, frågan är om de som skickar mail till honom har det.

(2) Någon som får åtkomst till Bildts Gmail-konto kan utge sig för att vara honom, det kan förstås få oanade konsekvenser.

(3) Någon som får åtkomst till Bildts Gmail-konto kan ta bort de mail som har skickats och tagits emot eller varför inte, byta lösenord eller avsluta kontot? Så mycket för allmänna handlingar som kan vara offentliga.

(4) Dessutom, som Jocke nämner i artikeln, servrarna som Bildts mail bor i ägs av ett företag i ett annat land och kan därför bli tvungna att lämna ut åtkomst till myndigheter på ett eller annat sätt. Detta var aktuellt nyligen i samband med Petraeus-affären där en CIA-chef kommunicerade med en älskarinna via Gmail och kraftigt underskattade sina motståndares (FBI) kapacitet.

Faktum är att även om Bildt använder precis samma mailtjänst som ”vanliga” människor så är hans konto utsatt för större risk. Dels för att han är en offentlig person och därför har en större hotbild men också för att han är en offentlig person och därför har avsevärt svårare att lyckas med s k social authentication som är vanlig i sådana sammanhang. För självklart är det lättare att ta reda på svaret till den offentliga Bildts ”hemliga fråga” än hans okände namnes i Häggvik. (Ja, det finns en till Carl Bildt, Henric Robert Carl Bildt närmare bestämt.)

Uppdatering samma dag: Såg nu också att Bildt (på ett härligt bildtskt vis) har kommenterat saken på sin blogg. Tyvärr gör han det något amatörmässiga misstaget att likställa säkerhet med skydd mot att information läcker. Det är ju, enligt ovan, bara ett av problemen.

Fuskbyggen

Hem- och inredningsprogram på tv har ju varit populära ett bra tag nu. En speciell variant som jag gillar är de som handlar om fuskbyggen. Det finns flera exempel, jag gillar kanadensiska Holmes on Homes men i Sverige har vi förstås Martin Timell och Lennart Ekdal i serien Fuskbyggarna.

Varje program har egentligen samma upplägg: en familj bor i ett hus där hela eller delar av huset är dåligt byggt. Först går programledarna runt i huset och ojjar sig över hur byggarna har slarvat. Det har använts spik när det egentligen borde ha varit skruv, man har hällt ner spackel i avlopp, struntat i dränering och fuktspärrar, nöjt sig med vanligt gips i våtutrymmen, snålat med material, gjort livsfarliga kabeldragningar, etc, etc.

Resten av programmet ägnas åt att göra om allt på rätt sätt. Ordentligt. Från början. Holmes är särskilt anal och tvekar inte en sekund på att riva upp golvet på hela undervåningen bara för att det är golvknarr vid en tröskel någonstans. Man skulle kunna säga att det är p-rr för oss som lider av viss perfektionism. Som en bonus söker sedan Ekdal upp byggaren och hänger ut vederbörande.

Jag funderar på att höra av mig till Strix eller Jarowskij med en ny programidé: Fuskutvecklarna. Jag skulle dock ersätta Timell och Ekdal med Paulie Gualtieri och Kjell Bergqvist.

I kvällens program av Fuskutvecklarna: Alexander och Linneas leverantör av middleware för realtidsmeddelandehantering mellan deras webbfront och affärssystem sade att systemet var säkert. Alexander och Linnea var nöjda i början men efter några månader visade det sig att stora delar av systemet var utvecklat i en blandning av Java, PHP och Lua-script ovanpå Mandrake  med en sju år gammal Linuxkärna. Den inbyggda databasen visade sig ha hårdkodade lösenord och var åtkomlig via fem olika portar som inte gick att stänga. Den, enligt utsago, ”härdade” plattformen körde strax över 300 processer efter en fräsch omstart, bland annat Apples Bonjour, Samba och en OSPF-router.

När Linnea hörde av sig med klagomål hävdade leverantören att allt var implementerat i hårdvara och därför inte behövde säkerhetspatchar samt att den oavsett uppfyllde FBI:s säkerhetskrav.

Se när Paulie och Kjell hjälper Alexander och Linnea att styra upp sin meddelandehantering och sedan konfronterar leverantören.

Now that’s television.

Förberedelser

Scout som gör hälsning med USA:s flagga i bakgrunden.

Scouternas motto må vara lite obehagligt pretentiöst men det är ändå synnerligen viktigt i säkerhetssammanhang. Jag vet inte hur scoutkåren definerar det men jag skulle säga att huruvida man är redo eller inte beror på förberedelser.

Jag illustrerar med en kort historia:

Kommer tillbaka från lunchen, sätter mig ner, Adam sticker in huvudet genom dörren och frågar om det är något problem med mailservern. Tittar på skärmarna på väggen; Nagios visar att både mailservrar och namnservrar är gröna, MRTG visar att trafiken har kickat igång igen efter lunchnedgången. ”Nä, inte vad jag vet, hurså?”, frågar jag. Adam förklarar att varken han eller Bertil kan skicka mail till kund X eller Y.

Kund X och Y har inget med varandra att göra. Skickar ett mail till min privata adress, inga problem. Kontrollerar mailserverns utgående ip-adress i diverse blacklists på mxtoolbox.com. Hoppsan, blacklistad på två olika listor. Har vi skickat spam?

Just fan, Caesar höll ju på med den där Java-Tomcat-ärendehanterings-tjofset som behövde komma ut på internet över smtp. Snabb sökning i brandväggens regelfil visar att han lade till ”/24” efter sourceadressen av bara farten när han lade in regeln. Hela utvecklingsnätet får skicka mail förbi mailservern. Inte bra.

Ändrar regeln på brandväggen och laddar om. Kopierar de föregående dagarnas NetFlow-loggar från brandväggen och söker på flöden utgående från utvecklingsnätet mot 25/tcp. Shite, tusentals långa mailflöden, förmodligen reklam för diverse apoteksvaror, har runnit ut sedan gårdagen. En ip-adress är ansvarig för samtliga.

Loggar in på dhcp-servern, söker loggarna och hittar vilken hårdvaruadress som hade ip-adressen tilldelad vid tillfället. Söker på hårdvaran i inventeringslistan, naturligtvis är det arkitekt-Davids laptop… Går upp till våning fem, hyvlar av honom och blåser om hans dator.

Även om vår systemadministratör hittade felet lite onaturligt snabbt så är det överlag en verklighetstrogen berättelse. I den finns flera exempel på förberedelser som kraftigt underlättade problemlösningen:

  • Nagios och MRTG kunde direkt visa att det inte rörde sig om någon nertid eller funktionsfel på mailservern eller någon av dess beroenden. Om det hade rört sig om nertid hade det varit tydligt från vilken tidpunkt det hade skett. Kanske hade till och med vår administratör sett det redan när hon kom in genom dörren så att Adam kunde lugnas på en gång?
  • Möjlighet att söka bland reglerna i brandväggen; med Netfilter eller PF är det den naturligaste saken i världen, hur är det med din vägg? Det kanske måste lösas på något särskilt sätt?
  • NetFlow på brandväggen möjliggör trafikanalys i efterhand, det bästa som går att uppbringa näst efter full packet captures; vem har pratat med vem vid vilken tid, ungefär. Oavsett hur mailen hade lämnat företaget så hade det framgått i NetFlow.
  • Loggar från dhcp-servern är så viktigt att t o m EU skriver lagar om det. Eftersom ip-adresser ibland är väldigt lösaktiga och hänger med vem som helst så är det minsta man kan göra att åtminstone hålla reda på vilka de varit med. Oaktat att s k hårdvaruadresser går att spoofa så är dhcp-loggen klistret som håller ihop det logiska nätverket med de fysiska maskinerna.
  • En uppdaterad inventeringslista är betydligt bekvämare än att kontrollera undersidan på varje laptop på ett helt våningsplan. (Hörde jag någon nätverksadmin mumla något om switchportar och en dokumenterad patchpanel?)

Givetvis finns det andra förberedelser som kunde ha varit ännu bättre, så fort du börjar fundera på det så kommer du på flera stycken. Om du var vår hjältinna, vad hade du önskat att du gjort för förberedelser?

Inkompetens ett större problem än ondska (del 2)

I förra delen lades ett påstående fram. Att man genom att skydda sig mot interna brottslingar automatiskt kan skydda sig mot inkompetens. Hur kommer det sig?

Som av en händelse blev ämnet på tapeten när landstingets granskning av hur sjukhusen i Skåne drabbades av Conficker i våras publicerades. CS skriver ”Slarv bakom virusangreppet i Skåne”:

Det står klart att dåligt uppdaterade Windowsdatorer bär en del av skulden till att den skadliga koden kunde sprida sig så snabbt och till så stora delar av sjukvårdens it-system. En säkerhetsuppdatering som Microsoft släppte i oktober 2008 saknades på minst 1 000 datorer. Just den säkerhetslucka som åtgärdas med uppdateringen är en av dem som masken Conficker utnyttjar för att infektera fler maskiner på nätverket.

Hur som helst, förra posten avslutades med följande påstående:

Skydd implementerade för att motverka elakingar motverkar generellt också klantar. Dock inte nödvändigtvis tvärtom.

Påståendet är lätt att ta till sig när man inser att elakingen kan välja att ignorera bestämmelser och försöka gå förbi skydd. En varningsskylt vid utgången som säger ”Du har väl inte känslig data med dig hem?” leder sannolikt till att färre råkar få med sig data hem. (Givetvis gäller detta bara fram till att alla har vant sig vid skylten och inte ser den längre eller slutar bry sig för att det uppfattas som en dum regel.) Samma sak gäller för bensinmackar på landet som lånar ut toalettnyckeln på en nyckelring i form av en 30 cm lång två-tum-fyra så att den inte ska glömmas kvar i fickan.

Man behöver inte ens gå in på i vilken utsträckning skylten och nyckelringen hindrar elakingar…

(Här skulle man kunna dra en tydlig parallell till säkerhetskontroller som är implementerade på klientsidan. Vi skippar det.)

Vad kan göra för att skydda sig mot elakingar på riktigt då? Och, framför allt, påverkar det samtidigt klantarna? (Detta är inte nödvändigtvis en uttömmande lista.)

Minimera möjligheter till insiderbrott:

  1. Betro bara personer du tror att du kan lita på.
  2. Betro så få personer som möjligt.
  3. Betro varje person så lite som möjligt.
  4. Tillse att personer har överlappande ansvar.
  5. Betala betrodda personer väl.
  6. Straffa brott mot förtroendet och var öppen med det.

(Punkterna ovan är inspirerade av tankar från Bruce Schneier och Ross Anderson, något anpassad för svenska förhållanden.)

Det är självklart att ovanstående är riktat mot eventuella elakingar men hur påverkar det klantarna?

(1) På samma sätt som du känner att du kan lita på att grannen inte stjäl din post när hon vattnar dina blommor under semestern kan du eventuellt också lita på att hon inte glömmer att låsa dörren efter sig. En semestervattnare bör ha båda kvaliteter. Om du inte har en egen uppfattning kan du exempelvis kontrollera med andra grannar som du litar på vad de har för uppfattning (jfr bakgrundskontroll).

(2) Ju färre som har tillgång till känslig information, desto färre kan sprida den av misstag.

(3) Ju mindre information som är tillgänglig för personen, desto mindre värde kan förloras.

(4) Här avses överlappande ansvar som att det krävs två eller fler personer för att genomföra något, även att klanta sig. På samma sätt som två semestervattnare kan kontrollera varandra så att de inte stjäl posten kan de påminna varandra om att stänga balkongen efter sig.

(5 och 6) Båda handlar om att ge personen mer att förlora, det kommer naturligt att personer aktivt undviker detta. Dessa två är förmodligen de som är minst effektiva mot klantarna.

Där har ni det. Huruvida man borde öppet, straffa systemadministratörer som inte patchar 1 000 Windowsdatorer mot ett nästan två månader gammalt säkerhetshål som är lätt att utnyttja är dock en helt annan fråga.