7 Best Practices voor HTML-beveiliging voor statische kwetsbaarheden van websites

Statische websites slaan reeds gegenereerde inhoud op, daarom hoeven ze geen database te openen, complexe scripts uit te voeren of afhankelijk te zijn van een runtime-engine wanneer een gebruiker een pagina opvraagt.

Dat vertaalt zich in duidelijke voordelen in laadtijden en beveiliging: statische pagina’s besparen veel servertijd en hebben minder kwetsbaarheden. Dat betekent op zijn beurt dat zoekmachines statische pagina’s beter zullen rangschikken dan hun dynamische equivalenten.

SEO-experts wenden zich waar mogelijk tot statische inhoud om beter te kunnen concurreren in een wereld waarin een fractie van een seconde het verschil kan maken tussen totaal succes en totale mislukking. Deployment van statische content is een modewoord geworden tussen marketingstrategen en IT-personeel vindt het heerlijk dat ze een minder kwetsbare plek hebben om in de gaten te houden.

Maar pas op: ze zijn niet 100% hackbestendig, dus als u van plan bent statische inhoud op uw website te plaatsen, zijn er enkele best practices die u moet volgen om deze te beveiligen.

Inhoudsopgave

Beveiligingsheaders zijn een subset van HTTP Response Headers – een pakket metadata, foutcodes, cacheregels, enz. die de webserver toevoegt aan de inhoud die het serveert – ontworpen om de browser te vertellen wat hij moet doen en hoe hij moet omgaan met de inhoud die hij ontvangt. Niet alle browsers ondersteunen alle beveiligingsheaders, maar er is een kleine set die vrij algemeen is en basisbeveiligingsmaatregelen biedt om te voorkomen dat hackers misbruik maken van kwetsbaarheden.

X-Frame-opties: SAMEORIGIN

De X-Frame-Options-header is bedoeld om de risico’s van iframes op uw site uit te schakelen of te beperken. Iframes kunnen door hackers worden gebruikt om legitieme klikken te grijpen en bezoekers naar elke gewenste URL te leiden. Er zijn verschillende manieren om misbruik van iframes te voorkomen.

De best practice die wordt aanbevolen door OWASP (Open Web Application Security Project) stelt voor om deze header te gebruiken met de SAMEORIGIN-parameter, die het gebruik van iframes alleen toestaat door iemand met dezelfde oorsprong. Andere opties zijn DENY, om iframes volledig uit te schakelen, en ALLOW-FROM, om alleen specifieke URL’s toe te staan ​​pagina’s op iframes te plaatsen.

Bekijk de implementatiegids voor Apache en Nginx.

X-XSS-bescherming: 1; modus=blok

X-XSS-Protection header is ontworpen om websites te beschermen tegen cross-site scripting. Deze kopfunctie kan op twee manieren worden geïmplementeerd:

  • X-XSS-Bescherming: 1
  • X-XSS-bescherming: 1; modus=blok

De eerste is toleranter, filtert scripts van het verzoek aan de webserver, maar geeft de pagina toch weer. De tweede manier is veiliger omdat het de hele pagina blokkeert wanneer een X-XSS-script in het verzoek wordt gedetecteerd. Deze tweede optie is de door OWASP aanbevolen best practice.

X-Content-Type-Options: nosniff

Deze header voorkomt het gebruik van MIME “sniffing” – een functie waarmee de browser de inhoud kan scannen en anders kan reageren dan de header aangeeft. Wanneer deze header aanwezig is, moet de browser het inhoudstype instellen zoals aangegeven, in plaats van dit af te leiden door de inhoud van tevoren te “snuiven”.

Als u deze koptekst toepast, moet u controleren of uw inhoudstypen correct zijn toegepast op elke pagina van uw statische website.

Inhoudstype: tekst/html; charset=utf-8

Deze regel wordt sinds versie 1.0 van het HTTP-protocol toegevoegd aan aanvraag- en antwoordheaders voor HTML-pagina’s. Het stelt vast dat alle tags in de browser worden weergegeven en het resultaat op de webpagina wordt weergegeven.

TLS-certificaten gebruiken

Een SSL/TLS-certificaat is een must voor elke website, omdat het de webserver in staat stelt om de gegevens die het naar de webbrowser stuurt te coderen via het beveiligde HTTPS-protocol. Op die manier zijn de gegevens die tijdens het reizen worden onderschept onleesbaar, wat essentieel is voor de bescherming van de privacy van de gebruiker en voor de beveiliging van de website. Een statische website slaat de persoonlijke informatie van zijn bezoekers niet op, maar het is essentieel dat de informatie die ze opvragen niet kan worden gezien door ongewenste kijkers.

