Alerta de seguretat · octubre 2026

Alerta PHP2Shell

El 21 d'octubre de 2026 PHP va publicar pegats d'emergència per a dues vulnerabilitats crítiques d'execució remota de codi. T'expliquem què ha passat i què fer avui mateix, sense dramatisme.

Comprova la teva web

Escriu el teu domini i fem UNA consulta passiva: llegim la versió de PHP que el teu servidor exposa públicament. No escanegem res i no toquem res.

Resultat orientatiu: la comprovació definitiva es fa des de dins del servidor.

No guardem dominis. Límit de 5 comprovacions al dia per adreça IP.

CVE crítics
2
CVSS màxim
9.2
branques PHP amb pegi
4

Què ha passat

El 21 d’octubre de 2026, el projecte PHP va publicar pegats d’emergència per a dues vulnerabilitats crítiques que permeten executar codi al servidor sense cap autenticació. Se les coneix com PHP2Shell i tenen una puntuació CVSS de 9,2 sobre 10:

  • CVE-2026-109618: el gestor de memòria de PHP pot interrompre l’execució quan s’acaba la memòria i deixar les dades internes de la petició mig inicialitzades; la neteja posterior pot tractar aquestes dades invàlides com si fossin vàlides.
  • CVE-2026-109619: un use-after-free: queda estat intern apuntant a memòria alliberada, i la petició següent que processi el mateix worker pot acabar utilitzant-la.

No és cap fallo teòric. Amazon (amb el seu honeypot MadPot) va detectar explotació real abans de la divulgació, des del 17 d’octubre, i l’empresa Sansec ha reproduït l’atac contra WordPress, Drupal, Joomla, Magento, Laravel, Symfony, phpMyAdmin i Nextcloud. El NCSC britànic ha arribat a recomanar valorar apagar els serveis que no es puguin pegar.

Qui està afectat

Pràcticament qualsevol web que funcioni amb PHP en un servidor que no hagi aplicat el pegat: WordPress, WooCommerce, PrestaShop, Moodle, phpMyAdmin, aplicacions a mida… i també les que corren en hosting compartit si el proveïdor no ha actualitzat.

El punt clau: és un fallo del llenguatge PHP, no de cada aplicació. Actualitzar WordPress, phpMyAdmin o qualsevol plugin no n’hi ha prou: cal actualitzar el PHP del servidor i reiniciar php-fpm, Apache o LiteSpeed. El pegat només fa efecte quan es reinicien els workers.

Actualització 23 d’octubre: tercer CVE reconegut

El 23 d’octubre el projecte PHP va reconèixer oficialment una tercera vulnerabilitat, CVE-2026-115560: una altra execució remota de codi, aquesta vegada lligada a session.upload_progress quan l’aplicació canvia el serialitzador de sessió amb ini_set() abans de session_start(). No és un bypass dels pegats del 21 d’octubre: és un vector nou i estret, que PHP descriu com a poc habitual en desplegaments normals. L’arranjament arribarà a la propera release regular de cada branca.

Mentrestant, la mitigació és una línia al php.ini del servidor (un ini_set() a l’aplicació no arriba a temps: l’upload progress corre abans del codi de l’app), i reiniciar els workers:

session.upload_progress.enabled = 0

Si ja vas desactivar upload progress seguint l’avís del 21 d’octubre, no has de fer res més per aquest vector. Si la teva aplicació no toca serialitzadors de sessió, el risc és baix; tot i així, desactivar upload progress si no l’uses és una bona pràctica.

