Joomla beter beveiligen in 10 stappen

Geschreven door Jurian Even | zondag, 01 mei 2011

Joomla is wereldwijd een zeer populair CMS. Helaas komt het voor dat Joomla websites worden gehackt. Dit ligt meestal niet aan de Joomla core, maar aan het onjuist instellen of onderhouden van Joomla. Het is dus belangrijk dat u uw Joomla website goed onderhoudt en beveiligt, zodat u niet gehackt wordt.

Voorbereiding

  • Login de back-end als Super Administrator
  • Installeer Akeeba Backup
  • Maak een volledige back-up van uw website inclusief database met behulp van Akeeba Backup.
  • Controleer of de back-up naar behoren werkt, deze backup kunt u gebruiken als er iets mis gaat.
  • Hernoem htaccess.txt in de root van de Joomla installatie naar .htaccess en pas eventuele serverspecifieke instellingen toe.

Deze tips zijn voor ervaren gebruikers bedoeld. Als u onvoldoende ervaring met Joomla heeft, dan raden we u aan om een specialist te raadplegen.

Stap 1. Installeer Joomla updates

Enkele keren per jaar verschijnen er updates voor Joomla (extensies). Deze updates vebeteren onder andere de beveiliging, verhelpen foutjes en voegen eventueel extra functionaliteiten toe. Zorg ervoor dat uw Joomla website altijd up-to-date is!

Download updates altijd van bovenstaande websites. Zo voorkomt u dat u malware installeert en hackers uw website overnemen.

Stap 2. Verwijder ongebruikte extensies

Ongebruikte extensies zijn potentiële beveiligingslekken en dienen te worden verwijderd.
Doe dit altijd via de back-end, aangezien de database tabellen dan ook worden verwijderd.

  • Selecteer Extensies >> Installeer / Deïnstalleer
  • Selecteer Componenten, Modules of Plugins
  • Deïnstalleer de desbetreffende extensie(s).
  • Controleer altijd of alle bestanden en database tabellen daadwerkelijk zijn verwijderd! Bekijk hiervoor het XML installatie bestand van desbetreffende extensie en gebruik phpMyAdmin.

Stap 3. Controleer extensies op beveiligingslekken

Onveilige extensies worden gerapporteerd en vermeld in de Vulnerable Extensions List. Als u dergelijke extensies heeft geïnstalleerd dient u deze beveiligingslekken te dichten. Erg belangrijk voor het beveiligen van uw Joomla website!

  • Selecteer Extensies >> Installeer / Deïnstalleer
  • Vergelijk alle geïnstalleerde extensies met de Vulnerable Extensions List
  • Update of deïnstalleer onveilige extensies, zie stap 2.
  • Installeer eventueel een soortgelijke extensie van extensions.joomla.org
  • Depubliceren is onvoldoende, onveilige bestanden blijven dan op de server staan.

Stap 4. Joomla website beveiligen

Verhoog de beveiliging van uw Joomla website met de uitgebreide Firewall en .htaccess van Admin Tools Pro. Dit is een commerciële extensie, welke zijn geld zeker waard is.

  • Installeer Admin Tools Professional de meest geavanceerde beveiliging voor uw Joomla website
  • Configureer en publiceer de extensie. Het is erg belangrijk dat u Admin Tools Pro goed instelt, zie hiervoor de handleiding.
  • Uitloggen (rechtsboven in back-end) en weer inloggen via www.uwwebsite.nl/administrator?uwwachtwoord

Sla FTP wachtwoorden niet op in uw Joomla back-end!

Stap 5. Verander standaard database voorvoegsel (_jos)

De meeste SQL injectie's maken misbruik van de bekende jos_users tabel, waar de back-end inloggegevens zijn opgeslagen. Door deze gegevens op te vragen en/of te manipuleren kunnen hackers toegang krijgen tot uw back-end.
U kunt dit voorkomen door het voorvoegsel aan te passen, ook andere bekende database tabellen worden zo beschermd. Vanaf Joomla 1.7 is dit niet meer nodig.

  • Verander altijd het database voorvoegsel bij het installeren van een Joomla website.
  • Website al geïnstalleerd? Verander dan uw database voorvoegsel met behulp van Admin Tools.
  • Zie de gebruikershandleiding van Admin Tools voor meer informatie.

Stap 6. Verander de Super Administrator

