Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Ghost-CMS-Code-Injection-Audit-CVE-2026-26980 — Los sitios web de Ghost CMS desactualizados que han sido comprometidos por CVE-2026-26980 pueden sufrir inyección de código de spam en las páginas. Utilice esto para limpiar y editar en masa los campos de inyección de código. | Kitploit
Herramientas/GitHubGitHub/kulik-labs-development/ghost-cms-code-injection-audit-cve-2026-26980
Herramientas DefensivasEscáneres de VulnerabilidadesAnálisis de CódigoSeguridad WebMala ConfiguraciónRespuesta a Incidentes
GitHubkulik-labs-development/ghost-cms-code-injection-audit-cve-2026-26980

Ghost-CMS-Code-Injection-Audit-CVE-2026-26980

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →

Los sitios web de Ghost CMS desactualizados que han sido comprometidos por CVE-2026-26980 pueden sufrir inyección de código de spam en las páginas. Utilice esto para limpiar y editar en masa los campos de inyección de código.

Ver Repositorio
21hace 2 mesesAún no revisado
Compartir

Limpiador de inyección de código para Ghost CMS

Elimina el código inyectado de cada entrada y página de un sitio web Ghost CMS mediante la Admin API.

Utilícelo para limpiar un sitio Ghost comprometido — por ejemplo, uno afectado por la vulnerabilidad de inyección de código CVE-2026-26980 — eliminando las etiquetas <script> introducidas por el atacante y otro marcado inyectado de los campos de inyección de código Header y Footer de cada entrada y cada página.

Es seguro por defecto (primero simulación, luego aplicación) y estrictamente delimitado: solo borra esos dos campos por entrada. La inyección de código de todo el sitio (Ghost Admin → Settings → Code injection), el contenido de las entradas y todos los demás ajustes nunca se tocan.


Requisitos

  • Python 3.8+
  • Dos paquetes pip (consulte requirements.txt):
pip install -r requirements.txt

Configuración

1. Obtén tu clave de API de administrador

  1. Inicia sesión en Ghost Admin
  2. Ve a Settings → Integrations
  3. Haz clic en Add custom integration, dale un nombre (por ejemplo, "Cleaner")
  4. Copia la Admin API Key — tiene este aspecto:
    6478abc123def456:8f9e0d1c2b3a4567890abcdef1234567890abcdef1234567890abcdef12345678
    

2. Crear el archivo de configuración

Cree un archivo llamado ghost_cleaner_config.json en el mismo directorio que el script:

{
  "ghost_url": "https://yourdomain.com",
  "admin_api_key": "YOUR_KEY_ID:YOUR_KEY_SECRET"
}

Si omites este paso, el script creará un archivo de configuración de ejemplo para ti en la primera ejecución y saldrá — solo tienes que rellenarlo y volver a ejecutarlo.


Uso

Dry-run (seguro, no se escriben cambios)

Ejecuta siempre esto primero para ver exactamente qué se borraría antes de tocar nada:

python3 ghost_injection_cleaner.py

Ejemplo de salida:

  Ghost Injection Remover
  Mode  : DRY-RUN (read-only)
  Target: https://yourdomain.com

  NOTE: /ghost/api/admin/settings/ (site-wide injection) is
        never read or written by this script.

============================================================
  POSTS
============================================================
  47 posts fetched.

  ✦  'My First Post'
     HEAD: '<script>(function(){var _x="...obfuscated..."</script>'
      🔍  DRY-RUN - would be cleared.

============================================================
  PAGES
============================================================
  6 pages fetched.

============================================================
  SUMMARY
============================================================
  Would clear  : 1 posts/pages
  Already clean: 52 posts/pages

  Re-run with --apply to commit these changes.

Aplicar cambios

Una vez que estés satisfecho con la salida del dry-run, ejecuta con --apply. Se te pedirá confirmación:

python3 ghost_injection_cleaner.py --apply
  Type YES to confirm changes to posts and pages: YES
  ...
  ✅  Cleared.

Usar una ruta de archivo de configuración personalizada

python3 ghost_injection_cleaner.py --config /path/to/my_config.json

Qué borra

Para cada entrada y página, establece ambos campos en null:

CampoUbicación en el editor de Ghost
codeinjection_headConfiguración de la entrada/página → Inyección de código → Encabezado
codeinjection_footConfiguración de la entrada/página → Inyección de código → Pie de página

Las entradas y páginas que no tienen inyección se omiten silenciosamente.


Qué NO modifica

  • Inyección de encabezado/pie de página a nivel de todo el sitio — Ghost Admin → Settings → Code injection
  • Contenido de entradas/páginas (el cuerpo real de tus entradas)
  • Archivos del tema
  • Cualquier otra configuración de Ghost distinta de los dos campos enumerados arriba

Solución de problemas

Missing dependencies Ejecuta pip install -r requirements.txt y vuelve a intentarlo.

admin_api_key must be in 'id:secret' format Asegúrate de que tu clave tenga dos puntos en el medio. Debería verse como dos cadenas hexadecimales separadas por :. Cópiala directamente desde Ghost Admin sin añadir espacios.

ERROR: Ghost API returned HTTP 401 Tu clave de Admin API puede ser incorrecta o la integración puede haber sido eliminada. Vuelve a Ghost Admin → Settings → Integrations y verifícalo.

ConnectionError o tiempo de espera agotado Comprueba que ghost_url en tu configuración sea correcta y que el sitio sea accesible desde la máquina en la que ejecutas el script.

El script se queda colgado en un sitio grande Cada página de 50 entradas genera un JWT nuevo y espera a la API. Esto es normal — dale un minuto.

Descargar herramienta