A més, a les pròpies versions pegades (8.4.27 i 8.5.12) hi ha una regressió verificada de SimpleXML (double-free, php-src #24488): pot provocar crashes si la teva aplicació usa SimpleXML, però no és execució remota de codi. PHP recomana no revertir els pegats del 21 d’octubre; l’arranjament és en camí (PR #24494).

Font: avís informatiu de PHP del 23 d’octubre i el kit defensiu de Syhunt.

Què fer avui

  1. Actualitza el PHP del servidor a una de les versions amb pegi: 8.5.12, 8.4.27, 8.3.36 o 8.2.35. Si fas servir una distribució amb suport a llarg termini, el pegat hi ha estat portat (backport); cPanel també l’ha portat a partir de 7.4 (ea-php74 i superiors).
  2. Reinicia php-fpm, Apache o LiteSpeed. Sense reinici, el pegat no protegeix res, encara que el paquet estigui instal·lat.
  3. Si tens hosting gestionat (WordPress.com, SiteGround i similars), el proveïdor hauria d’haver-ho fet ja, però val la pena demanar-hi confirmació per escrit.
  4. Si la teva web la va fer un agent digitalitzador del Kit Digital, escriu-li i demana confirmació de què el PHP del servidor està actualitzat i reiniciat. Moltes de les webs afectades són pimes en aquesta situació.
  5. Si mantens tu el servidor, comprova la versió i reinicia els serveis; si no pots pegar-lo, valora desactivar temporalment el que no sigui imprescindible.

Com comprovar la teva web

Només per a les teves webs: mai escanegis webs d’altres persones. Maneres fiables de saber quina versió de PHP fa servir el teu servidor:

  1. WordPress: Escriptori → Eines → Salut del lloc → Informació → versió de PHP.
  2. Panell del hosting (cPanel, Plesk): cerca el selector «Versió de PHP».
  3. Per SSH: php -v. Compte: la versió de la línia d’ordres pot diferir de la que fa servir el servidor web; el més fiable és un phpinfo() temporal o preguntar al hosting.
  4. Pregunta directament al teu proveïdor d’hosting o de manteniment.
  5. Checkers en línia de tercers, verificats el 22 d’octubre: senseforat.cat, una eina catalana gratuïta i passiva que fa una sola petició des de fora sense tocar res; php2shell.sh (d’Imperva), Brandefense, Arvion i BugShield. Amb un avís honest: llegeixen la versió de PHP que el servidor exposa públicament, i molts servidors l’oculten; si no donen resultat, fes servir els mètodes 1 a 4.

Node.js i phpMyAdmin

phpMyAdmin no té pegat propi: es protegeix actualitzant el PHP del servidor on corre.

El mateix dia, Node.js va publicar correccions per a 10 vulnerabilitats (4 high, 3 medium, 3 low) a les branques 26.x, 24.x i 22.x: pegats a les versions 26.12.1, 24.22.1 i 22.23.4. La més greu és un RCE per escriptura fora de límits al decodificador Brotli. Les branques Node 20 i 18 són EOL i no rebran pegat: si en fas servir, cal migrar.

Altres que també hi ajuden

Quan un problema és d’aquesta mida, molts equips hi posen feina i ho fan bé. Aquests tres recursos, verificats el 22 d’octubre, ens semblen útils i els enllacem sense cap mena de contraprestació:

  • senseforat.cat: una eina gratuïta i passiva, en català, que fa una sola petició des de fora —sense tocar res— per saber si una web mostra PHP i amb quina versió davant de PHP2Shell. Guarda un registre públic de resultats (màxim 10 escaneigs per minut) i, a més, vigila les webs dels 947 municipis de Catalunya amb dades obertes de la Generalitat.
  • YesWeLab: un experiment amb fonts públiques (php.net, BOE, NVD, W3Techs) que estima que unes 115.500 webs del Kit Digital (en una horquilla de 82.900 a 166.700) segueixen en versions de PHP sense pegi per a PHP2Shell. També senyala que les bases de la solució «Lloc web» (2.000 €) exigien hosting, accessibilitat i SEO, però la paraula «seguretat» no hi apareix ni una vegada; recull la recomanació de la CISA de desconnectar sistemes amb PHP 8.1 o anterior; i ofereix un script gratuït perquè els agents digitalitzadors inventariïn el CMS i les versions de la seva cartera de webs.
  • transparencia.omitsis.com: un avaluador gratuït de transparència per a fundacions, ONG i associacions, que revisa fins a 30 pàgines i PDFs i entrega un informe amb la norma concreta de cada punt. Un bon exemple del mateix model, fet per Omitsis, un dels nostres clients: eines gratuïtes i útils que generen confiança.

Som bombers, no competidors

Quan l’incendi és d’aquesta magnitud, ningú no pregunta de quina quadrilla ets. PHP2Shell no és una oportunitat comercial: és un desastre natural a escala global que pot afectar milers de milions de persones de manera directa o indirecta — la botiga de sota de casa, l’ajuntament del poble, la web de l’associació del barri.

Aquests dies, els enginyers no som proveïdors: som bombers. Ningú no competeix amb ningú: tots estirem de la mateixa mànega. Per això aquesta pàgina enllaça sense pudor a recursos fets per altres equips: si la teva web està en risc, et serveix igual vingui de qui vingui. Hi anem tots plegats.

No saps per on començar? Ho fem nosaltres

Si la teva web ha sortit vulnerable i no tens qui ho pegi, ho podem fer nosaltres: analitzem el teu servidor, apliquem el pegat de PHP2Shell i verifiquem que queda ben tancat. De passada, revisem els altres forats recents (Node.js, phpMyAdmin) i et deixem un informe clar de què s’ha tocat i com ha quedat.

Sense lletra petita: ens expliques el teu cas, et diem què cal fer i quant temps porta. Si ho pots fer tu mateix amb les instruccions d’aquesta pàgina, t’ho direm igualment.

Ens escrius → o directament a hola@file.cat.

Fonts

Si necessites ajuda per actualitzar la teva web, parla’ns: ho fem cada dia i t’ho expliquem sense tecnicismes innecessaris.

Diagnòstic gratuït

IA local i privada per a empreses, autònoms i organitzacions. Les teves dades no surten de la teva oficina.