security-maand-2

Dit artikel is onderdeel van de veiligheidsmaand op JoomlaCommunity.nl.

“Zo, de website is af! De laatste Joomla 1.5.5 is geïnstalleerd, de template naar wens en de site is ingericht. Nu alleen nog zo nu en dan nieuwe content plaatsen en ik heb verder geen omkijken meer naar mijn website.” Dit gaat goed totdat je een paar maanden later een mailtje van een bezoeker ontvangt dat er allemaal rare teksten en video’s op de site te zien zijn. Je gaat kijken en komt tot de ontdekking dat je website er niet meer uitziet zoals je gewend bent, je bent gehackt...

Helaas komt een gehackte Joomla website nog steeds regelmatig voor. “Is Joomla dan onveilig?” Nee, vrijwel altijd gaat het hierbij om een hack van oudere Joomla versies of extensies (of verkeerde server instellingen, maar dat laat ik in dit artikel buiten beschouwing). “Maar ik heb de laatste Joomla versie gebruikt!” Dat klopt, op het moment dat de website opgebouwd werd wel, maar in de tussentijd zijn er negen nieuwe versies in de Joomla 1.5 serie uitgekomen...

Bovenstaande scenario komt geregeld voor. Een Joomla website wordt gebouwd maar er worden daarna geen Joomla updates uitgevoerd, terwijl dit wel belangrijk is. Joomla updates worden uitgebracht om ontdekte fouten in de code op te lossen en om verbeteringen door te voeren. Dit kunnen ook verbeteringen zijn op het gebied van veiligheid. Daarom is het belangrijk er voor te zorgen dat je altijd de laatste versie uit de Joomla 1.0 of Joomla 1.5 serie gebruikt.

Gebruikte Joomla versies

Toch passen veel website beheerders deze updates niet toe. Bij een van de grootste Joomla hosting providers van Nederland, Byte Internet, heb ik de statistieken opgevraagd van de gebruikte Joomla versies op de servers van Byte Internet. Daaruit komt de volgende grafiek voor Joomla 1.0 en Joomla 1.5.

joomla-versies-byte

Hieruit valt op te maken dat maar 45% van de websites die op Joomla 1.0 draaien de laatste 1.0.15 versie gebruikt. Voor de Joomla 1.5 serie ligt dit percentage nog lager, nog geen 30% gebruikt Joomla 1.5.14. Dit is een erg laag percentage, ondanks dat Byte Internet toch veel aandacht besteed aan de veiligheid en updates van Joomla. Waarschijnlijk ligt dit percentages over alle Joomla websites gezien nog lager.
Daarnaast valt het op dat versie 1.5.0 - 1.5.5 nog steeds op een aantal sites gebruikt wordt. Deze versies zijn erg eenvoudig te hacken, al heeft het merendeel wel een versie draaien tussen de 1.5.6 - 1.5.14, waarschijnlijk vanwege de grote aandacht aan het lek. Toch gebruikt 70% van de websites nog niet de laatste 1.5.14 versie.

Waarom nog zoveel oudere versies?

Hoe komt het dat er toch nog zoveel ‘oude’ versies van Joomla gebruikt worden en gebruikers niet updaten? Instructies voor het updaten van Joomla versies zijn op genoeg plekken te vinden en erg lastig is een update uitvoeren ook niet. Dit laatste zullen vooral de gebruikers zeggen die al eens een update hebben uitgevoerd, en hier is waarschijnlijk dan ook een oorzaak te vinden.

Veel gebruikers maken eenmalig een website als (hobby)project. Aan het eind van de ontwikkeling ben je allang blij dat de website draait en denk je vooral niet aan het bijhouden van de Joomla versies. En als je er wel aan denk ben je bang dat een update er voor zorgt dat alle tijd en moeite voor een site verloren gaat.

Mijn eerste update

