Hoe is de veiligheid van uw Joomla! website optimaal?
Iedereen denkt er wel eens over na; is mijn website veilig. Niet alleen voor aanvallen van buitenaf, maar ook van binnenuit? Welke valkuilen zijn bekend, kortom waar moet ik aan denken om de veiligheid van mijn website te waarborgen. Hackers kunnen en doen steeds meer, soms voor de lol, maar ook doelbewust. In dit artikel beschrijven wij de echte basisprincipes om uw website veilig te houden. Natuurlijk nemen wij graag al deze taken uit uw handen, wij maken websites en onderscheiden ons graag met onze uitgebreide dienstverlening. Heeft u interesse in onze diensten? Neem dan contact met ons op.
Joomla! is één van de meest gebruikte CMS systemen. Volgens W3Techs is 3% van alle websites gemaakt met Joomla!, dat is 7,8% van alle websites gemaakt met een CMS systeem. Volgens Joomla! zelf is de CMS software al meer dan 50 miljoen keer gedownload, kortom het is een veelgebruikt systeem. Dat brengt voordelen en nadelen met zich mee. De nadelen zijn voornamelijk te vinden in het feit dat het voor een hacker interessant is om een 'lek' te vinden in Joomla! want dat kan diegene gebruiken bij heel veel websites.
Zo is volgens een rapport van Imperva (oktober 2014) het CMS systeem van Wordpress het meest aangevallen systeem, ruim 24% meer dan andere CMS systemen. Als we kijken naar de resultaten bij W3Techs van Wordpress dan is dat ook niet vreemd, die is namelijk gebruikt voor 23,2% van alle websites gemaakt, dat is 61,1% van alle websites gemaakt met een CMS systeem.
Een voordeel is dat Joomla! beschikt over een Security Center die iedere ontdekking van een 'lek' zo snel mogelijk dichten. Al deze ontdekkingen komen van onder andere interne specialisten, de gebruikers met een Joomla! website en externe/interne ontwikkelaars. Zoveel input is naar ons idee altijd beter dan een enkele programmeur van een zelf gemaakt CMS systeem.
Is een zelf gemaakt CMS systeem dus veiliger dan een populair CMS systeem? Nee! Dat komt omdat bovenstaande cijfers en onderzoeken alleen kijken naar de aanvallen gesorteerd per CMS systeem. Als we kijken naar de type aanvallen dan zijn deze vaak onafhankelijk van het type CMS systeem toe te passen (en dus ook op een zelf gemaakt CMS systeem). Daarnaast wij zijn er van overtuigd dat een populair CMS systeem veel minder vatbaar is voor allerlei aanvallen dan een zelf gemaakt CMS systeem. Gewoon vanwege het feit dat het zo vaak is aangevallen (dus is getest).
Wat u onder andere in de gaten dient te houden bij een Joomla! CMS (evenals ieder ander CMS systeem):
Joomla! versie up-to-date houden
Belangrijk is dat u net als uw PC de versie up-to-date houd. Joomla! wordt meestal eens per maand geüpdate met bugfixes (foutcorrecties), dichten van veiligheidslekken (van nieuw ontwikkelde aanvallen) en/of verbeterde functionaliteiten. Updaten van een Joomla! website gaat heel eenvoudig (vanaf Joomla! 2.5), dit kunt u doen door in te loggen via de website backend en vervolgens op de 'update joomla!' knop te drukken.
Daarnaast is het belangrijk dat u met een versie van Joomla! werkt die nog wordt ge-support. Op dit moment worden Joomla! versie 2.5.x en Joomla! 3.x ge-support door Joomla!. Dit betekent dat deze versies ongeveer maandelijk worden voorzien van updates. Let op! andere versies dus niet! Heeft u een andere versie dan Joomla! 2.5.x of 3.x dan is uw website vatbaar voor allerlei (reeds bekende) aanvallen.
Met of zonder een Service overeenkomst van JACCS kunnen wij uw website up-to-date krijgen en houden. Interesse? Neem dan contact met ons op.
Installeer alleen 'goede' Extensies
Indien het nodig is dat u de functionaliteiten van Joomla! moet uitbreiden kunt u hiervoor Extensies installeren. Denk bij dit proces goed na wat u doet en installeert. Helaas zijn er Extensies in omloop die niet goed hebben nagedacht over de veiligheid en hebben dus een 'lek'. Alle bekende Extensies waarvan veiligheidslekken zijn ontdekt zijn gelukkig wel geregistreerd en kunt u vinden via de Joomla! Vulnerable Extensions List. Staar er dus een Extensie die u wilt gebruiken in deze lijst (waarvan het probleem niet is opgelost) dan kunt u deze beter niet gebruiken.
Daarnaast dient u alleen Extensies op te zoeken via de officiële website van Joomla! of via uw Joomla! 3.x backend. Zoals ook besproken in ons artikel 'Waarom betalen voor een uitbreiding als het via een omweg ook gratis is te downloaden?' komt het voor dat u dient te betalen voor een Extensie, doe dit dan ook gewoon en ga niet zoeken naar een mogelijkheid om deze toch gratis te downloaden. Misschien vind u inderdaad een website om deze gratis te downloaden, maar krijgt u er allerlei virussen en/of malware gratis bij.
Wij hebben voor vrijwel ieder verzoek of wens een goede Extensie gevonden. Wilt u uw Joomla! website uitbreiden met functionaliteiten, maar weet u niet welke Extensie u het beste kunt gebruiken? Neem dan contact met ons op.
Joomla! Extensies up-to-date houden
Indien u gebruik maakt van Joomla! extensies dan dient u ook deze up-to-date te houden. De meeste Extensies van Joomla! kunt u onderhouden via het Extensiebeheer van uw Joomla! Backend. Daar worden Extensies weergegeven waarvoor een update beschikbaar is. Met een druk op de knop kunt u deze vervolgens updaten. Niet alle uitbreidingen maken gebruik van deze functionaliteit, voor deze kunt u het beste de website van de maker van deze Extensie in de gaten houden en de update-instructies van de maker volgen.
Het updaten van een Extensie is soms heel makkelijk en soms iets lastiger. Weet u niet zeker hoe u een (specifieke) Extensie het beste kunt updaten? Neem dan contact met ons op.
Administrator Login scherm verbergen
Iedere Joomla! heeft dezelfde URL voor het Administrator Login scherm, namelijk www.uwwebsite.nl/administrator. Dat weet een hacker dus ook en die maakt daar graag gebruik van. Er zijn tegenwoordig genoeg uitbreidingen beschikbaar die het Administrator Login scherm kunnen verbergen door middel van een 'geheime code'. Door hiervan gebruik te maken kunt u deze veranderen naar www.uwwebsite.nl/administrator/?geheimecode en is uw website dus minder makkelijk te hacken.
Weet u niet precies hoe u de geheime code moet instellen? Of heeft u de geheime code ingesteld maar bent u deze vergeten (en kunt u dus zelf ook niet meer inloggen? Neem dan contact met ons op.
Maak gebruik van Authenticatie in twee stappen
Het wordt steeds eenvoudiger om een gebruikers naam en wachtwoord te kraken. Dit gebeurt bijvoorbeeld door de databases van eerder gehackte websites te raadplegen op gebruikersnaam en wachtwoord. Hackers bekijken simpelweg online beschikbare lijsten van gebruikersnaam, wachtwoord en e-mail adres en proberen deze op andere websites. Gebruik daarom nooit een gebruikersnaam en wachtwoord combinatie meerdere keren.
Een andere mogelijkheid is dat een hacker met een programma ontelbaar veel opties laat uitproberen. Uiteindelijk zit daar ook de goede combinatie tussen. Hoe moeilijker uw wachtwoord dan is hoe langer de hacker er over doet om deze te kraken, dit kan verschillen tussen minuten en jaren.
Een nieuwe functionaliteit is gebruik te maken van een derde variabele, de gegenereerde code. Net als bij een bank maakt u dan niet alleen gebruik van iets wat u weet (gebruikersnaam & wachtwoord) maar voegt u daar iets wat heeft aan toe. Dit noemen we ook wel authenticatie in twee stappen (Two Factor Authentication). U maakt dan gebruik van een gegenereerde code die slechts een beperkte tijd geldig is (meestal 1 minuut). Voor een hacker is het dan vrijwel onmogelijk deze combinatie te kraken in slechts 1 minuut.
Meer uitleg over deze functionaliteit staat in ons eerdere artikel 'Authenticatie in twee stappen is beschikbaar'.
Hulp nodig bij het instellen van de Authenticatie in twee stappen? Neem dan contact met ons op.
Standaard Super Administrator account wijzigen
Gebruikt nooit de standaard gebruikersnaam 'admin' maar bedenk een originele. Gebruik ook niet uw bedrijfsnaam, wees vooral creatief. Hackers weten dat de standaard gebruikersnaam met de maximale rechten (Super Administrator) meestal 'admin' is. Hier maken zij graag dankbaar gebruik van.
Oudere Joomla! versies dan Joomla! 2.5.x (dus die echt geüpdate moeten worden) hebben standaard een Super Administrator account. Dat heeft elke Joomla! website denkt u dan en dat klopt. Wat ook klopt is dat al deze oudere websites een Super Administrator account hebben met het zelfde ID in de database, namelijk #62. Dat heeft Joomla! in eerste instantie willen verhelpen in Joomla! 1.6 door het ID te veranderen naar #42. Het voorspelbare ID getal te veranderen naar een ander voorspelbaar ID getal was niet de oplossing. Met een nieuwere/up-to-date Joomla! versie heeft u hier geen last van, maar heeft u een oudere Joomla! versie dan kan dit probleem dus wel voorkomen.
Het grootste probleem hiervan is een hacker dus als eerste gaat proberen een aanval te openen via de gebruiker met ID #62 en ID #42. Dit zijn namelijk in de oude website gevallen gebruikers met de meeste rechten en dus een interessant doelwit. Zodra dus iets van de website voorspelbaar is weet een hacker dit ook en maakt diegene daar graag gebruik van.
Dit probleem is op te lossen door eerst een nieuwe Super Administrator aan te maken (die krijgt dus een ander ID) en de oude te verwijderen. Maak vooral niet teveel Super Administrator accounts aan. In de regel zijn dit er zo min mogelijk.
Het wijzigen van een Super Administrator account kan soms lastiger zijn dan verwacht. Lukt het niet? Of heeft u liever ondersteuning bij het wijzigen? Heeft u de enige Super Administrator verwijdert en kunt u nu niets meer doen? Neem dan contact met ons op.
Maak een goede remote backup
Meestal maakt een goede hosting provider een backup van de website gegevens, email adres(sen) en database(s). Daar kunt u echter niet blindelings op vertrouwen. Daarnaast komt het ook voor dat de hosting provider (hoge) kosten rekent voor het beschikbaar stellen van de gemaakte backup. Kortom u kunt dit het beste zelf goed doen.
Er zijn een aantal Extensies te gebruiken voor het maken van een backup van uw Joomla! website. Wij maken overigens altijd gebruik van Akeeba Backup Professional, naar onze mening de beste die er is. Configureer uw backup goed en zorg ervoor dat u de backup ook (periodiek) test. Een niet geteste backup is in de regel nog geen echte backup. Pas als u weet dat de backup werkt is deze goed.
Zorg er ook voor dat de backup niet eenvoudig in uw webspace wordt opgeslagen, maar op een remote locatie. Akeeba Backup Professional heeft daar verschillende mogelijkheden voor, zoals naar een remote (S)FTP server, Dropbox, Google Storage, Windows Azure, etc.
Hulp nodig bij het instellen of testen van uw backup? Liever uw backup bij ons veilig opslaan? Neem dan contact met ons op.
Blijven controleren & monitoren
Een website kunt u misschien wel vergelijken met een rijdende auto (met u als bestuurder). Tijdens het rijden let u goed op uw omgeving (uw concurrenten) en de richting waar u naartoe gaat (bedrijfsstrategie). Maar u let ook op uw snelheidsmeter, temperatuurmeter, benzinemeter, etc. Allemaal tools waarmee u blijft controleren of de auto blijft rijden. Een website is niet anders, ook hier dient u te blijven controleren of de inhoud nog aansluit aan uw bedrijfsstrategie (wat veel bedrijven al doen). Vergeet daarom niet te blijven controleren of de website online is en blijf, misschien opeens veel langzamer is, opeens veel server kracht nodig heeft, etc. Allemaal tools om te blijven controleren of de website goed blijft en signalen of een website misschien wel gehackt is.
Via verschillende websites kunt u de uptime van uw website controleren, zoals Webcron.org of Uptimerobot. Andere controles kunt u soms instellen via uw hosting provider.
Wij monitoren alle websites van onze klanten standaard, dat vinden wij service voor onze klanten. Bent u hiernaar geïnteresseerd neem dan contact met ons op.
Alles op orde houden
Er zijn meerdere mogelijkheden om uw Joomla! website op orde te houden. Indien u bovenstaande punten doorvoert bent u een heel eind. Daarnaast is het belangrijk dat u op de hoogte blijft van (security) updates van Joomla! en de door u gebruikte Extensies. Als u dagelijks via de backend van uw website inlogt en let op de update berichten dan blijft u redelijk goed up-to-date. Controleer ook de geïnstalleerd Extensies die nooit automatisch komen met een update melding, in de regel doen we dit om de maand.
Als u niet zo vaak inlogt kunt u bijvoorbeeld uzelf eenvoudig in te schrijven in allerlei nieuwsbrieven van Joomla! of gebruik te maken van functionaliteiten van Admin Tools Professional (van dezelfde makers als Akeeba Backup). Deze Extensie heeft een functionaliteit die naar het door u aangegeven e-mail adres een e-mail stuurt op het moment dat er een update beschikbaar is.
Natuurlijk nemen wij graag al deze taken uit uw handen, wij maken websites en onderscheiden ons graag met onze uitgebreide dienstverlening. Heeft u interesse in onze diensten? Neem dan contact met ons op.