Taggat med: OWASP

Tips för att höja cybersäkerheten

Tips för att höja cybersäkerheten

Med anledning av senaste tidens händelser och en ökad hotbild på cyberarenan så tänkte jag passa på att skriva ner några bra tips och råd på hur Er organisation kan höja cybersäkerheten.

Cyberresiliens och överbelastningsattacker

Er hemsida kan utsättas för överbelastningsattacker eller DDoS som det också brukar kallas. Antagonisten kommer att försöka identifiera kritiska punkter och skicka anrop om och om igen till dessa. Därför är det viktigt att se över hela den exponering som återfinnes mot Internet. Glöm inte API:er, subdomäner, DNS, SMTP osv.

Se till att ha en nödsajt samt alternativa vägar för att kommunicera inom Er organisation. Om internetförbindelsen går ner till Er organisation eller om tjänster såsom Slack går ner på grund av ökad belastning, hur kan ni då kommunicera? Om ni använder tjänster såsom Cloudfront, Akamai eller Cloudflare, se då till att den bakomliggande infrastrukturen inte går att nås via utanför dessa tjänster.

Internetexponering

Att veta hur organisationen ser ut från internet är otroligt viktigt. För det är just på dessa exponerade punkter som antagonisten kommer att fokusera först på. Kontrollera därför Er domän eller IP-adresser mot följande tjänster:

360PassiveDNS, ARIN, Ahrefs, AlienVault, AnubisDB, BinaryEdge, BGPView, BufferOver, BuiltWith, C99, Chaos, CIRCL, Censys, CommonCrawl, DNSdumpster, DNSDB, DNSlytics, DNSRepo, Detectify, FOFA, FullHunt, GitHub, GitLab, Greynoise, HackerTarget, Hunter, IntelX, IPdata, IPinfo, Maltiverse, Mnemonic, N45HT, NetworksDB, ONYPHE, PassiveTotal, PentestTools, Quake, RADb, Robtex, SecurityTrails, ShadowServer, Shodan, SonarSearch, Spamhaus, Spyse, Sublist3rAPI, TeamCymru, ThreatBook, ThreatCrowd, ThreatMiner, Twitter, Umbrella, URLScan, VirusTotal, WhoisXMLAPI, ZETAlytics, ZoomEye.

Eller använd OAWSP amass som gör det automatiskt. Använd DNS Anycast och försök att fronta via CDN och WAF. Även om jag inte är ett stort fan av Web Application Firewalls så kan det vinna Er några timmar.

Autentisering

Denna punkt har också att göra med ovan punkt. Dvs identifiera alla exponerade delar mot internet där en användare kan autentisera sig. Här är det otroligt viktigt att använda flera lager av skydd, jag rekommenderar att använda VPN som omslutning för allt. Och se till att också använda tvåfaktorsautentisering med hårdvaru-tokens såsom Yubikeys och certifikat.

Så kortfattat: Exponera inget mot internet som går att köra över VPN. Se till att den som ansluter via VPN inte kommer åt mer än nödvändigt, tänk zero-trust arkitektur.

Patchning och uppdatering

Om möjligt, se till att systemen uppdaterar sig själva automatiskt med nya säkerhetspatchar. Men var också medveten om att det finns möjlighet för bakdörrar att sig sig in den vägen. Dvs gör ett noga övervägande om för respektive nackdelar med automatiskt säkerhetspatchning. För majoriteten så är detta rätt väg att gå men inte något för alla.

Patcha inte bara mjukvaror, glöm inte heller switchar, skrivare, firmware och annat som också måste uppdatera. Och håll koll på om produkter eller system börjar närma sig End-of-Life och vad ni har för möjligheter då.

Har ni system som är äldre och som inte går att uppdatera men som ni ändå är beroende av, se till att isolera dessa extra noga. Exempelvis ett eget segment i nätverket där allt är filtrerat in och ut samt en speciell jump-host måste användas för att komma åt detta gamla system.

