Säkerhet på Windows Server – uppdaterad

IT konsult backuper, It konsult säkerhet, IT konsult syspeace, IT konsult återstartsplaner, It konsult Active Directory

Grundläggande säkerhet på Windows server – med lite nya länkar osv

backup disaster recovey kontinuitetsplaner IT säkerhet molntjänster syspeace

Det här inlägget är tänkt som en slags grundläggande “checklista” när man sätter upp säkerhet på Windows Server vid nyinstallation och driftssätting.

Kortfattat behövs alla saker i den här listan som ett minimum för att uppnå i vart fall en grundläggande säkerhet på Windows server.
Tyvärr kommer servern ändå inte vara fullständigt skyddad även om du följer alla steg.

Absolut IT säkerhet finns helt enkelt inte men det här är i vart fall en lista för att göra ett antal grundläggande inställningar och steg.

Installerade programvaror

1. Se till att alla progranvaraor är uppdaterade med senaste säkerhetsuppdateringarna. Det här gäller operativsystemet, Exchange, SQL men även Adobe, Java och allt annat som finns installerat. Det här minskar risken för att råka ut för s.k. exploits som utnyttjar sårbarheter i programvaror. Kika på t.ex. PDQeploy som jag tycker funkat bra i större miljöer för distribution.

Även F Secure har en Software updater som fungerat bra.
Det skyddar dock inte mot en riktig Zero Day attack dvs när en sårbarhet blivit publikt känd men leverantören av programmet ännu inte släppt en uppdatering som avhjälper felet.

För dem finns egentligen inget annat att göra än följa olika typer av säkerhetskanaler, läsa rekommendationer och hålla sig uppdaterad.

Antivirus

2. Se til att ha ett väl fungerande men inte allt för resurskrävande antivirus på samtliga system. Själv tycker jag om F Secures PSB lösning trots en del brister i software updater men den fungerar ändå väldigt väl för systemadministratörer. Kom ihåg att sätta upp larm på virusangrepp!

Fil och katalogrättigheter på servern

3. Se till att gå igenom alla katalog och filrättigheter ordentligt och vilka användare och grupper som har tillgång till vad. Tänk på att se till att användare , både interna och externa , endast ska kunna se det som de uttryckligen ska ha tillång till. Inget annat.
Ett exempel är t.ex. att begränsa åtkomst till diskar och dölja diskar på Terminal Server (kolla t.ex. TS Hide Drives). Att sätta upp rättigheter på fil och katalognivå är oerhört kraftfullt sätt att begränsa tillgången till data. Testa innan du tillåter användare att nå servern. Det är alltid svårare att och jobbigare att fixa till saker i eftehand när servern är i drift.
Tänk även på att inte tillåta programexekvering från “fel”  ställen t.ex %APPDATA% , %TEMP% o.s.v

Best practices, manualer .. var inte lat ..

4. Se till att följa “best practices” för alla applikationer och tjänster du sätter upp. Googla. Snacka med folk.

Ingen manual är komplett och programvarutillverkare tänker inte alltid på kringliggande saker som kan påverka säkerhet och kompabilitet. När du instalerat ett program, klicka runt i menyerna och se vad du kan göra (vilka kataloger kan du “browsa till”vid “öppna” , “spara” i o.s.v. ) . Testa både som administratör och en vanlig användare. Vilka rättigheter behövs och vilka kan “tajtas åt” ?

Slå på loggning på servern

5. Se till att ha loggning påslaget där det går. Många program och funktioner har inte det påslaget som standard men du kan inte felsöka det du inte ser och att försöka hitat ett intrång eller annat fel i efterhand kan vara hopplöst om inte omöjligt.

Övervakning och drift av servern

6. Se till att ha en väl fungerande övervakning och inventering på hela ditt nät. Själv är jag en förespråkare för Spiceworks som är gratis som man kan göra väldigt mycket med.
Om din server har olika typer av övervakningsagenter (ofta över SNMP)  som kommer från tillverkaren (vilket de flesta har) se till att installera dem.

De ger dig information om hur hårdvaran mår och larmar om olika typer av incidentter. Se till att också sätta upp larm från dem via mail till en funktionsbaserad maillåda dvs inte till en person. Se också till att ha en plan för incidenthantering på plats och utpekade ansvariga för olika typer av fel / incidenter.

Group policies och standardisering

7. Group policies dvs grupp principer. Oerhört kraftfullt verktyg om du sätter dig in i det.  Kommer att underlätta administration, säkerhetshantering och användarhantering väldigt mycket.

SSL och Internet

8. Om servern är nåbar från Internet (fast även gärna om den bara finns internt) , se till att ha giltiga SSL certifkat för alla tjänster som det ska kommuniceras med. Det är inte så dyrt man kan tro (nuförtiden finns även gratis SSL via Letsencrypt, även om det är lite komplicerat få det att fungera ) och det kommer underlätta också att få en del funktioner att fungera smärtfritt. Tänk dock på att bara installera ett SSL certifikat inte räcker, du måste också slå av en del svaga krypton o.s.v.