Toen ik in 2005 mijn eerste (toen nog hobby) Joomla site maakte had ik hetzelfde gevoel. Ik was bang dat een update er voor zorgde dat ik alles opnieuw moest instellen. Onterecht, bleek achteraf. Na een keer de tijd te nemen en de stappen voor een update te doorlopen heb ik mijn eerste update uitgevoerd. Wat bleek, de Joomla versie was aangepast maar verder zag ik geen verschil, wat een opluchting! Zelfs een vervelend probleempje in de backend was ineens verdwenen, wat fijn!

Ik kwam er dus achter dat een update heel eenvoudig is uit te voeren en dat de website er alleen maar beter van wordt. Inmiddels lig ik van een nieuwe versie niet meer wakker en voorzie ik in een handomdraai een hele lijst websites van updates. Ik moest een update dus gewoon een keer uitvoeren om van mijn angst af te komen.

De onterechte update angst

Achteraf begrijp ik mijn (onterechte) angst. Voor mijn gevoel kon een update er voor zorgen dat ik al mijn content kwijt raakte. Inmiddels weet ik beter en snap ik dat met een Joomla update alleen de Joomla core bestanden aangepast worden en niet de database structuur en inhoud, waar alle teksten en instellingen worden opgeslagen. Anders is het met een migratie van Joomla 1.0 naar Joomla 1.5. Hierbij wordt wel de database structuur aangepast, maar daarom heet dit ook een ‘migratie’ en geen ‘update’.

Zolang je geen aanpassingen maakt in de core bestanden van Joomla zul je niet snel tegen problemen aanlopen. Met Joomla 1.5 is de ‘template overrides’ functie geïntroduceerd, zo kan je de Joomla output toch aanpassen zonder de core bestanden aan te passen. Al zal de gemiddelde beginner nog niet denken aan het aanpassen van Joomla core bestanden.

De grote beginnersvalkuil

Toch is er voor beginners een grote valkuil bij Joomla updates waardoor er slechte ervaringen ontstaan. Bij de eerste Joomla website die iemand maakt wordt vaak gebruikt gemaakt van een van de standaard aanwezige Joomla templates. Als je na het schuiven van de modules naar andere posities een stapje verder wilt in het bewerken van templates wordt er vaak geëxperimenteerd met het aanpassen van de template CSS bestanden. Na het aanpassen van bijvoorbeeld de template kleuren ben je tevreden over het resultaat, totdat je er na een Joomla update achter komt dat alle aanpassingen ineens zijn verdwenen... dat is dan flink balen!

Dit probleem ontstaat als er bij een update van Joomla ook verbeteringen aan de standaard templates zijn gemaakt. Je template bestanden worden dan overschreven en je raakt de gemaakte  aanpassingen kwijt. Zorg er daarom voor dat je de template bestanden niet overschrijft bij een update. Dit kan je doen door de template map niet mee te nemen bij een update. Een andere optie is de template map te kopiëren en te hernoemen, dan kan het nooit misgaan bij een update. Vergeet echter niet te kijken welke aanpassingen er gedaan zijn aan de standaard template om die eventueel voor je eigen template ook door te voeren.

De update vuistregel

Als vuistregel voor Joomla updates kunnen we dus stellen dat alle bestanden die bij de eerste installatie van Joomla op de server zijn geplaatst overschreven kunnen worden bij updates. Maak aanpassingen aan de Joomla core door gebruik te maken van template overrides en gebruik andere template mapnamen dan de die van de standaard Joomla templates.
Bij een update worden er normaal gesproken geen database aanpassingen gemaakt. Alle instellingen voor je pagina’s, menu’s, modules, plugins, etc... en de content zelf zullen nooit verloren gaan bij een update omdat deze in de database zijn opgeslagen.

Het uitvoeren van een update

In een volgend artikel zal ik de stappen die voor een update nodig zijn doorlopen en daarbij enkele tips geven. Mocht je nu al aan de slag willen staat er in onze documentatie sectie een instructie voor het uitvoeren van updates. Veel succes!

16 reacties