Het gebruik van codering door een website is noodzakelijk om door de meeste webbrowsers als een veilige site te worden gemarkeerd en is verplicht voor websites die willen voldoen aan de Algemene Verordening Gegevensbescherming (AVG) van de EU. De wet schrijft niet specifiek voor dat een SSL-certificaat moet worden gebruikt, maar het is de eenvoudigste manier om aan de privacyvereisten in de verordening te voldoen.

Op het gebied van beveiliging stelt het SSL-certificaat autoriteiten in staat om het eigendom van een website te verifiëren en te voorkomen dat hackers nepversies ervan maken. Het gebruik van een SSL-certificaat stelt de websitebezoeker in staat om de authenticiteit van de uitgever te controleren en er zeker van te zijn dat niemand zijn of haar activiteiten op de website kan bespioneren.

Het goede nieuws is dat het certificaat niet veel kost. Je kunt het zelfs GRATIS krijgen van NulSSL of koop een premium van SSL-winkel.

DDoS-beveiliging implementeren

Distributed Denial of Service (DDoS)-aanvallen komen tegenwoordig steeds vaker voor. Bij dit type aanval wordt een set gedistribueerde apparaten gebruikt om een ​​server te overstelpen met een stortvloed aan verzoeken, totdat deze verzadigd raakt en eenvoudigweg weigert te werken. Het maakt niet uit of uw website statische inhoud heeft – de webserver kan gemakkelijk het slachtoffer worden van een DDoS-aanval als u niet de nodige maatregelen neemt.

De eenvoudigste manier om DDoS-beveiliging op uw website te implementeren, is door een beveiligingsserviceprovider alle cyberdreigingen te laten afhandelen. Deze service biedt inbraakdetectie, antivirale services, het scannen van kwetsbaarheden en meer, zodat u zich praktisch geen zorgen hoeft te maken over eventuele bedreigingen.

Zo’n allesomvattende oplossing kan prijzig zijn, maar er zijn ook meer gerichte oplossingen met lagere kosten, zoals DDoS Protection as a Service (DPaaS). Vraag uw hostingprovider of deze een dergelijke service aanbiedt.

Meer betaalbare oplossingen zijn cloudgebaseerde DDoS-beveiligingsdiensten, zoals die van Akamai, Sucuriof Cloudflare. Deze services bieden vroege detectie en analyse van DDoS-aanvallen en filteren en omleiden van die aanvallen, dat wil zeggen, het schadelijke verkeer wegleiden van uw site.

Wanneer u een anti-DDoS-oplossing overweegt, moet u letten op de netwerkcapaciteit: deze parameter geeft aan hoeveel aanvalsintensiteit de beveiliging kan weerstaan.

Vermijd kwetsbare JavaScript-bibliotheken

Zelfs als uw website statische inhoud heeft, kan deze gebruikmaken van JavaScript-bibliotheken die beveiligingsrisico’s met zich meebrengen. Over het algemeen wordt aangenomen dat 20% van die bibliotheken een website kwetsbaarder maakt. Gelukkig kunt u gebruik maken van de service van Kwetsbaarheid DB om te controleren of een bepaalde bibliotheek veilig is of niet. In de database vindt u gedetailleerde informatie en richtlijnen voor veel bekende kwetsbaarheden.

Naast het controleren van een bepaalde bibliotheek op kwetsbaarheden, kunt u deze lijst met best practices voor JavaScript-bibliotheken volgen die de potentiële risico’s ervan verhelpen:

  • Gebruik geen externe bibliotheekservers. Bewaar de bibliotheken in plaats daarvan op dezelfde server die uw website host. Als u externe bibliotheken moet gebruiken, vermijd dan het gebruik van bibliotheken van servers op de zwarte lijst en controleer regelmatig de beveiliging van externe servers.
  • Gebruik versiebeheer voor JavaScript-bibliotheken en zorg ervoor dat u de nieuwste versie van elke bibliotheek gebruikt. Als versiebeheer geen optie is, gebruik dan in ieder geval versies die vrij zijn van bekende kwetsbaarheden. Je kunt gebruiken pensioen.js om het gebruik van kwetsbare versies te detecteren.
  • Controleer regelmatig of uw website externe bibliotheken gebruikt die u niet kent. Op deze manier weet je of een hacker links heeft geïnjecteerd naar ongewenste bibliotheekaanbieders. Injectie-aanvallen zijn onwaarschijnlijk op statische websites, maar het kan geen kwaad om deze controle af en toe uit te voeren.

Back-upstrategie implementeren

Van een statische website moet altijd een veilige back-up van de inhoud worden gemaakt wanneer deze wordt gewijzigd. De back-upkopieën moeten veilig worden bewaard en gemakkelijk toegankelijk zijn voor het geval u uw website moet herstellen in geval van een crash. Er zijn veel manieren om een ​​back-up van uw statische website te maken, maar over het algemeen kunnen ze worden onderverdeeld in handmatig en automatisch.

