Comprueba sitios públicos, revisa configuraciones y registros locales o encuentra herramientas abiertas. Cada resultado indica sus pruebas y límites.
01 / URL
Comprueba tu sitio
Introduce tu propio sitio público. Revisamos una página y hasta dos redirecciones buscando cabeceras PHP e indicios de plataforma, sin intentar explotar vulnerabilidades.
PHP / ?
¿No sabes qué PHP utilizas?
WordPress: Herramientas > Salud del sitio > Información > Servidor. En el panel elige el dominio y su controlador PHP, no el valor predeterminado. Con SSH compara php -v con FPM/Apache o el contenedor que sirve ese dominio. Sitios, tareas CLI y réplicas pueden diferir. No publiques phpinfo.
02 / LOG
Revisar señales en registros
Pega un extracto o elige un archivo de texto. Mostramos recuentos y líneas de errores de memoria, caídas, errores HTTP y PHPSESSID inusuales. Las coincidencias no prueban una intrusión; su ausencia no la descarta.
¿Intento o intrusión exitosa? →03 / PHP INI
Revisar configuración PHP
Pega ajustes de php.ini o del pool FPM. Solo analizamos texto: no vemos herencia ni cambios por petición y no demostramos qué está activo. Estas medidas nunca sustituyen el parche.
Límites de memoria y reciclado →Directorio de herramientas GitHub
Comprobador PHP OpenAI
Apache-2.0. Ayuda Node.js para inventario local o cabeceras públicas, con JSON. Lee README antes de usarlo en activos autorizados. Cabeceras ocultas, backports y diferencias CLI/Web limitan conclusiones. No certifica imposibilidad de explotación.
openai/php2shell-checker ↗Reglas Corelight Zeek / Suricata
BSD-3-Clause. Reglas defensivas; Zeek 7+ correlaciona peticiones/sesiones e inventaría versiones por separado. Instalar Zeek no carga Suricata. Valida configuración, visibilidad TLS y falsos positivos. notice_body_sample_bytes=0 evita muestras sensibles.
corelight/php2shell-detect ↗Información NCSC-NL
EUPL-1.2. Guía de respuesta e inventario mantenidos para responsables y parches de proveedores. No es escáner de flotas y puede faltar software. Conserva tus propias pruebas de paquetes y despliegue.
NCSC-NL/php2shell ↗Trivy para imágenes y SBOM
Apache-2.0. Inventario y análisis general de imágenes/paquetes para PHP integrado y reconstrucciones. Depende de base, identificación y datos del proveedor. Un informe limpio no prueba ambos parches PHP2Shell.
aquasecurity/trivy ↗Composer audit
MIT. Revisa avisos de dependencias de aplicación gestionadas por Composer. El intérprete PHP no es una biblioteca Composer. Un audit limpio no actualiza PHP, examina el host ni descarta intrusión.
composer/composer ↗Ejemplos Apache Syhunt
MIT. Límites de petición y bloqueo multipart comunitarios. Cubren rutas parciales y pueden romper cargas; prueba antes. php_value Apache no sirve sin cambios en CGI/FastCGI. Solo controles temporales revisados, nunca protección completa.
syhunt/php2shell-protection ↗¿Un escáner gratis demuestra un hackeo?
No de forma concluyente. Cabeceras y patrones aportan pistas sin ver runtime completo, historial ausente ni filtraciones de memoria. Inventaría, conserva y correlaciona. Ante cuentas, procesos o filtraciones inexplicados, aísla y contacta al proveedor o equipo de respuesta.
Pide pruebas al proveedor
Confirmen los parches de CVE-2026-109618 Y CVE-2026-109619 en el runtime Web de mi dominio. Faciliten revisión completa, aviso o changelog y confirmación de sustitución o reinicio de todos los workers FPM/Apache, réplicas y procesos persistentes. ¿Pueden revisar los registros de acceso, PHP y procesos conservados?Fuentes primarias y lecturas adicionales
PHP security teamLeer el original ↗CVE-2026-109618Leer el original ↗CVE-2026-109619Leer el original ↗Investigación y guías prácticas
Herramientas PHP2Shell
Comprueba sitios públicos, revisa configuraciones y registros locales o encuentra herramientas abiertas. Cada resultado indica sus pruebas y límites.
01PHP2Shell en lenguaje sencillo
PHP es el motor de WordPress, Laravel y los plugins. Actualizar un plugin no actualiza PHP. Dos fallos de memoria pueden convertir la limpieza anómala de una petición en filtración o ejecución de código. El control público solo aporta indicios; el proveedor debe confirmar el runtime Web y su parche.
02¿Intento o intrusión exitosa?
Multipart extraño o una alerta WAF puede indicar un intento. OOM, SIGSEGV/SIGABRT y picos HTTP 500 también tienen causas normales. Procesos hijos PHP, conexiones, archivos o cuentas inesperados requieren investigación urgente. Una filtración de memoria puede no dejar webshell ni archivos; un análisis limpio no la descarta.
03Conserva pruebas antes de cambiar
Anota descubrimiento, dominio, instancia, runtime, síntomas y último estado fiable. Exporta registros originales con zona horaria, auditoría cloud e instantáneas autorizadas disponibles. Restringe copias y registra hashes. No envíes cookies, tokens ni datos de clientes a escáneres públicos. No borres logs ni archivos sospechosos antes de conservarlos.
04Lee Wiz y Calif con precisión
La investigación explica errores que sobreviven a una petición. CVE-2026-109618 demuestra RCE mod_php; la susceptibilidad FPM es por análisis de código, sin exploit FPM completo para ese CVE. CVE-2026-109619 confirma aparte una ruta FPM de upload-progress dependiente de la aplicación. Consulta cada GHSA para distinguir pruebas por SAPI.
05Cloudflare: también importa la respuesta
Cloudflare describe detección de transacción completa, combinando petición y respuesta del origen y bloqueando respuestas sospechosas antes de filtrar datos. Es útil sin shell. El despliegue histórico no garantiza tu cobertura: confirma reglas, ruta, exclusiones y eventos. Origen directo y hosts sin proxy siguen necesitando parche.