[{"data":1,"prerenderedAt":361},["ShallowReactive",2],{"seo-verification":3,"blog-polyshell-cve-2026-48356-magento-kev-verificar-corregir-es":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-polyshell-cve-2026-48356-magento-kev-verificar-corregir-es",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":30,"intro":33,"sections":34,"ctaTitle":257,"ctaBody":258,"ctaButton":259,"ctaUrl":260,"relatedPosts":261},566,"polyshell-cve-2026-48356-magento-kev-verificar-corregir",{"fr":12,"en":13,"ar":14,"es":10},"polyshell-cve-2026-48356-magento-kev-verifier-corriger","polyshell-cve-2026-48356-magento-kev-check-and-fix","ثغرة-polyshell-cve-2026-48356-ماجنتو-التحقق-والإصلاح","PolyShell CVE-2026-48356: verificar y corregir Magento","PolyShell (CVE-2026-48356) está en el catálogo KEV: localice las tiendas Magento sin el parche APSB26-73, actualícelas y busque webshells y JavaScript inyectado.",12,0,false,"2026-11-04T00:00:00+00:00","2026-11-04T16:30:20+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},8,"Seguridad y monitorización","securite-monitoring","bg-rose-500\u002F10 text-rose-400","security",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fpolyshell-cve-2026-48356-magento-kev-verifier-corriger-poster.svg","CVE-2026-48356, apodada PolyShell, entró en el catálogo KEV de la CISA el 27 de octubre de 2026: la explotación de tiendas Adobe Commerce y Magento Open Source está constatada. Para una agencia, la pregunta no es solo «hay que actualizar», sino «qué tiendas no tienen el parche APSB26-73 y cuáles llevan ya un webshell». Un parche elimina la falla; no retira ni los archivos depositados ni el JavaScript inyectado. Aquí tiene el inventario, la actualización, cuatro controles de compromiso y la rotación de accesos, con un informe fechado para entregar al cliente.",[35,39,71,74,84,135,154,157,178,199,203,206,215,254],{"type":36,"title":37,"body":38},"h2","PolyShell: lo que está establecido y lo que difiere","CVE-2026-48356, apodada PolyShell, afecta a Adobe Commerce y a Magento Open Source. La ficha de la NVD, publicada el 14 de julio de 2026 a partir de la declaración de Adobe, la clasifica como CWE-434 (subida de un archivo de tipo peligroso), con una puntuación CVSS 3.1 de 9,3 y el vector `AV:N\u002FAC:L\u002FPR:N\u002FUI:R\u002FS:C\u002FC:H\u002FI:H\u002FA:N`. El parche es el boletín de Adobe APSB26-73. El 27 de octubre de 2026, la CISA la añadió a su catálogo de vulnerabilidades explotadas (KEV), con un plazo hasta el 10 de noviembre de 2026 para las agencias federales estadounidenses: la explotación ya no es una hipótesis.\n\nLas fuentes no describen el fallo de la misma manera. La NVD habla de una ejecución de código arbitrario «en el contexto del usuario actual», que requiere interacción: una víctima tiene que visitar una URL manipulada o una página comprometida, y el impacto va más allá del componente vulnerable. Sansec y la prensa especializada describen subidas de archivos que terminan en webshells en el servidor. No zanjamos entre estas dos lecturas. La conducta prudente, para una agencia, consiste en tratar toda tienda que siga sin parche como una tienda que ya puede llevar un webshell.",{"type":40,"title":41,"headers":42,"rows":46},"comparison","Lo que dicen las fuentes y lo que usted retiene",[43,44,45],"Fuente","Lo que afirma","Lo que usted retiene",[47,51,55,59,63,67],[48,49,50],"NVD","CWE-434, CVSS 3.1 de 9,3, interacción requerida, ejecución en el contexto del usuario actual","Los identificadores que debe anotar en el expediente del cliente",[52,53,54],"CISA, catálogo KEV","Explotación constatada, añadida el 27 de octubre de 2026, plazo federal hasta el 10 de noviembre de 2026","Un horizonte de trabajo, no una fecha cómoda",[56,57,58],"Adobe, boletín APSB26-73","Las versiones con el sufijo 2026-jul no están afectadas","La versión objetivo de cada rama",[60,61,62],"Sansec, 30 de marzo de 2026","Oleada masiva: 471 tiendas comprometidas en una hora, un webshell PHP y después puertas traseras `accesson.php`","Los archivos que hay que buscar en el disco",[64,65,66],"Sansec, 24 de octubre de 2026","Cargador JavaScript en `cms_block`, campaña seguida desde julio de 2025 en 953 tiendas; 102 de 169 instalaciones sin parche tenían archivos subidos","Las consultas que hay que lanzar en la base",[68,69,70],"Prensa especializada","Subida de archivos que lleva a webshells","Una lectura que contrastar, no una fuente primaria",{"type":36,"title":72,"body":73},"Por qué el parche no cierra el expediente","Aplicar APSB26-73 elimina la falla. No retira nada de lo que ya ha entrado. Un webshell depositado antes de la actualización sigue en el disco, una puerta trasera `accesson.php` sigue respondiendo, un script inyectado en `cms_block` sigue sirviéndose a cada visitante y una cuenta de administrador creada por el atacante sigue siendo válida. Sansec lo resume así: retirar los scripts no retira el acceso del atacante.\n\nEl segundo estudio de Sansec muestra por qué la pregunta afecta a todo un parque. De 169 instalaciones de Magento 2 sin parche examinadas, 102 tenían archivos subidos mediante PolyShell o SessionReaper (CVE-2025-54236, corregida por el boletín APSB25-88), es decir, un 60 %. El orden de trabajo es, por tanto, fijo: inventario, estado congelado, actualización, búsqueda de rastros, rotación de accesos y, al final, un informe fechado para el cliente. Saltarse la rotación para ganar una hora es dejar al atacante las llaves que quizá ya ha copiado.",{"type":75,"title":76,"items":77},"ul","Lo que este procedimiento deja en sus manos",[78,79,80,81,82,83],"**Un inventario por tienda** — edición (Commerce u Open Source), versión exacta, presencia o ausencia del parche 2026-jul.","**Una versión objetivo por rama** — leída en el boletín APSB26-73, sin adivinar la numeración.","**Un estado congelado antes de intervenir** — snapshot y exportación de la base conservados como prueba, antes de cualquier limpieza.","**Cuatro controles reproducibles** — archivos bajo `pub\u002Fmedia`, puertas traseras `accesson.php`, JavaScript en `cms_block` y en `cms_page`.","**Una rotación completa de accesos** — cuentas de administración, claves de API y de integración, base de datos, clave de cifrado, SSH y SFTP.","**Un informe fechado para cada cliente** — lo que se ha verificado, encontrado y corregido, y lo que no.",{"type":40,"title":85,"headers":86,"rows":90},"Versiones afectadas y versiones corregidas según APSB26-73",[87,88,89],"Producto y rama","Afectada hasta","Versión corregida",[91,95,99,103,107,111,115,117,119,121,123,127,131],[92,93,94],"Adobe Commerce 2.4.9","2.4.9","2.4.9-2026-jul",[96,97,98],"Adobe Commerce 2.4.8","2.4.8-p5","2.4.8-2026-jul",[100,101,102],"Adobe Commerce 2.4.7","2.4.7-p10","2.4.7-2026-jul",[104,105,106],"Adobe Commerce 2.4.6","2.4.6-p15","2.4.6-2026-jul",[108,109,110],"Adobe Commerce 2.4.5","2.4.5-p17","2.4.5-2026-jul",[112,113,114],"Adobe Commerce 2.4.4","2.4.4-p18","2.4.4-2026-jul",[116,93,94],"Magento Open Source 2.4.9",[118,97,98],"Magento Open Source 2.4.8",[120,101,102],"Magento Open Source 2.4.7",[122,105,106],"Magento Open Source 2.4.6",[124,125,126],"Adobe Commerce B2B","1.5.3, 1.5.2-p5, 1.4.2-p10, 1.3.4-p17, 1.3.3-p18","1.5.3-2026-jul, 1.5.2-2026-jul, 1.4.2-2026-jul, 1.3.4-2026-jul, 1.3.3-2026-jul",[128,129,130],"Adobe Commerce Events","1.20.0 y anteriores","1.21.0",[132,133,134],"Magento Open Source 2.4.5 y 2.4.4","Ausentes de la lista de la NVD","Ninguna conclusión: lea el aviso de Adobe",{"type":136,"title":137,"steps":138},"steps","Inventariar la versión de cada tienda",[139,142,145,148,151],{"title":140,"body":141},"Leer la versión declarada","`cd \u002Fvar\u002Fwww\u002Ftienda-cliente`\n`bin\u002Fmagento --version`\nEl comando muestra la edición y el número. La ruta es un ejemplo: adáptela a cada alojamiento. Ejecútelo con el usuario del sistema propietario de los archivos, no como root, para no modificar los permisos de la caché.",{"title":143,"body":144},"Contrastar con Composer","`composer show magento\u002Fproduct-community-edition`\npara Magento Open Source, o\n`composer show magento\u002Fproduct-enterprise-edition`\npara Adobe Commerce. Composer lee lo que está realmente instalado. Si las dos lecturas difieren, manda Composer, y la diferencia se anota.",{"title":146,"body":147},"Recorrer un servidor entero","`find \u002Fvar\u002Fwww \u002Fhome -name composer.lock -not -path '*\u002Fvendor\u002F*' -exec grep -H -A1 '\"name\": \"magento\u002Fproduct-' {} +`\nCada archivo citado pertenece a una instalación de Magento, y la línea `version` sigue al nombre del paquete. Una preproducción pública o una copia antigua descomprimida cuenta como una tienda: está expuesta de la misma manera si se sirve.",{"title":149,"body":150},"Clasificar con la tabla de versiones","Compare el número obtenido con la tabla anterior. Regla de lectura: toda versión que no lleve el sufijo 2026-jul de su rama debe tratarse. Para Magento Open Source 2.4.5 y 2.4.4, ausentes de la lista de la NVD, no escriba «no afectada»: remita al boletín de Adobe y trate la tienda como expuesta mientras no haya leído lo contrario.",{"title":152,"body":153},"Anotar una línea por tienda","Cliente, servidor, ruta, edición, versión obtenida, fecha y hora de la lectura. Añada desde ahora las columnas que servirán más adelante: parche aplicado, resultado de los cuatro controles, accesos rotados. Esta tabla se convierte en la pieza central del expediente entregado al cliente.",{"type":36,"title":155,"body":156},"Congelar el estado antes de tocar: también es una prueba","Antes de cualquier cambio, congele la tienda tal como la encontró. En un VPS, un snapshot del VPS, si su proveedor lo ofrece, captura el disco entero; añada una exportación de la base y un archivo del código en un soporte que la actualización no toque. La diferencia entre ambas herramientas se detalla en \u003Ca href=\"\u002Fes\u002Fblog\u002Fsnapshot-vs-copia-de-seguridad-de-vps-diferencias-y-restauracion\">nuestra comparativa entre snapshot y copia de seguridad\u003C\u002Fa>.\n\nEste estado sirve dos veces. Permite volver atrás si la actualización rompe el proceso de compra. Sobre todo, conserva la prueba: si el atacante entró, los archivos depositados, sus fechas y los bloques CMS modificados están en esta copia, y en ningún otro lugar una vez hecha la limpieza. La CISA remite además a sus requisitos de triaje forense para los sistemas afectados. No borre ni sobrescriba este estado mientras el expediente no esté cerrado.\n\nUn cambio de rama, de 2.4.6 a 2.4.9 por ejemplo, es otro proyecto: su procedimiento con Composer y su calendario de soporte están en \u003Ca href=\"\u002Fes\u002Fblog\u002Fmagento-2-4-6-fin-de-soporte-actualizar-a-2-4-9\">nuestra guía de actualización\u003C\u002Fa>. Aquí, cada tienda se queda en su rama y solo recibe el parche.",{"type":136,"title":158,"steps":159},"Aplicar el parche sin un corte largo",[160,163,166,169,172,175],{"title":161,"body":162},"Ensayar en una preproducción","Restaure el estado congelado en una preproducción, o clone la tienda, y ejecute primero allí la actualización. Cronometre cada comando: esa duración fija la ventana de mantenimiento que anunciará al cliente.",{"title":164,"body":165},"Fijar la versión corregida","`composer require magento\u002Fproduct-community-edition=\u003Cversion-corregida> --no-update`\nSustituya el paquete por `magento\u002Fproduct-enterprise-edition` para Adobe Commerce, y `\u003Cversion-corregida>` por la versión con el sufijo 2026-jul de su rama, tal como la escribe el boletín.",{"title":167,"body":168},"Resolver y validar el archivo de bloqueo","`composer update magento\u002Fproduct-community-edition --with-all-dependencies`\nRevise la lista de paquetes modificados. El `composer.lock` obtenido y probado es el que desplegará: la producción ya no resuelve nada, instala.",{"title":170,"body":171},"Abrir la ventana de mantenimiento en producción","`bin\u002Fmagento maintenance:enable`\n`bin\u002Fmagento maintenance:allow-ips \u003Csu-ip>`\nTodo lo anterior se hizo sin cortar la venta. El segundo comando le permite probar la tienda antes de reabrirla.",{"title":173,"body":174},"Instalar y aplicar","`composer install --no-dev`\n`bin\u002Fmagento setup:upgrade`\n`bin\u002Fmagento setup:di:compile`\n`bin\u002Fmagento setup:static-content:deploy`\nCon un archivo de bloqueo ya validado, el corte se limita a estos cuatro comandos.",{"title":176,"body":177},"Reabrir y comprobar","`bin\u002Fmagento maintenance:disable`\n`composer show magento\u002Fproduct-community-edition`\nLa versión instalada debe ser la versión corregida de su rama. Haga un pedido con la pasarela de pago en modo de prueba y anote después la versión y la hora en la tabla.",{"type":136,"title":179,"steps":180},"Buscar rastros de compromiso",[181,184,187,190,193,196],{"title":182,"body":183},"Listar los archivos depositados bajo pub\u002Fmedia","`find pub\u002Fmedia\u002Fcustom_options\u002F pub\u002Fmedia\u002Fcustomer_address\u002F -type f ! -name '.htaccess'`\nComando publicado por Sansec, que se lanza desde la raíz de la tienda. Todo archivo listado debe examinarse, en particular un script PHP. Cópielo fuera del árbol público con su fecha de modificación antes de borrarlo.",{"title":185,"body":186},"Buscar las puertas traseras accesson.php","`find . -name 'accesson.php' -type f`\nSansec señala este archivo «en varios directorios»: lance la búsqueda desde la raíz, no solo bajo `pub\u002F`. Un resultado vacío demuestra la ausencia de ese archivo, no la ausencia de cualquier puerta trasera.",{"title":188,"body":189},"Consultar la tabla cms_block","`SELECT block_id, identifier, update_time FROM cms_block WHERE content LIKE '%fpCode%' OR content LIKE '%se_referrer%' OR content LIKE '%localStorage.getItem%';`\nConsulta publicada por Sansec. Añada el prefijo de tabla de la instalación si existe. La columna `update_time` ayuda a fechar la inyección.",{"title":191,"body":192},"Consultar la tabla cms_page","`SELECT page_id, identifier, update_time FROM cms_page WHERE content LIKE '%fpCode%' OR content LIKE '%se_referrer%' OR content LIKE '%localStorage.getItem%';`\nEl mismo control sobre las páginas CMS. Un resultado no es necesariamente malicioso: `localStorage.getItem` puede aparecer en un script legítimo. Lea el contenido antes de concluir.",{"title":194,"body":195},"Cotejar con los indicadores publicados","Para la oleada de marzo de 2026, Sansec publicó un dominio de cargador, `lanhd6549tdhse.top`, una clave de localStorage, `136c1e07507f4a97`, y una marca de puerta trasera, `8194460`. Búsquelos en los resultados anteriores y en los archivos encontrados, por ejemplo con `grep -rl 'lanhd6549tdhse' pub\u002F app\u002F`. Esta lista no es exhaustiva: su ausencia no exculpa a una tienda.",{"title":197,"body":198},"Revisar las cuentas de administrador","`SELECT user_id, username, email, created, logdate, is_active FROM admin_user ORDER BY created DESC;`\nUna cuenta que nadie reconoce, o creada en una fecha cercana a la de un archivo sospechoso, se desactiva y luego se documenta. El control mensual de estos puntos en cada VPS de cliente se describe en \u003Ca href=\"\u002Fes\u002Fblog\u002Fauditoria-seguridad-mensual-vps-clientes-agencia-checklist\">nuestra checklist de auditoría\u003C\u002Fa>.",{"type":200,"title":201,"body":202},"tip","Refuerzo: PHP no tiene nada que hacer bajo pub\u002Fmedia","Con independencia de PolyShell, un directorio que recibe archivos enviados por los visitantes nunca debería ejecutar PHP. Compruebe que su configuración de nginx o Apache rechaza la ejecución de scripts bajo `pub\u002Fmedia`, y pruébelo en preproducción con un archivo inofensivo. No es una mitigación publicada por Adobe para esta CVE y no sustituye al parche: es un refuerzo general, que reduce el efecto de una futura subida exitosa.",{"type":36,"title":204,"body":205},"Solución de problemas: los bloqueos frecuentes del procedimiento","**«Your requirements could not be resolved to an installable set of packages.»** Composer rechaza la versión pedida: un módulo de terceros fija una dependencia, o la restricción de estabilidad de `composer.json` excluye la versión buscada. El comando `composer why-not magento\u002Fproduct-community-edition \u003Cversion-corregida>` nombra el paquete que bloquea. Resuélvalo en preproducción, nunca en producción.\n\n**«Please upgrade your database: Run \"bin\u002Fmagento setup:upgrade\" from the Magento root directory.»** La tienda muestra este mensaje tras actualizar el código: el paso `setup:upgrade` no se ejecutó, o falló. Vuelva a lanzarlo y después la compilación.\n\n**«Table '…cms_block' doesn't exist»** al ejecutar la consulta de Sansec: la instalación usa un prefijo de tabla. Lea el prefijo en la configuración de la tienda y añádalo al nombre de la tabla.\n\n**«No such file or directory»** con el comando `find` de `pub\u002Fmedia`: la carpeta `custom_options` o `customer_address` no existe en esta tienda. Anótelo en la tabla; no es ni un fallo ni una prueba de limpieza.\n\n**Una tienda que sigue en mantenimiento**: compruebe que no quede ningún indicador de mantenimiento y vuelva a lanzar `bin\u002Fmagento maintenance:disable` con el usuario propietario de los archivos.",{"type":75,"title":207,"items":208},"Después de la limpieza: lo que debe rotarse",[209,210,211,212,213,214],"**Contraseñas de administrador** — todas las cuentas de `admin_user`, incluidas las que considere sanas.","**Claves de API e integraciones** — tokens de las integraciones declaradas en la administración, claves de los servicios de terceros (pago, transporte, ERP) guardadas en la configuración.","**Credenciales de base de datos** — una nueva contraseña, actualizada en la configuración de la tienda.","**Clave de cifrado** — se cambia siguiendo la documentación de Adobe, tras evaluar el efecto sobre los datos ya cifrados.","**Accesos SSH y SFTP** — contraseñas, claves SSH autorizadas, cuentas del sistema desconocidas.","**Accesos de alojamiento** — panel de control y copias de seguridad, que también dan acceso a los archivos.",{"type":40,"title":216,"headers":217,"rows":221},"El informe fechado que debe entregar a cada cliente",[218,219,220],"Columna","Lo que escribe en ella","Por qué",[222,226,230,234,238,242,246,250],[223,224,225],"Versión antes y después","Números leídos por Composer, con fecha y hora","Muestra que el parche APSB26-73 está aplicado",[227,228,229],"Estado congelado","Referencia del snapshot y de la exportación de la base","Permite volver atrás y el examen forense",[231,232,233],"Archivos bajo pub\u002Fmedia","Rutas y fechas de los archivos encontrados, o «ninguno»","Control publicado por Sansec",[235,236,237],"accesson.php","Rutas encontradas, o «ninguna»","Puerta trasera señalada por Sansec",[239,240,241],"cms_block y cms_page","Identificadores listados y veredicto tras la lectura","JavaScript inyectado servido a los visitantes",[243,244,245],"Cuentas de administración","Cuentas desconocidas desactivadas, o «ninguna»","Acceso dejado por el atacante",[247,248,249],"Accesos rotados","Secretos cambiados y fecha del cambio","Cierra lo que el atacante haya podido copiar",[251,252,253],"No verificado","Lo que no pudo revisar, y por qué","Un estado honesto vale más que un «todo va bien»",{"type":36,"title":255,"body":256},"Lo que usted conserva y las fuentes que citar","Cuando se descubre que una tienda está comprometida, es a la agencia a quien llama el cliente. Conserve ese papel: usted lleva la relación, el diagnóstico y el informe fechado; la plataforma lleva la infraestructura, el acceso root al VPS que permite lanzar estos controles y el snapshot antes de intervenir. No modificamos el código de una tienda en su lugar: la actualización de Magento sigue siendo tarea de la agencia. Conserve también la plantilla de la tabla: el próximo fallo que afecte a una tienda seguirá la misma secuencia, con una línea más en el inventario.\n\nFuentes primarias:\n\u003Ca href=\"https:\u002F\u002Fnvd.nist.gov\u002Fvuln\u002Fdetail\u002FCVE-2026-48356\">Ficha de la NVD de CVE-2026-48356\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fhelpx.adobe.com\u002Fsecurity\u002Fproducts\u002Fmagento\u002Fapsb26-73.html\">Boletín de Adobe APSB26-73\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.cisa.gov\u002Fnews-events\u002Falerts\u002F2026\u002F10\u002F27\u002Fcisa-adds-two-known-exploited-vulnerabilities-catalog\">Alerta de la CISA del 27 de octubre de 2026\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fsansec.io\u002Fresearch\u002Fpolyshell-mass-attack-wave\">Sansec, oleada masiva de PolyShell\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fsansec.io\u002Fresearch\u002Fmagento-cms-block-loader-deepveindrilling\">Sansec, cargador JavaScript en cms_block\u003C\u002Fa>","Un parque de tiendas, un solo inventario","En un parque de tiendas de clientes, el verdadero coste es la falta de inventario. En la página para agencias, vea cómo centralizar la cartera, las infraestructuras y su estado en un mismo lugar: usted conserva la relación con el cliente, nosotros llevamos la infraestructura.","Ver la solución para agencias","\u002Fsolutions\u002Fagences",[262,278,299,314,330,348],{"id":263,"slug":264,"slugs":265,"title":269,"excerpt":270,"readTime":271,"views":18,"isPinned":19,"publishedAt":272,"updatedAt":273,"category":274,"categories":275,"featuredImage":30,"bgImage":31,"posterImage":277,"relatedSolution":30},557,"magento-2-4-6-fin-de-soporte-actualizar-a-2-4-9",{"fr":266,"en":267,"ar":268,"es":264},"magento-2-4-6-fin-de-support-mise-a-niveau-2-4-9","magento-2-4-6-end-of-support-upgrade-to-2-4-9","ماجنتو-2-4-6-نهاية-الدعم-الترقية-إلى-2-4-9","Magento 2.4.6 sin soporte: pasar a 2.4.9 con corte mínimo","El soporte estándar de Magento 2.4.6 terminó. Calendario de Adobe, requisitos de servidor de la 2.4.9 y un procedimiento Composer ensayado en preproducción.",9,"2026-11-01T00:00:00+00:00","2026-11-01T14:14:31+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[276],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fmagento-2-4-6-fin-de-support-mise-a-niveau-2-4-9-poster.svg",{"id":279,"slug":280,"slugs":281,"title":285,"excerpt":286,"readTime":287,"views":287,"isPinned":19,"publishedAt":288,"updatedAt":289,"category":290,"categories":296,"featuredImage":30,"bgImage":31,"posterImage":298,"relatedSolution":30},151,"como-instalar-magento-en-un-vps",{"fr":282,"en":283,"ar":284,"es":280},"installer-magento-vps","how-to-install-magento-on-a-vps","كيفية-تثبيت-magento-على-vps","Cómo instalar Magento en un VPS","Instale Magento en un VPS ServOrbit: catálogo complejo, stack Docker, HTTPS y enlace a la documentación oficial de Adobe Commerce.",3,"2026-01-25T00:00:00+00:00","2026-09-07T11:26:10+00:00",{"id":291,"name":292,"slug":293,"color":294,"icon":295},7,"Autoalojamiento","self-hosting","bg-indigo-500\u002F10 text-indigo-400","cloud",[297],{"id":291,"name":292,"slug":293,"color":294,"icon":295},"\u002Fblog\u002Fcovers\u002Finstaller-magento-vps-poster.svg",{"id":300,"slug":301,"slugs":302,"title":306,"excerpt":307,"readTime":271,"views":18,"isPinned":19,"publishedAt":308,"updatedAt":309,"category":310,"categories":311,"featuredImage":30,"bgImage":31,"posterImage":313,"relatedSolution":30},548,"snapshot-vs-copia-de-seguridad-de-vps-diferencias-y-restauracion",{"fr":303,"en":304,"ar":305,"es":301},"snapshot-vs-sauvegarde-vps-difference-restauration","vps-snapshot-vs-backup-what-differs-and-how-restore-works","اللقطة-مقابل-النسخ-الاحتياطي-للـvps-الفرق-والاستعادة","Snapshot vs copia de seguridad de VPS: diferencias y restauración","Snapshot o copia de seguridad de un VPS: qué protege cada uno, qué no protege, cómo restaurar y una regla de decisión para los VPS de sus clientes.","2026-10-31T00:00:00+00:00","2026-10-31T19:07:30+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[312],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fsnapshot-vs-sauvegarde-vps-difference-restauration-poster.svg",{"id":315,"slug":316,"slugs":317,"title":321,"excerpt":322,"readTime":323,"views":18,"isPinned":19,"publishedAt":324,"updatedAt":325,"category":326,"categories":327,"featuredImage":30,"bgImage":31,"posterImage":329,"relatedSolution":30},521,"auditoria-seguridad-mensual-vps-clientes-agencia-checklist",{"fr":318,"en":319,"ar":320,"es":316},"checklist-audit-securite-mensuel-vps-clients-agence","monthly-security-audit-checklist-client-vps-agency","قائمة-تدقيق-أمان-vps-شهرية-للعملاء-للوكالات","Auditoría mensual de un VPS cliente: checklist en 45 min","Siete controles para repetir cada mes en un VPS cliente: actualizaciones, kernel, cuentas SSH, puertos, certificados, copias, registros. Con informe fechado.",10,"2026-10-28T00:00:00+00:00","2026-10-29T03:10:22+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[328],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fchecklist-audit-securite-mensuel-vps-clients-agence-poster.svg",{"id":331,"slug":332,"slugs":333,"title":337,"excerpt":338,"readTime":323,"views":18,"isPinned":19,"publishedAt":339,"updatedAt":340,"category":341,"categories":342,"featuredImage":30,"bgImage":31,"posterImage":344,"relatedSolution":345},525,"bricksforge-cve-2026-85097-wordpress-actualizar",{"fr":334,"en":335,"ar":336,"es":332},"bricksforge-cve-2026-85097-wordpress-mettre-a-jour","bricksforge-cve-2026-85097-wordpress-update","ثغرة-bricksforge-cve-2026-85097-ووردبريس-التحديث","Bricksforge CVE-2026-85097: actualizar y auditar su parque","Bricksforge 3.1.8.10 corrige CVE-2026-85097, una subida sin autenticar explotada. Inventario wp-cli, archivos PHP depositados, registros y secretos a rotar.","2026-10-29T00:00:00+00:00","2026-10-29T15:45:55+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[343],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fbricksforge-cve-2026-85097-wordpress-mettre-a-jour-poster.svg",{"categorySlug":346,"appSlug":347},"cms-sitios-web","wordpress",{"id":349,"slug":350,"slugs":351,"title":355,"excerpt":356,"readTime":323,"views":18,"isPinned":19,"publishedAt":272,"updatedAt":273,"category":357,"categories":358,"featuredImage":30,"bgImage":31,"posterImage":360,"relatedSolution":30},556,"drupal-commerce-cve-2026-118539-actualizar-y-auditar-pedidos",{"fr":352,"en":353,"ar":354,"es":350},"drupal-commerce-core-cve-2026-118539-sa-contrib-2026-254-mettre-a-jour","drupal-commerce-cve-2026-118539-update-and-audit-orders","ثغرة-drupal-commerce-cve-2026-118539-التحديث-وتدقيق-الطلبات","Drupal Commerce CVE-2026-118539: corregir y auditar pedidos","Fallo de Commerce Core explotado, aviso SA-CONTRIB-2026-254: localice las versiones afectadas, pase a 3.3.13 u 8.x-2.41 y audite los pedidos.",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[359],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fdrupal-commerce-core-cve-2026-118539-sa-contrib-2026-254-mettre-a-jour-poster.svg",1793820250856]