EasyDiscuss Avatar
Borrie
Een Joomla! Update knop in de backend zou dus wel erg handig zijn!<br />En lijkt mij niet moeilijk om te programmeren. Er zijn immers wel meer extenties die dat kunnen.
EasyDiscuss Avatar
Sander Potjer
Voor Joomla 1.6 wordt daar ook aan gewerkt, zie https://www.joomlacommunity.nl/nieuws/joomla-versies/285-een-eerste-blik-op-joomla-16-alpha.html Verder zullen we binnenkort ook een NL extensie beschikbaar maken die dat voor Joomla 1.5 kan.
EasyDiscuss Avatar
Hans Kuijpers
Nog een reden waarom er verouderde versies op de server kunnen staan zijn de vergeten test-sites. Toen de fictieve persoon uit de tekst zijn website ging maken deed hij er heel verstandig aan ook een development omgeving op te zetten. En omdat hij Joomla! nog niet zo goed onder de knie had plaatste hij ook een speeltuin om de functionaliteit en van Joomla! te testen. Drie installaties dus... productie, development en een speeltuin. Het kan voorkomen dat hij bij het upgraden naar 1.5.14 niet meer omgekeken heeft naar 1.5.5 Op die manier kunnen er dus bij Byte nog sites voorkomen met verouderde Joomla! versies. <br />Of mensen die na oplevering er geen geld meer willen insteken... de bekende kreet "het werkt, dus ik doe er niets aan" zal vast gebruikt worden.
EasyDiscuss Avatar
ronwessels
Updates zijn natuurlijk prima. Maar niet alle updates blijken, oké. Ik refereer aan 1.5.13. Het komt niet vaak voor. Er wordt echt goed gewerkt. En dat is het probleem niet, dat ik wil aanstippen.<br />In de linux OS omgevingen worden bijvoorbeeld ook regelmatig updates gelanceerd. Alleen doen ze dat (grosso modo)voor twee versies.<br />Een stabiele versie. Die vaak gebruikt wordt voor professionele omgevingen die absoluut niet uit mogen vallen. Vaak moet hiervoor betaald worden. Maar bij Ubuntu bijvoorbeeld hoeft dat ook weer niet.<br />En zijn ook updates voor meer experimentele omgevingen. Vaak zijn die gratis verkrijgbaar. Meestal mankeert daar ook niets aan, maar het kan verkeren.<br />Zou het ook niet voor Joomla! interessant zijn om van twee versies te gaan spreken. Mij dunkt dat Joomla! gebruikt wordt in situaties waarin je zeker niet wil dat er een update roet in het eten kan gooien.
EasyDiscuss Avatar
yoeri van meurs
Leuk artikel Sander Potjer
EasyDiscuss Avatar
bartpronk
Leuk om te lezen. En ja, tis ook wel veel werk als je tientallen websites beheerd en dit iedere keer moet updaten bij een nieuwe versie van Joomla. Ik ben ondertussen ook bezig alles te upgraden.
EasyDiscuss Avatar
Hans van der Meer
Ik lees altijd wat er exact gewijzigd is en wanneer er geen extreme haast met het updaten is wacht ik een aantal dagen om te kijken of er een probleem met de update zelf is.<br /><br />Soms vergeet je het eens, zo heb ik onlangs een website van 1.5.9 naar 1.5.14 geupdate, maar eigenlijk was die weloverwogen uitgesteld.
EasyDiscuss Avatar
Jeroen (Alias BamiSalami)
Mooi artikel en inderdaad de angst is er in het begin maar valt uiteindelijk mee.<br />zelf gebruik ik altijd de techniek om de gehele laatste versie als zip bestand te uploaden in de root. Deze pak ik d.m.v. directadmin uit en verwijder de installatie map.<br />Dit is in totaal 1 minuutje werk. Dus probleem valt gelukkig wel mee. Of het nodig is of niet ik upgrade wel altijd.
EasyDiscuss Avatar
webXalt
Goed artikel!<br />Ik heb inmiddels rond de 20 joomla-sites draaien en ben nog steeds op zoek naar een tool om die automatisch tegelijk te updaten.<br /><br />Je bent hierin ook afhankelijk van je opdrachtgever. Die willen niet betalen voor updates. Als er dan iets mis gaat komen ze wel bij je aankloppen. Vervolgens heb je natuurlijk een redelijk recente back-up waardoor je ze verder kunt helpen en ze alsnog besluiten updates te laten doen. Maar dit is vrij omslachtig.<br /><br />Verder komt bij een update wel meer kijken dan even snel een paar bestandjes uploaden. Allereerst het maken van een goede back-up, waarbij steekproefsgewi js testen ook aan te raden is. Vervolgens moet je na de update ook checken of alle functionaliteit nog werkt zoals gewenst (al zal dit vrijwel altijd zo zijn).<br /><br />Al met al ben je met één update al snel 1 á 2 uur bezig.<br /><br />Nogmaals, ik ben nog op zoek naar een tool om al deze stappen te versnellen en te automatiseren.
EasyDiscuss Avatar
Sander Potjer
Dank voor alle reacties. Wat betreft die tool voor het eenvoudiger updaten; binnenkort meer! ;-)<br /><br />Verder geeft webxalt aan afhankelijk te zijn van je opdrachtgever of ze wel of niet willen betalen. Ik ben het daar deels mee eens. Het is aan ons die Joomla sites maken/verkopen de taak op duidelijk te stellen dat een Joomla site na de bouw niet 'af' is, dat er nog geregeld updates komen waarvan het belangrijk is dat die uitgevoerd worden. Als je dit direct al in je offerte meeneemt als vast onderhoudscontr act, of bedrag per update (ieder zijn/haar voorkeur) dan is de klant zich daar direct van bewust en is het ook geen probleem meer. Vervelender is het als je na het bouwen van de website daarmee aan komt zetten, dan kan ik me de weerstand voorstellen.
EasyDiscuss Avatar
Gerlof
@borrie Er bestaat al een component om Joomla met een druk op de knop vanuit de backend bij te werken naar een nieuwe versie:<br />http://extensions.joomla.org/extensions/core-enhancements/installers/9332<br /><br />Dit werkt supersimpel!<br /><br />Gerlof
EasyDiscuss Avatar
Gerlof
Oh ja, en het update component kost je helemaal niets! ;-)<br />Verkorte URL: http://tr.im/yQ4D<br /><br />Gerlof
EasyDiscuss Avatar
sc00zy
Let wel op dat dit alleen voor de internationale versie werkt, Gerlof. Taalbestanden moet je daarna nog wel handmatig updaten. Binnenkort meer over deze extensie, maar dan aangepast voor JoomlaCommunity .eu :-)
EasyDiscuss Avatar
Gerlof
@scoozy Dat klopt. Maar gelukkig zitten de veiligheidsprob lemen meestal niet in de taalbestanden ;-)
EasyDiscuss Avatar
JohanG
Goed artikel, het bijhouden van een website schort het vaak aan, niet alleen het updaten van Joomla maar ook het actualiseren van de website data.<br />Heb vijf Joomla sites onder beheer. Heb de routine om bij het uitkomen van een update eerst van alle sites met Joomlapack een backup te maken en daarna mijn eigen site eerst te updaten en te controleren. Daarna doe ik de andere sites. Al met al een werkje van hooguit een uur.
EasyDiscuss Avatar
eblom
"Joomla update knop zou geweldig zijn"<br /><br />is zeker erg handig. Toch is het radzaam om altijd een gecontroleerd proces te (laten) hanteren, of minstens voor een selectie van sites die bedrijfskritisc he extensies bevatten. Onze joomla 1.5 sites (ca. 50) draaien op een joomla optimized managed server. Die worden met een script in twee uur allemaal geupdate door een hele goeie webdeveloper (Rene Kreyveld/Webcreatives). In het geval dat er een site door de update niet goed gaat is het van belang er a.) een goed en snel back-up restore proces klaar staat en b.) de technicus de error begrijpt en hierop actie onderneemt. Vooral sites met bedrijfskritish e extensies. Verder hoogst kwalijk wanneer er onbetrouwbare upades komen die in de dagen erna gecorrigeerd moeten worden. Vertrouwen weg, niet goed. Wacht daarom altijd eerst een week. suxes! Edwin Blom Suityoursite.nl

Reageer

1000 Resterende tekens