Joomla 1.5 maakt standaard gebruik van een Super Administrator ID van 62 en gebruikersnaam admin. Joomla 1.6 en 1.7 maken hiervoor gebruik van ID = 42 en een gebruikersnaam naar keuze. In beide gevallen kan een bekende Super Administrator ID uw Joomla beveiliging aantasten. Dit geldt ook voor de bekende gebruikersnaam van de Super Administrator in Joomla 1.5.

  • Verander Super Administrator ID met behulp van Admin Tools
  • Zie de gebruikershandleiding van Admin Tools voor meer informatie
  • Ga in de back-end naar Website >> Gebruikersbeheer
  • Selecteer de Super Administrator gebruiker met gebruikersnaam admin
  • Verander de standaard gebruikersnaam van de Super Administrator

Stap 7. Gebruik de juiste bestandsrechten

Gebruik Admin Tools om automatisch de juiste bestandsrechten in te stellen (handleiding).
U kunt bestandsrechten ook met de meeste FTP programma's instellen.

  • Mappen: 755
  • Bestanden: 644
  • Configuration.php 444

Zet bestandsrechten nooit op 777.

Stap 8. Verwijder versienummers

De meeste veiligheidslekken komen alleen voor in specifieke versienummers van extensies. Door versienummers in de getoonde broncode te verwijderen worden eventuele, al dan niet bekende, veiligheidsissues minder snel opgemerkt.

  • Zoek naar versienummers in de broncode van de afzonderlijke pagina's
  • Download alle bestanden van de desbetreffende extensie
  • Installeer Komodo Edit of een soortgelijke editor
  • Gebruik de Find & Replace functie en laat de desbetreffende mappen doorzoeken
  • Verwijder de versienummers en upload de bestanden
  • Let op dat de broncode vaak weer dient te worden aangepast bij updates

Publiceer geen lijst van de gebruikte extensies. Dit geeft hackers vertrouwelijke informatie, waarmee veiligheidslekken kunnen worden uitgebuid.

Stap 9. Gebruik zoekmachine vriendelijke URL's

Hackers gebruiken vaak de Google inurl: operator om naar kwetsbare Joomla websites te zoeken. Dit kunt u voorkomen door gebruik te maken van zoekmachine vriendelijke URL's. Gebruik de ingebouwde Joomla SEF of een Joomla extensie:

Optie 1: Standaard Joomla SEF

  • Ga naar de back-end en log in
  • Website >> Algemene instellingen
  • Selecteer tabblad Website
  • Zoekmachinevriendelijke URL's: aanvinken
  • Gebruik Apache mod_rewrite: aanvinken

Optie 2: SEF met Joomla extensie

Hiervoor raden wij sh404SEF aan. Deze extensie kunt u voor $ 35,- downloaden op http://dev.anything-digital.com:

  • Zeer uitgebreide zoekmachine optimalisatie functie's, waaronder URL's, metatags en 404 pagina
  • Uitgebreide veiligheidsfunctie's die de meest voorkomende aanvallen voorkomen
  • Geïntegreerde Google Analytics

Bijkomend voordeel van zoekmachine vriendelijke URL's is dat uw website beter scoort in de zoekmachines.

Stap 10. Hou uw website in de gaten

Gefeliciteerd met het verbeteren van de beveiliging van uw Joomla website!
U kunt echter niet onderuit zitten en de veiligheid van uw website uit het oog verliezen.

  • Gebruik altijd de laatste versies van Joomla (extensies)
  • Abonneer op de RSS feed van de Vulnerable Extensions List
  • Controleer server logs op verdachte handelingen
  • Wees actief in het bijhouden van uw Joomla beveiliging en speur naar lekken
  • Maak regelmatig backups van uw website, inclusief database. Mocht uw website gehackt worden, een update mislukken of wat anders fout gaan, dan heeft u altijd een backup.
  • Laat backups nooit op de server staan. Download back-ups en verwijder deze van de server. Backups bevatten namelijk vertrouwelijke informatie waar misbruik van kan worden gemaakt.

Meer weten over Joomla beveiligen?

Bekijk onderstaande links voor meer tips om de beveiliging van uw Joomla website te verbeteren. Heeft u deze Joomla beveiligingstips goed kunnen gebruiken? Laat het ons even weten, we stellen uw reactie op prijs!

Jurian Even

Over de auteur

Hallo! Ik ben Jurian Even, Engineer, Joomla specialist en oprichter van Twentronix. De ontwikkelingen van Joomla hou ik voortdurend bij, zodat ik optimaal gebruik kan maken van Joomla. Deze opgedane kennis ziet u terug in onze Joomla blog, websites en support.

Gelezen: 1394 keer Laatst aangepast op dinsdag, 08 mei 2012 09:14