Als de inhoud van uw website niet vaak verandert, kan een handmatige back-upstrategie voldoende zijn – u moet er alleen aan denken om een ​​nieuwe back-up te maken wanneer u een wijziging in de inhoud aanbrengt. Als je een controlepaneel hebt om je hostingaccount te beheren, is de kans groot dat je binnen dat controlepaneel een optie vindt om back-ups te maken. Als dat niet het geval is, kunt u altijd een FTP-client gebruiken om alle website-inhoud naar een lokaal apparaat te downloaden, waar u het veilig kunt bewaren en indien nodig kunt herstellen.

Natuurlijk heeft de automatische back-upoptie de voorkeur als u uw websitebeheertaken tot een minimum wilt beperken. Maar automatische back-ups worden meestal aangeboden als een premiumfunctie door hostingproviders, wat de totale kosten voor het beveiligen van uw website verhoogt.

U kunt overwegen om cloudobjectopslag te gebruiken voor de back-up.

Gebruik een betrouwbare hostingprovider

Een betrouwbare webhostingservice is noodzakelijk om te garanderen dat uw website soepel en snel werkt, maar ook om er zeker van te zijn dat deze niet wordt gehackt. De meeste webhostingrecensies laten u cijfers en vergelijkingen zien over snelheid, uptime en klantenondersteuning, maar bij het overwegen van websitebeveiliging zijn er enkele aspecten die zorgvuldig in acht moeten worden genomen en waar u uw provider naar moet vragen voordat u zijn service inhuurt:

  • Softwarebeveiliging: u moet weten hoe software-updates worden afgehandeld; bijvoorbeeld als alle software automatisch wordt bijgewerkt of als elke update wordt onderworpen aan een testproces voordat deze wordt geïmplementeerd.
  • DDoS-bescherming: als dit soort bescherming bij de hostingservice is inbegrepen, vraag dan om details over hoe het wordt geïmplementeerd, om te controleren of het voldoet aan de vereisten van uw website.
  • SSL-beschikbaarheid en -ondersteuning: aangezien de certificaten in de meeste gevallen worden beheerd door de hostingprovider, moet u controleren wat voor soort certificaat het biedt en wat het beleid voor het vernieuwen van certificaten is.
  • Back-up en herstel: veel hostingproviders bieden een geautomatiseerde back-upservice, wat een goede zaak is, omdat u hiermee praktisch vergeet back-ups te maken, op te slaan en up-to-date te houden. Maar houd rekening met de kosten van een dergelijke service en weeg deze af tegen de moeite die het kost om zelf een back-up van uw inhoud te maken.
  • Bescherming tegen malware: een betrouwbare hostingprovider moet zijn servers beschermen tegen malware door periodieke malwarescans uit te voeren en de bestandsintegriteit te bewaken. In het geval van shared hosting is het wenselijk dat de hostingprovider gebruik maakt van accountisolatie, om te voorkomen dat malware-infecties zich verspreiden tussen naburige websites.
  • Firewall-beveiliging: een hostingprovider kan het beveiligingsniveau van de websites die hij host verhogen door een firewall in te zetten die vijandig verkeer weghoudt.

Bekijk het betrouwbare statische site-hostingplatform.

Een sterk wachtwoordbeleid afdwingen

Aangezien een statische site geen database of beheerd contentsysteem heeft, hoeft deze minder gebruikersnamen en wachtwoorden te beheren. Maar je moet nog steeds een wachtwoordbeleid afdwingen voor de hosting- of FTP-accounts die je gaat gebruiken om de statische inhoud bij te werken.

Goede praktijken voor wachtwoorden zijn onder meer:

  • Ze periodiek wijzigen
  • Een minimale wachtwoordlengte instellen.
  • Combinaties van hoofdletters/kleine letters gebruiken samen met speciale tekens en cijfers
  • Vermijd communicatie via e-mail of sms.

Ook moet het standaardwachtwoord voor beheerdersaccounts vanaf het begin worden gewijzigd – dit is een veelvoorkomende fout die hackers gemakkelijk kunnen misbruiken. Wees niet bang om het wachtwoord te verliezen; gebruik een wachtwoordbeheerder om ze veilig te beheren.

Laten we statisch worden

Een paar jaar geleden was dynamische inhoud de juiste keuze: alles kon eenvoudig worden gewijzigd en bijgewerkt, waardoor een volledig herontwerp van de website binnen enkele seconden mogelijk was. Maar toen werd snelheid de hoogste prioriteit en werd statische inhoud ineens weer cool.

In die zin moeten alle beveiligingspraktijken van websites opnieuw worden geëvalueerd – er zijn zeker minder aspecten waarmee u rekening moet houden, maar u moet er niet helemaal ontspannen over worden. Deze lijst met best practices zal u zeker helpen uw eigen checklist te maken om uw statische website veilig en gezond te houden.

  Hoe alle contacten van iPhone 5 te verwijderen zonder iCloud

gerelateerde berichten