Ai Joomla și componenta SP Page Builder instalată? Atunci ai, chiar în acest moment, una dintre cele mai periculoase vulnerabilități descoperite în 2026 — indiferent dacă știi sau nu. Vulnerabilitatea se numește CVE-2026-48908. Practic, ea lasă pe oricine, fără cont și fără parolă, să încarce cod PHP direct pe server. Un singur pas, fără niciun clic din partea ta, și atacatorul preia controlul total asupra site-ului. Scorul ei de severitate este 10.0 din 10.0 — maximul posibil pe scara CVSS. Și nu e o exagerare de marketing de securitate. De fapt, Censys a numărat aproape 195.000 de site-uri cu componenta instalată. Mai mult, CISA a introdus-o de urgență în lista vulnerabilităților exploatate activ. Așadar, mai jos ai, pas cu pas, ce trebuie să faci ca să nu fii următorul de pe listă.
Ce este, de fapt, CVE-2026-48908?
CVE-2026-48908 este o vulnerabilitate critică de tip încărcare de fișiere neautentificată în SP Page Builder. Aceasta este extensia de construire vizuală a paginilor pentru Joomla, dezvoltată de JoomShaper. Mai exact, ea duce direct la execuție de cod pe server (Remote Code Execution). Problema afectează toate versiunile de la 1.0.0 până la 6.6.1. În plus, are un scor CVSS v4.0 de 10.0, conform GitHub Advisory Database și Tenable.
Cauza tehnică este simplă și cu atât mai gravă. Task-ul intern asset.uploadCustomIcon era folosit pentru încărcarea de iconițe personalizate. Însă acesta nu verifica dacă cel care trimite cererea e autentificat. Nu verifica nici ce tip de fișier trimite. Practic, oricine putea trimite un fișier PHP deghizat în iconiță, iar extensia îl accepta fără să clipească.
Cum reușește un atacator să-ți ia site-ul, în doi pași
Nu are nevoie de parola ta. Are nevoie doar de adresa site-ului tău și de un script automat. Practic, genul care scanează în permanență internetul după exact acest tip de breșă.
Pasul 1: atacatorul trimite o cerere POST neautentificată către index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon, conținând o arhivă cu un fișier PHP mascat drept iconiță.
Pasul 2: serverul extrage arhiva sub rădăcina web, în /media/com_sppagebuilder/assets/iconfont/. Pe orice configurație obișnuită de Apache/PHP, fișierul PHP de acolo se execută la prima accesare. Așadar, atacatorul are, în câteva secunde, o consolă completă pe serverul tău.
Ce face partea asta cu adevărat periculoasă e scara. Aproape 195.000 de instalări sunt expuse pe internet. De aceea, atacul e complet automatizat și „ieftin”. Practic, nu ești ales pe nume — ești doar unul dintre rezultatele unui scan de masă. IONIX confirmă exploatare activă în perioada actuală, nu doar risc teoretic. Nu vorbim despre un atac sofisticat, ghidat manual de o persoană care alege cu grijă o țintă. În schimb, vorbim despre un bot care lovește în câteva secunde orice adresă IP unde detectează componenta instalată. Cu alte cuvinte, nu contează dacă e un magazin online cu mii de comenzi pe zi sau un blog personal.
De ce sunt extensiile de tip page builder ținte atât de populare
Page builder-ele ca SP Page Builder rulează cu privilegii mari în interiorul Joomla. Practic, ating direct sistemul de fișiere pentru a salva șabloane, iconițe și medii. În plus, sunt instalate pe un număr uriaș de site-uri. Motivul e simplu: fac exact ceea ce vor proprietarii — pagini frumoase, fără cod scris de mână. Exact această combinație — privilegii mari și adopție de masă — le transformă în ținte predilecte pentru cercetătorii de vulnerabilități. Din păcate, la fel de atractive sunt și pentru atacatori.
CVE-2026-48908 nu e un caz izolat. În același val de dezvăluiri, a fost publicată și CVE-2026-56290. Aceasta e o altă vulnerabilitate cu scor CVSS 10.0, într-un page builder concurent pentru Joomla, conform threat-modeling.com. Tiparul se repetă suficient de des încât merită reținut ca regulă generală. Orice extensie care încarcă fișiere pe server e, prin natura ei, o zonă cu risc mai mare. Asta include nu doar page builder-e, ci și galerii foto, formulare de contact cu atașamente, sau plugin-uri de import. De aceea, merită verificată mai des decât restul site-ului.
Ești pe lista de risc? Verifică în 2 minute
Dacă folosești SP Page Builder în orice versiune de la 1.0.0 până la 6.6.1, ești expus. Ca să afli exact ce versiune rulezi:
- Intră în administrarea Joomla → Components → SP Page Builder și verifică numărul versiunii afișat în ecranul de configurare sau în „About”.
- Alternativ, verifică din managerul de fișiere sau prin FTP/SSH conținutul fișierului de manifest al componentei (
sppagebuilder.xml), unde versiunea apare explicit. - Dacă vezi orice cifră mai mică sau egală cu 6.6.1, ești expus. Așadar, treci direct la secțiunea de rezolvare de mai jos, fără să mai amâni.
Semnele că ai fost deja compromis
Dacă până acum n-ai actualizat, e posibil ca cineva să fi fost deja mai rapid decât tine. Însă asta nu e neapărat vina ta. Exploatarea rulează complet automat, non-stop, de câteva săptămâni bune. Iată exact ce să cauți.
Un cont Super User pe care nu ți-l amintești să-l fi creat
Semnătura clasică a acestui atac este un cont nou de Super Administrator cu adresa de email terminată în @secure.local. Acesta e un domeniu care nu există în realitate. De aceea, niciun cont legitim nu-l folosește vreodată. Conform mySites.guru, numele de utilizator urmează de obicei un tipar predictibil: un cuvânt generic de rol urmat de câteva cifre. De exemplu: webeditor48, sitehelper7, adminbk, webmanager43, portaladmin51 și variante similare. Mergi în Users → Manage, sortează după rol și verifică fiecare Super User din listă.
Un fișier PHP care n-ar trebui să existe acolo
Al doilea semn e un webshell — un fișier PHP „file manager” ascuns. Acesta îi dă atacatorului acces permanent, chiar și după ce închizi breșa inițială. Locațiile observate cel mai frecvent: /media/com_sppagebuilder/assets/iconfont/[nume]/fonts/, cu nume de tipul codex-sppb-d1a93331.php. Însă există și variante raportate în /media/com_admin/ sau /media/regularlabs/, deghizate ca users.php. Caută în aceste foldere orice fișier .php pe care nu-l recunoști, sau cu o dată de modificare recentă și nejustificată.
Rezolvarea, pas cu pas — asta chiar trebuie s-o faci azi
- Actualizează SP Page Builder la 6.6.2 sau mai nou. Cel mai simplu, direct din Joomla admin: Components → SP Page Builder → Update. Dacă update-ul automat nu apare, descarcă versiunea curată direct de pe joomshaper.com și instaleaz-o peste cea existentă.
- Dacă ai dezinstalat componenta ca măsură de urgență, nu restaura un backup vechi peste ea. Reinstaleaz-o din pachetul curat 6.6.2 — altfel readuci exact vulnerabilitatea pe care tocmai ai vrut s-o elimini.
- Nu poți actualiza chiar în acest moment? Blochează temporar, la nivel de server web (Apache/Nginx), orice cerere care conține
task=asset.uploadCustomIcon— inclusiv varianta codificată%2epentru punct. E doar o plasă de siguranță pentru câteva ore, nu o soluție pe termen lung. - Verifică indicatorii de compromitere de mai sus — contul Super User fals și fișierele PHP suspecte. Un backup complet, făcut înainte de orice actualizare majoră, te scutește de nopți nedormite dacă lucrurile nu merg cum trebuie.
- Dacă găsești oricare dintre semne, tratează site-ul ca fiind compromis integral. Șterge conturile și fișierele rogue. Schimbă toate parolele: cont de administrator Joomla, bază de date, FTP/SSH, panou de hosting. De asemenea, forțează delogarea tuturor utilizatorilor. Iar dacă ai un backup curat de dinainte de intruziune, ia în calcul o restaurare completă. E mai sigur decât o curățare manuală parțială.
Dacă vrei ca aceste verificări să ruleze automat, fără să le faci manual de fiecare dată când apare o vulnerabilitate nouă, merită să cauți o găzduire Joomla cu scanare de malware inclusă. Și pentru că un cont Super User cu parolă furată e la fel de periculos ca unul creat printr-un exploit, activarea autentificării cu doi factori (2FA) reduce semnificativ riscul chiar și atunci când o vulnerabilitate ca aceasta apare din nou, la altă componentă.
De ce contează scorul 10.0 și intrarea în catalogul CISA KEV
Un scor CVSS de 10.0 înseamnă maximul pe fiecare axă simultan. Exploatarea nu cere autentificare și nu cere nicio acțiune din partea unui utilizator legitim. Mai mult, impactul e total: control deplin asupra serverului. Puține vulnerabilități întrunesc toate aceste condiții deodată; majoritatea au măcar o barieră (o parolă, un clic, un acces limitat). Aici nu există niciuna.
Gravitatea reală s-a confirmat rapid. Potrivit threat-modeling.com, CISA a adăugat CVE-2026-48908 în catalogul Known Exploited Vulnerabilities (KEV) pe 7 iulie 2026. Termenul de remediere pentru instituțiile federale americane era 10 iulie 2026 — deja depășit la ora scrierii acestui articol. Asta arată cât de rapid a fost exploatată în practică.
Catalogul KEV nu e obligatoriu decât pentru agențiile federale americane. Însă, în practică, e folosit de majoritatea echipelor de securitate ca semnal „asta se exploatează acum, nu peste șase luni”. Dacă administrezi site-uri pentru clienți sau pentru propria afacere, tratează o intrare în KEV exact așa. Nu ca pe o recomandare, ci ca pe un semnal de urgență imediată, indiferent de jurisdicție.
Cum eviți să mai treci o dată prin asta
Actualizarea de acum rezolvă CVE-2026-48908. Statistic, va mai apărea o vulnerabilitate critică într-o altă extensie. Ca să nu ajungi din nou în aceeași situație, merită câteva obiceiuri simple, aplicate de acum înainte:
- Activează actualizările automate pentru extensii, acolo unde Joomla permite, cel puțin pentru actualizări de securitate. Cele câteva minute economisite prin amânare nu merită riscul unui site compromis pentru zile întregi.
- Dezinstalează ce nu mai folosești. Fiecare extensie inactivă, dar încă instalată, e o suprafață de atac în plus, fără niciun beneficiu în schimb. Asta include și componentele de page builder pe care le-ai testat cândva și ai uitat de ele.
- Ține un jurnal minim al versiunilor instalate: un simplu tabel cu numele extensiei și versiunea curentă. Verificat lunar, acesta te ajută să identifici rapid dacă ești afectat data viitoare când apare un CVE nou. Așa nu mai cauți prin admin la mijlocul unei crize.
- Monitorizează sursele de securitate specifice Joomla: anunțurile oficiale JoomShaper, GitHub Advisory Database sau newsletter-ul de securitate al hosting-ului tău. Astfel, afli despre vulnerabilități critice în ore, nu în săptămâni.
Concluzie: actualizarea durează câteva minute, curățarea unui site spart durează zile
CVE-2026-48908 nu e o vulnerabilitate teoretică pe care o rezolvi „când ai timp”. E exploatată activ, are scorul maxim posibil, iar aproape 195.000 de site-uri erau expuse la momentul descoperirii ei. Rezolvarea concretă e simplă și durează câteva minute. Mai întâi, actualizezi SP Page Builder la 6.6.2. Apoi verifici cele două semne de compromitere descrise mai sus. Dacă găsești ceva, cureți temeinic, în loc să speri că a trecut neobservat. Restul — blocarea temporară la nivel de server, backup-urile regulate, autentificarea în doi factori — sunt utile, dar nu înlocuiesc actualizarea. Aceea rămâne pasul zero.
Întrebări frecvente
Ce este SP Page Builder și de ce era vulnerabil?
SP Page Builder este o extensie de la JoomShaper pentru construirea vizuală a paginilor în Joomla. Task-ul intern asset.uploadCustomIcon accepta încărcări de fișiere fără nicio verificare de autentificare sau de tip de fișier. Din această cauză, oricine de pe internet putea urca cod PHP direct pe server.
Ce versiune de SP Page Builder rezolvă CVE-2026-48908?
Versiunea 6.6.2, lansată pe 14 iunie 2026, rezolvă vulnerabilitatea. Task-ul uploadCustomIcon este acum protejat prin autentificare, verificare de permisiuni și token anti-CSRF. Orice versiune de la 1.0.0 până la 6.6.1 este vulnerabilă.
Cum verific dacă site-ul meu Joomla a fost deja compromis?
Verifică lista de utilizatori din Joomla pentru conturi Super User cu adresa de email terminată în @secure.local. De asemenea, caută fișiere PHP neobișnuite în /media/com_sppagebuilder/assets/iconfont/, /media/com_admin/ sau /media/regularlabs/. Oricare dintre aceste semne indică o compromitere.
E suficient să actualizez componenta sau trebuie să curăț manual site-ul?
Actualizarea la 6.6.2 închide doar poarta de intrare, nu elimină ce a fost deja plasat pe server. Dacă găsești conturi sau fișiere suspecte, trebuie să le ștergi manual și să schimbi toate parolele. Actualizarea și curățarea sunt doi pași separați, ambii necesari.
Trebuie să actualizez și Joomla la ultima versiune, nu doar componenta?
Vulnerabilitatea este strict în extensia SP Page Builder, nu în nucleul Joomla. Așadar, actualizarea componentei la 6.6.2 rezolvă problema specifică CVE-2026-48908. Rămâne totuși recomandat să ții și Joomla core la zi. Motivul: vulnerabilitățile din nucleu se adaugă la suprafața totală de atac a site-ului.
Cât de repede trebuie să acționez, practic?
Imediat, nu „în weekend”. Vulnerabilitatea e exploatată activ printr-un proces complet automatizat. Timpul mediu între apariția unui exploit public și scanarea de masă a internetului se măsoară în ore, nu în zile. De aceea, actualizarea sau blocarea temporară a task-ului vulnerabil sunt prioritate imediată, nu ceva de „făcut curând”.
Există un workaround dacă nu pot actualiza imediat SP Page Builder?
Da, temporar: o regulă la nivel de server web care blochează cererile ce conțin task=asset.uploadCustomIcon, inclusiv varianta codificată %2e. Este doar o măsură de urgență pentru câteva ore, nu un înlocuitor pentru actualizare.
De ce are CVE-2026-48908 scorul CVSS maxim, 10.0?
Exploatarea nu necesită autentificare, și nu necesită nicio acțiune din partea unui utilizator legitim. Mai mult, impactul este total: control complet asupra serverului prin execuție de cod arbitrar. Sunt exact condițiile care duc la scorul maxim posibil în standardul CVSS.