9.  Se över vilka HTTP headers du använder och säkra upp även dem med t.ex Strict Transport Security,  X-Content-Type-Options, X-Frame-Options, X-Xss-Protection, X-Permitted-Cross-Domain-Policies.

Slå av onödiga funktioner och tjänster , även i en testmiljö

10. Stoppa tjänster, funktioner och nätverksprotokoll som inte används. Minimiera attackytan för hackers, både interna och externa, men spara även prestanda i serven. Du slipper också onödigt tjattrig nätverkstrafik på nätet . Samma princip gäller för skrivare och arbetsstattioner.

Lösenordshantering och policies

11 Tvinga komplexa lösenord för alla användare. För lite tips om hur man kan komma ihåg dem har jag skrivit det här inlägget tidigare

Ett av de vanligaste sätten för hackers att ta sig in i system beror just på svaga lösenord som enkelt går att gissa sig till. Byt namn på administratören då kontot inte går att låsa i Windows. Här är det också viktigt att ha et fungerande intrångsskydd mot lösenordsattacker med Syspeace.

12. Använd en bra namnstandard för inloggningar. Använd inte bara t.ex. förnamnn@ertföretag.se eller något annat som är för uppenbart och enkelt. Ju svårare det är för en hacker att gissa sig till ett användarnamn desto fler försök kommer behövas för att ta sig in i systemet. Det finns olika typer av skydd för att hantera ordboksattacker / lösenordsattacker / bruteforce  o.s.v

Serverns backuper

13. Backuper, backuper och BACKUPER! Se till att ha fungerande backuper och rutiner för dem. Testa dem regelbundet , minst en gång om året. Att återläsa enskilda filer ur en backup är inte en återstartstest! Se även till att ha flera generationer av backuper och en IT policy som styr detta.

Att bara ha en eller två generationer att kunna falla tillbaka på vid ett haveri kan vara katastrof t.ex. om backupen av någion anledning är korrupt och inte går att använda eller om ni blivit hackade och ni måste få tillbaka systemet till ett tillfälle ni vet med säkerhet är OK dvs innan intrånget skedde.

Se till att ha MINST en fungerande generation av backuperna någon annastans än i samma lokaler där servern är utifall det brinner eller blir inbrott.
Att ha disksystem som RAID och andra failolver-lösningar kommer aldrig att ersätta backuper. Det finns även många olika typer av online backup lösningar och det handlar mer om pris och funktionalitet.

All hårdvara kan falera, både fysiskt och logiskt som t.ex korrupta filsystem.
Ett tips här är också att slå på regelbundna VSS snapshots på alla diskar .

Enkelt, stabilt och billigt sätt att ha flera generationer av data att tillgå men det är INTE en ersättning för backuper!

Scanna din server efter sårbarheter!

14. Scanna din server med olika verktyg efter sårbarheter och tips för att öka säkerheten.

Här några bra länkar jag själv använder ofta

https://www.ssllabs.com/ssltest/   – Kontrollera att du slagit av svaga krypton och använder ditt SSL certifikat korrekt 

https://tools.pingdom.com/ –  Hastighet på hemsidan med mera, bra tips om laddningshastigheter och vad som tynger ner osv

http://www.kitterman.com/spf/validate.html   – Kontrollera att du satt upp ditt SPF record korrekt

https://mxtoolbox.com/diagnostic.aspx  – Diverse tester av mailservrar som Open Relay o.s.v. 

https://www.microsoft.com/en-us/download/details.aspx?id=7558    – Microsoft Baseline Security Analyzer

Testa ladda ner KALI Linux och testkör de olika verktygen från den.

Brandväggar och kommunikationer

15. Tänk igenom hur serven kommunicerar med omvärlden vad gäller brandväggar och routing i nätet. Ha även den lokala brandväggen påslagen i Windows, trots att den står bakom en extern brandvägg.

Brute force prevention . Skydd mot ordboksattacker, lösenordsattacker på Windows Server

16. Automatisk intrångshantering med t.ex Syspeace. I Windows går det INTE att automatiskt hantera lösenordsattacker på ett vettigt sätt. De inbyggda mekanismerna kan t.o.m. göra mer skada än nytta. Att installera ett system som Syspeace löser mycket av problematiken direkt och är oerhört enkelt att installera och konfigurera. Det finns flera liknande produkter dock som t.ex Cyberarms. Ur ett administrativt perspektiv så saknar tyvärr Cyberarms en del viktig funktionalitet som t.ex information om varifrån (land, DNS namn osv) attacken kom.

17. Det här hör på sätt och vis ihop med punkt 13 om backuper men se till att ha en vettig återstartsplan om något händer.

WordPress på IIS Server

18. Den här hör såklart ihop med om servern är nåbar från Internet lite längre upp och det är ett helt jätteområde i sig men några grundläggande tips är att se till att alltid uppdatera själva WordPress, alla plugins och teman, din PHP  och att installera plugins som t.ex. Wordfence . Även olika typer av cachning och URL rewrite kommer bhöva installeras och sättas upp.