Tvoje obľúbené rozšírenie ti od júna 2023 nevyšla aktualizácia.
Na webe projektanta svieti „Joomla 4 ready“, ale ty už dávno prevádzkuješ Joomlu 5 a v zozname doplnkov svieti varovanie o nekompatibilite. Zatiaľ funguje, tak to neriešiš. Presne toto je moment, keď sa z teba stáva správca časovanej bomby.
Opustený doplnok nie je len technický dlh. Je to najtichšia bezpečnostná diera, akú si na webe môžeš nechať. Kým Joomla core opravuje zraniteľnosti pravidelne, mŕtvy kód sa neopraví nikdy. A útočníci presne vedia, kde hľadať.
Ako spoznáš, že je doplnok mŕtvy
Nemusíš čakať na varovanie z administrácie. Stačí päť minút a tri otázky.
Kedy vyšla posledná verzia? Prejdi si na stránke projektu sekciu changelog alebo vydania. Viac ako 12 mesiacov bez vydania pri rozšírení, ktoré nie je v stabilnom režime „hotovo“, je prvý varovný signál. Pri Joomle 5, ktorá mení API rýchlejšie ako kedysi, je rok ticha často rozsudkom.
Je doplnok kompatibilný s tvojou verziou Joomly? V administrácii ti to ukáže Správca rozšírení. Ak tam svieti žlté alebo červené varovanie, neignoruj ho. Výnimkou sú jednoduché doplnky, ktoré nepoužívajú zmenené API — tie môžu fungovať roky. Ale to je šťastie, nie stratégia.
Žije projekt? Pozri sa na fórum podpory. Odpovedá autor na otázky? Je web projektu stále online? Ak je doména na predaj alebo fórum zaprášené, projekt je mŕtvy bez ohľadu na to, čo sľubuje vydavateľ. Zmiznutý web projektu je najjasnejší signál — nemáš sa koho opýtať, keď sa niečo pokazí.
Prečo je opustený kód riziko
Joomla má za sebou sériu bezpečnostných bulletinov, ktoré sa týkali práve doplnkov tretích strán. Keď výskumníci nájdu dieru v populárnom rozšírení a autor nereaguje, zraniteľnosť sa stáva verejne známou. Útočníci skenujú weby automaticky, nie ručne. Nezaujíma ich, či si mal v pláne doplnok vymeniť — zaujíma ich, či na tvojom webe beží známa zraniteľná verzia.
Riziko neklesá s tým, ako dlho doplnok „bez problémov“ funguje. Rastie.
Čo s tým: tri cesty
Nájdi náhradu. Najprv si pozri, či funkcia nie je už v jadre Joomly. Mnoho starých doplnkov riešilo veci, ktoré dnes zvládne core alebo štandardné polia. Ak nie, hľadaj aktívny projekt s vydaniami v posledných mesiacoch a kompatibilitou s tvojou verziou.
Prepíš funkciu ručne. Pri malých úpravách — vlastné pole, špecifické zobrazenie — je často jednoduchšie napísať si malý vlastný doplnok alebo šablónu override. Neznie to lákavo, ale pre jednoduchú funkcionalitu je to menej práce ako migrácia na nový rozšírený systém.
Dočasne izoluj. Ak náhrada neexistuje a funkciu potrebuješ, obmedz škody. Zakáž doplnok na verejnej časti, ak sa dá. Ak musí bežať, aspoň ho oddeľ od citlivých údajov a prístupov. Toto je provizórium, nie riešenie — povedz si jasný termín, dokedy ho vymeníš.
Čo si zazálohovať a ako sa vrátiť späť
Pred akýmkoľvek zásahom do živého webu si sprav kompletnú zálohu súborov aj databázy. Nie export z administrácie — poriadny zálohovací doplnok, ktorý vie zálohu aj obnoviť. Pred odinštalovaním starého doplnku si over, či neuchováva dáta v databáze, ktoré by si potreboval. Niektoré rozšírenia mažú svoje tabuľky pri odinštalovaní.
Ak sa migrácia na náhradu nepodarí, obnovíš zálohu a vrátiš sa do stavu pred zásahom. Preto si zálohu rob vždy pred každým krokom, nie až na konci.
Ako sa tomu vyhnúť do budúcnosti
Pri výbere nového doplnku si pozri históriu vydaní. Pravidelné vydania nie sú len o funkciách — sú o tom, že autor reaguje na zmeny v Joomle a na bezpečnostné hlásenia. Projekt, ktorý vydáva aktualizácie len občas, ale konzistentne, je lepšia voľba ako projekt s veľkým humbukom a ročným tichom.
A zapíš si do kalendára štvrťročnú kontrolu: prejdi si zoznam rozšírení, pozri si dátumy vydaní a kompatibilitu. Päť minút štvrťročne ťa ušetrí od večera, ktorý stráviš riešením napadnutého webu.
Pavlov servisný tip: Pri každom doplnku, ktorý inštaluješ, si do poznámky v Správcovi rozšírení zapíš, na čo ho používaš. O dva roky, keď bude treba rozhodnúť o náhrade, nebudeš musieť pátrať, čo všetko na ňom visí. A ak ťa napadne web, vieš okamžite povedať, čo môžeš vypnúť bez toho, aby si rozbil funkčnosť.