Joomla security check in 5 minuten

vrijdag, 12 februari, 2010 - 11:07

Het komt niet vaak voor, maar als een hacker toeslaat dan is dat altijd pijnlijk. Werk gaat verloren, het kost tijd en geld om te herstellen wat er kapot gemaakt is en (misschien nog wel het ergste) het gezichtsverlies bij klanten en/of potentiële klanten. In alle gevallen van gehackte Joomla websites die wij gezien hebben, was dit te voorkomen door in 5 minuten de website te controleren op de in dit artikel besproken punten.

Je kunt het hacken van je website vergelijken met de inbraak van je huis. Inbrekers zijn op zoek naar gemakkelijke doelwitten, liefst eentje waarbij de deur gewoon open staat. De buit die te halen valt op een website is zeer klein. In de meeste gevallen gaat het bij een hacker om het plaatsen van links op de website. Voor het bezoek dat deze links genereren krijgt hij of zij geld. Het gaat hierbij om een paar centen maar wanneer een hacker zijn hack aanvallen automatiseert kan hij in enkele dagen duizenden websites hacken en dus snel veel geld verdienen.

Nagenoeg alle hack pogingen zijn ontstaan doordat hackers met scriptjes en slimme google zoekopdrachten de zwakkere websites eruit vissen. Zaak dus om ervoor te zorgen dat jouw website hier niet tussen zit. Met de onderstaande check kun je snel ontdekken of je website een gemakkelijk doelwit is. Hoe meer zwakke punten je vindt, hoe groter de kans dat je gehackt wordt. Uiteraard verzekert deze check niet dat je nooit gehackt zal worden, het maakt de kans alleen wel een stuk kleiner.

Joomla up-to-date?

Je kunt dit controleren door te kijken op http://www.joomla.org/download.html. Hier zie je welke versie er nu wordt aangeboden. Op het moment van schrijven is dit Joomla 1.5.15. Ga vervolgens naar de backend van je Joomla website. Nadat je ingelogd bent, kun je rechts bovenin zien welke versie jij hebt. Uiteraard moet je direct updaten wanneer jouw versie ouder is dan degene die bij www.joomla.org wordt aangeboden. Ongebruikte plugins Welke Joomla plugins gebruik je en welke niet? Deinstalleer alle plugins die je niet gebruikt! Omdat je ze niet gebruikt zijn ze vaak verouderd en dus een ideale ingang voor hackers.

Controleer uitgebreide Joomla plugins op de Vulnerable Extensions list

Sommige Joomla plugins geven de gebruiker de mogelijkheid om iets te doen op de website. Ga na welke plugins je gebruikt die de gebruiker toegang geven tot de website, de gebruiker vragen iets in te vullen, up te loaden of in te loggen. Denk aan gastenboeken, formulieren, commentaar systemen, downloadplugins, nieuwsbrief modules, etc. Al deze plugins vormen een extra gevaar. Niet alleen de bezoekers heeft met deze plugins extra opties, de hacker ook. Er bestaat een lijst die bij gehouden wordt door de Joomla developers, waarop te vinden is welke Joomla plugins bekende gevaren opleveren. De zogenaamde vulnerable extensions list. Staat er een plugin bij die je gebruikt? Update of verwijder deze dan direct!

Controleer de backend gebruikers

Wanneer een website in ontwikkeling is worden vaak even snel allerlei gebruikers aangemaakt met simpele wachtwoorden. Vaak krijgen deze gebruikers ook nog eens alle mogelijke rechten maar worden ze niet gewist wanneer de website live gaat. Wis daarom alle gebruikers waarvan je weet dat deze niet gebruikt worden en disable alle gebruikers waarvan je twijfelt. Mocht de gebruiker toch actief zijn, dan komt deze vanzelf naar je toe met de vraag waarom hij of zij niet meer in de website komt en kun je deze gebruiker weer op enabled zetten.

Controleer de rechten

Je moet voor deze check wel FTP toegang hebben en enigszins bekend zijn met het gebruikte FTP programma. Bestanden op een webserver kunnen verschillende rechten hebben. Zo kan een bestand leesbaar en beschrijfbaar zijn voor de eigenaar, maar niet beschrijfbaar voor een bezoeker. Hetzelfde geldt voor mappen. Met elke FTP client, kun je bekijken hoe een map of bestand ingesteld staat. Deze instellingen kunnen best complex zijn, daarom werken veel FTP clients met een code. Wanneer een bestand of map op 0777 staat betekent dit dat hij overschrijfbaar is door iedereen. Dus ook door een hacker. Het dus belangrijk om te controleren dat geen enkel bestand of map op 0777 staat. Je kunt dit steekproefsgewijs controleren maar bekijk vooral het bestand "configuration.php" en de map en inhoud van "/templates". Deze moeten op 0775 staan!

Backup?

Stel dat je a.s. maandagochtend een e-mail krijgt van een collega met het bericht dat de website gehackt is. Heb je een backup van de website? Zo ja, hoe oud is deze? En kun je deze backup terugzetten? De meeste hosting providers bieden hiervoor backup tools aan, je kunt deze zo instellen dat ze elke nacht een backup maken van de website. Let er wel op dat als je maar 1 kopie van deze backup bewaard, oftwel 1 nacht, de kans groot is dat je bij een hackaanval in het weekend, een backup van een gehackte website terugzet. Het daarom verstandig om meerdere backups te bewaren. Heb je geen mogenlijkheid bij je hostingprovider om backups te maken? Maak deze dan handmatig via FTP en MYSQL of installeer een Joomla plugin die dit kan.

Reacties

Door Thomas van Eldijk (niet gecontroleerd) op vrijdag, 20 augustus, 2010 - 08:44
Hi Rene, Uiteraard is de beveiliging van de webserver zelf een belangrijk punt. Zeker wanneer je een dedicated server zelf beheert moet je hier op letten! Alleen heb je, wanneer je een "normaal" hosting pakket huurt bij een hosting provider. hier nauwelijks tot geen invloed op. De tools die je noemt zijn enkel te gebruiken door de root / admin users van de server. Bij het huren van een hosting pakket is het dus verstandig om van te vragen aan de hosting providers wat hun doen aan de beveiliging van de servers. Wanneer je merkt dat hier weinig aan gedaan wordt, ( Vaak door te googlen vind je ervaringen van de andere klanten ) kun je beter verder kijken.

Door Rene Molenaar (niet gecontroleerd) op donderdag, 19 augustus, 2010 - 23:32
Bedankt voor deze Joomla Tips, hier was ik net naar op zoek. Naast de Joomla "security" zaken is het ook handig om soms je server/website te scannen d.m.v. Nmap, Nessus en Nikto...de laatste 2 zoeken ook op Vulnerabilities in applicaties als Apache, Mysql en andere code zoals PHP. Groeten Rene

Reactie toevoegen

To prevent automated spam submissions leave this field empty.