Härda systemen och se till att enbart mjukvaror som används exponeras eller är påslagna.

Övervaka, öva och testa

Testa säkerheten kontinuerligt med automatiska testverktyg såsom Holm Security, Detectify eller Nessus. Anlita konsulter som gör återkommande manuella penetrationstester samt genomför kodgranskning löpande om ni utvecklar mjukvara.

Öva på att återställa backup och se till att backuperna lagras offline eller på annat sätt icke åtkomliga från den ordinarie IT-infrastrukturen.

En komprometterad klient kan snabbt leda till att hela Er Windows AD-miljö blir övertagen. Se därför till att ni snabbt kan detektera om en klient börjar att bete sig suspekt. Har ni inte förmågan själva så se till att anlita ett företag som är experter på SIEM/SOC. Och vad gör ni när ni upptäcker något suspekt eller blivit utsatta för intrång, då är det bra att redan ha upparbetade kontaktvägar eller plan hur delar ska isoleras för att begränsa skada.

Glöm inte att allt ni ansluter kan producera loggfiler och hjälpa till att upptäcka intrång, syslog har funnits med länge och går att slå på och använda på nästan allt som kopplas upp.

Sammanfattning

Sist men inte minst, det ni inte känner till kan ni inte heller skydda. Se därför till att inventera och ha en god koll på vilken utrustning ni har, såväl mobiltelefoner, servrar, laptops och annat.

Administrativa konton bör användas ytterst begränsas och om möjligt med dubbelhandsfattning, tidsbegränsat eller liknande. Inventera dessa konton kontinuerligt.

Se också över beroendet gällande leverantörer, underleverantörer och tredjepartsberoenden. Upprätta en SBOM eller liknande. Jobba långsiktigt och systematiskt med cybersäkerheten och genomför omvärldsbevakning löpande, jag själv använder Twitter som en källa.

FRA FMV Försvarsmakten Säkerhetspolisen Polisen Post och Telestyrelsen MSB

Relevanta myndighetsdokument att läsa vidare:

Hur många attacker stoppar en WAF?

Svar: Mellan 1 och 100% av alla attacker enligt en ny undersökning. Läs mer nedan.

Finska cybersäkerhetsföretaget Fraktal bestämde sig för att göra ett test för att se hur väl en Web Application Firewall (WAF) fungerar.

Det finns rätt många WAF-leverantörer på marknaden och Fraktal fokuserade enbart på Azure Waf Amazon Managed, AWS WAF Fortinet Managed, Azure Waf with CRS 3.1 samt Barracuda WAF-as-a-Service.

Jag kan säkert komma på minst 10 andra WAF-tjänster som ej är testade, vilket är lite tråkigt.

Testresultatet ser ut enligt följande:

Och detta resultat är rätt anmärkningsvärt. Främst för att vissa produkter enbart fångade upp 1-2% av attackerna samt andra konstigheter såsom:

  • AWS Managed WAF hanterar POST och GET olika. Följande anrop blockerades i GET men inte i POST: %2e%2e//etc/passwd
  • Barracuda blockerar om är det enda i ett anrop. Men inte anrop såsom eval(‘sleep 5’)

Slutsatsen från denna undersökning tycker jag bottna i att vi ej bör lita helt på en WAF utan att den enbart fångar mellan 1-100% beroende på vilken WAF som används.

En WAF kan fånga lågt hängande frukter och en angripare med någorlunda kunskap bör kunna ta sig förbi en WAF.

CRS står för Core Rule Set och kommer från OWASP. Azure WAF har som standard version 3.0 och den nyaste versionen är 3.1 som man själv kan slå på. Version 3.1 innehåller fixar för false positives, file upload regler, Java-attacker och mer.

Givetvis kan även OWASP Core Rule Set även användas med ModSecurity/NAXSI och webbservrar såsom Nginx och Apache.

