Geschreven door Sander Potjer op dinsdag, 15 september 2009 16:30, in: Security

security-maand-2

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

“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!

Reacties (16)

geschreven door Borrie op 15 september 2009 19:42
Een Joomla! Update knop in de backend zou dus wel erg handig zijn!
En lijkt mij niet moeilijk om te programmeren. Er zijn immers wel meer extenties die dat kunnen.
geschreven door Sander op 15 september 2009 19:50
Voor Joomla 1.6 wordt daar ook aan gewerkt, zie http://www.joomlacommunity.eu/...alpha.html Verder zullen we binnenkort ook een NL extensie beschikbaar maken die dat voor Joomla 1.5 kan.
geschreven door belowzero op 15 september 2009 21:42
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 functionaliteiten 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.
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.
geschreven door ronwessels op 15 september 2009 22:00
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.
In de linux OS omgevingen worden bijvoorbeeld ook regelmatig updates gelanceerd. Alleen doen ze dat (grosso modo)voor twee versies.
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.
En zijn ook updates voor meer experimentele omgevingen. Vaak zijn die gratis verkrijgbaar. Meestal mankeert daar ook niets aan, maar het kan verkeren.
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.
geschreven door yoeri van meurs op 15 september 2009 23:09
Leuk artikel Sander Potjer
geschreven door bartpronk op 15 september 2009 23:35
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.
geschreven door hvdmeer op 16 september 2009 00:09
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.

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.
geschreven door jdegouw op 16 september 2009 09:39
Mooi artikel en inderdaad de angst is er in het begin maar valt uiteindelijk mee.
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.
Dit is in totaal 1 minuutje werk. Dus probleem valt gelukkig wel mee. Of het nodig is of niet ik upgrade wel altijd.
geschreven door webXalt op 16 september 2009 10:25
Goed artikel!
Ik heb inmiddels rond de 20 joomla-sites draaien en ben nog steeds op zoek naar een tool om die automatisch tegelijk te updaten.

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.

Verder komt bij een update wel meer kijken dan even snel een paar bestandjes uploaden. Allereerst het maken van een goede back-up, waarbij steekproefsgewijs 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).

Al met al ben je met één update al snel 1 á 2 uur bezig.

Nogmaals, ik ben nog op zoek naar een tool om al deze stappen te versnellen en te automatiseren.
geschreven door Sander op 16 september 2009 10:38
Dank voor alle reacties. Wat betreft die tool voor het eenvoudiger updaten; binnenkort meer daarover!

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 om 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 onderhoudscontract, 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.
geschreven door Gerlof op 16 september 2009 11:23
@borrie Er bestaat al een component om Joomla met een druk op de knop vanuit de backend bij te werken naar een nieuwe versie:
http://extensions.joomla.org/e...lers/9332

Dit werkt supersimpel!

Gerlof
geschreven door Gerlof op 16 september 2009 11:29
Oh ja, en het update component kost je helemaal niets! smilies/wink.gif
Verkorte URL: http://tr.im/yQ4D

Gerlof
geschreven door sc00zy op 16 september 2009 14:10
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 smilies/smiley.gif
geschreven door een gast op 16 september 2009 20:33
@scoozy Dat klopt. Maar gelukkig zitten de veiligheidsproblemen meestal niet in de taalbestanden smilies/wink.gif
geschreven door johang op 17 september 2009 22:48
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.
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.
geschreven door eblom op 14 oktober 2009 13:38
"Joomla update knop zou geweldig zijn"

is zeker erg handig. Toch is het radzaam om altijd een gecontroleerd proces te (laten) hanteren, of minstens voor een selectie van sites die bedrijfskritische 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 bedrijfskritishe 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

Plaats reactie

Je moet ingelogd zijn om een reactie te kunnen geven. Log in aan de rechter zijde of registreer als je nog geen account hebt.


busy
Joomla 1.0.15 j-1515 JoomlaCommunity

Laatste Nederlandstalige Joomla!™ versies

Laatste reacties op nieuws en blogs

Joomla! Translations Team

Joomla! Agenda

Joomla gebruikersgroepen in Nederland en Belgie

Nieuwsbrief



Licentievoorwaarden

Op alle artikelen is de Creative Commons Licentie van toepassing.

Creative Commons License

Zoeken in nieuws

Donateurs: Woosh! Webdesign