Taggat med: Web Application Firewall

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 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

CloudBleed – Allvarligt minnesläckage från CloudFlare

CloudFlare (CF) är numera en vital och central del av internet. CF tillhandahåller CDN (Content Delivery Network), DNS och WAF (Web Application Firewall) för att nämna några funktioner.

För några dagar sedan så kontaktade Tavis Ormandy CF gällande att han sett saker i Googles sökresultat som inte hör hemma där. När sedan CF undersökte så hittade man en parser-bugg som gör att minne från deras servrar kunde skickas ut felaktigt.

Ungefär 0.00003% av samtliga http-förfrågningar som gick genom CF drabbades av denna bugg. Och vid undersökningar i Googles cache så identifierades 700 fall där minne läckt och cachats av Google.

Turligt nog så påverkas inte privata (TLS) SSL-nycklar eftersom viss uppdelning finns mellan processerna i CF:s servrar.

För en mer komplett lista över sajter som ligger hos CF se här:

Uppdatering 1: Nu har CF skickat ut ett mail till samtliga kunder. De skriver bl.a. följande:

”To date, we have yet to find any instance of the bug being exploited, but we recommend if you are concerned that you invalidate and reissue any persistent secrets, such as long lived session identifiers, tokens or keys. Due to the nature of the bug, customer SSL keys were not exposed and do not need to be rotated.”

Uppdatering 2: Svenska betaltjänst-leverantören Mondido samt Kraken har återställt samtliga lösenord. Jag hoppas att fler följer efter som använder CF.

Uppdatering 3: Cloudbleed kan även ha och göra med att Google själva nollställt samtliga inloggningar mot Googles egna tjänster. Så här kommenterar Tavis:

”Hi Tavis, could you tell us why a lot of people had to re-authenticate their Google accounts on their devices all of the sudden? It may not have been related, but Google definitely did something that had us all re-authenticate.”

”I couldn’t tell you, this is not the correct place to ask.”

Uppdatering 4: Har nu laddat hem .se-zonen och kontrollerat hur många som använder CF:s namnservrar vilket ger en fingervisning om hur många .se-domäner som kan potentiellt läckt information:

$ grep cloudflare se.zone |awk ’{print $1}’|sort|uniq|wc -l
7827

Det kan även vara åt andra hållet. Dvs CF:s dyrare abonnemang så kan du köra med en egen namnserver men ändå nyttja CF:s tjänster.