OWASP Topp 10 2017

Äntligen har OWASP Top 10 2017 släppts i sin slutgiltiga utgåva. Egentligen skulle OWASP:s topp-10 lista varit klar redan 2016 men på grund av diverse anledningar så har listan blivit försenad.

Tittar vi på den slutgiltiga versionen nedan så ser vi att Cross-Site Request Forgery (CSRF) har raderats (dvs hamnat utanför topp 10) samt att insecure deserialisation och XML external entities tillkommit.

Och detta stämmer väl med mina granskningar: Injektioner är fortfarande det största problemet men i samband med att fler ramverk bygger in olika typer av skydd om injektionsattacker så blir det bättre.

När det gäller insecure deserialisation så kan detta vara lite knepigt att testa efter. Till Burp Suite så finns exempelvis modulen Java Deserialization Scanner.

XML external entities kan orsaka stor skada och inte enbart när det gäller inkludering av data utan även kan användas för att skicka HTTP-förfrågningar vidare till localhost.

Sist men inte minst gällande insufficient logging/monitoring så loggar många webbservrar etc automatiskt. Men hur länge dessa loggar sparas eller om någon tittar på loggarna är ett stort problem såsom logganalys.

Följande bild visar skillnaden på ett bra sätt:

Här kan du läsa vad jag skrivit om tidigare utgåvor av version 2017:

OWASP Topp 10 snart ute i en ny 2017 års utgåva

Nyligen så släpptes förutgåva nummer 1 av den nya OWASP Top 10 listan. Den fristående och oberoende organisationen OWASP vill nu ha in åsikter om denna nya version. OWASP Top 10-listan skulle jag säga är så nära en standard man kan komma, den refereras i mängder olika dokument såsom PCI DSS och diverse upphandlingar.

Senaste ändringen i OWASP Top 10 var år 2013 och det har hänt en del på webbsäkerhetsfronten, så därför är det lägligt att det kommer en ny version inom kort.

Det nya versionen innehåller två nya kategorier som är följande:

  • A7 Insufficient Attack Protection
  • A10 Underprotected APIs

Och de tidigare kategorierna A7 och A4 har lagts in i A4. Tidigare kategorin A10 har tagits bort helt:

Jag tycker att A7 är mycket intressant och sätter fingret på en viktig punkt. För det är så att vi är relativt bra på att validera indata nuförtiden, bl.a. för att det är standard i många webbramverk. Men vi är desto sämre på att patcha, separera våra system och logga. Loggning är exempelvis otroligt viktigt vid incidenthantering och för att försöka lista ut hur ett intrång gick till.

Att använda en WAF (Web Application Firewall) känns också något som är en självklarhet år 2017. För detta finns exempelvis inbyggt i CloudFlare samt ingår i system från många brandväggsleverantörer. Men detta kan även ge en falsk säkerhet eftersom många WAF:ar går att kringgå.

Även den nya kategorin gällande oskyddade API:er är intressant, för detta är något som jag ser när jag exempelvis genomför reverse-engineering och penetrationstestar API:er. Många tror att bara för att ett API används så kan ingen ta reda på hur det fungerar och även ibland bygger in behörighetskontroll etc helt i klienten.

Här kan du läsa mer om tankarna bakom denna nya 2017 års version av OWASP Top 10:

OWASP Top 10 2017

SSL für alle

Peter Magnusson och Joachim Strömbergson höll för ett tag sedan en bra presentation på OWASP Göteborg om SSL och dess säkerhetsproblematik.

Presentationen (PDF) har allt som är vettigt att veta om SSL och dess säkerhetproblem. Även så påvisar man hur SSL felaktigt implementeras i ett antal olika mjukvaror.

Tips! Kolla in sslyze av iSEC Partners som finnes på Github. Näms även i nedan presentation.

OWASP SSL

www.owasp.org/images/d/d8/OWASP_SSL_20131128_preso.pdf (pdf)