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
citrix-netscaler-triage — Herramienta de triaje forense para dispositivos Citrix NetScaler, que incluye un escáner de IOC basado en Dissect para webshells, timestomping y binarios sospechosos, además de un escáner remoto de versiones que identifica vulnerabilidades CVE. | Kitploit
Herramientas/GitHubGitHub/fox-it/citrix-netscaler-triage
Gestión de Indicadores de Compromiso (IOC)Escáneres de VulnerabilidadesSeguridad WebSeguridad de RedesForensia DigitalRespuesta a Incidentes
GitHubfox-it/citrix-netscaler-triage

citrix-netscaler-triage

Herramienta de triaje forense para dispositivos Citrix NetScaler, que incluye un escáner de IOC basado en Dissect para webshells, timestomping y binarios sospechosos, además de un escáner remoto de versiones que identifica vulnerabilidades CVE.

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 →
Ver RepositorioSitio web
7419136hace 13 díasRevisado por Kitploit
Compartir

Citrix NetScaler Triage

Este repositorio contiene scripts de triaje para dispositivos Citrix NetScaler:

  • iocitrix.py -- un script de Dissect para el triaje de una imagen/objetivo de Citrix NetScaler.
  • scan-citrix-netscaler-version.py -- Escanea y determina la versión de un dispositivo NetScaler a través de HTTP(s).

scan-citrix-netscaler-version.py

Puedes usar este script para escanear y determinar la versión de un dispositivo Citrix NetScaler a través de HTTP(s). También determinará si el NetScaler es vulnerable a CVE específicos según la versión.

Instalación de scan-citrix-netscaler-version.py

Usa los siguientes pasos si estás usando pip:

  1. git clone https://github.com/fox-it/citrix-netscaler-triage.git
  2. cd citrix-netscaler-triage
  3. pip install httpx
  4. python3 scan-citrix-netscaler-version.py --help

En caso de usar uv, puedes ejecutar el script directamente usando:

  1. uv run https://raw.githubusercontent.com/fox-it/citrix-netscaler-triage/refs/heads/main/scan-citrix-netscaler-version.py

Ejemplo de uso:

$ python3 scan-citrix-netscaler-version.py 192.168.1.10 192.168.1.12
192.168.1.10 (*.local.domain) is running Citrix NetScaler version 13.1-51.15 (VULNERABLE)
192.168.1.12 (*.local.domain) is running Citrix NetScaler version 12.1-55.330 (NOT VULNERABLE)

O obtener los resultados en JSON:

$ python3 scan-citrix-netscaler-version.py https://192.168.1.11 --json | jq
{
  "scanned_at": "2025-09-03T23:11:36.864228+00:00",
  "target": "https://192.168.1.11",
  "tls_names": "my-first-netscaler.local",
  "rdx_en_stamp": 1702886392,
  "rdx_en_dt": "2023-12-18T07:59:52+00:00",
  "version": "12.1-55.302",
  "error": null,
  "vulnerable": {
    "CVE-2025-5349": true,
    "CVE-2025-5777": true,
    "CVE-2025-6543": false,
    "CVE-2025-7775": true,
    "CVE-2025-7776": true,
    "CVE-2025-8424": true
  },
  "is_vulnerable": true
}

También es posible limitar las comprobaciones del estado de vulnerabilidad a CVE específicos usando el flag --cve:

$ python3 scan-citrix-netscaler-version.py https://192.168.1.11 --cve CVE-2025-6543 --json | jq
{
  "scanned_at": "2025-09-03T23:16:36.573016+00:00",
  "target": "https://192.168.1.11",
  "tls_names": "my-first-netscaler.local",
  "rdx_en_stamp": 1702886392,
  "rdx_en_dt": "2023-12-18T07:59:52+00:00",
  "version": "12.1-55.302",
  "error": null,
  "vulnerable": {
    "CVE-2025-6543": false
  },
  "is_vulnerable": false
}

Para obtener los resultados en formato CSV, simplemente usa el flag --csv. Para más opciones consulta --help.

iocitrix.py

Puedes usar iocitrix.py para comprobar Indicadores de Compromiso conocidos en un objetivo de Dissect de NetScaler. Comprueba lo siguiente:

  • Cadenas conocidas usadas en webshells
  • Archivos con timestamps manipulados
  • Cronjobs sospechosos
  • Binarios SUID desconocidos

Ten en cuenta que este script está pensado para ejecutarse sobre imágenes forenses de disco de dispositivos Citrix NetScaler y no sobre el dispositivo en sí. Consulta también la sección Creación de imágenes de disco de Citrix NetScaler sobre cómo crear imágenes forenses de disco de tu Citrix NetScaler.

Asegúrate de tener la última versión de Dissect; el soporte para Citrix NetScaler se añadió en este PR: https://github.com/fox-it/dissect.target/pull/357

Aviso: Aunque esta herramienta busca la precisión, es posible que produzca falsos positivos o falsos negativos. Se recomienda a los usuarios que contrasten los resultados y usen su propio criterio antes de tomar cualquier decisión basada en la salida de esta herramienta.

Instalación de iocitrix.py

Usa los siguientes pasos:

  1. git clone https://github.com/fox-it/citrix-netscaler-triage.git
  2. cd citrix-netscaler-triage
  3. pip install -r requirements.txt
  4. pip install --upgrade --pre dissect.volume dissect.target

Ten en cuenta que el paso 4 imprimirá el siguiente error, pero puedes ignorarlo:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.

A continuación puedes ejecutar iocitrix.py <TARGETS> para iniciar una comprobación de IOC contra una o más imágenes forenses. El script acepta cualquier entrada que dissect pueda leer como un Target, como un .VMDK o una imagen de disco en bruto. A continuación se proporcionan algunos ejemplos.

python3 iocitrix.py image.vmx
python3 iocitrix.py image.vmdk

Si también has creado una imagen forense del disco RAM, puedes utilizar iocitrix.py para incorporar datos volátiles en su triaje de la siguiente manera:

python3 iocitrix.py md0.img+image.vmx
python3 iocitrix.py md0.img+image.vmdk
python3 iocitrix.py md0.img+da0.img

El signo + (más) cargará las dos imágenes de disco como un único Target de Dissect.

Creación de imágenes de disco de Citrix NetScaler

Un Citrix NetScaler expone dos dispositivos de bloque importantes que pueden ser imageados para análisis forense offline. Estos archivos de dispositivo de bloque se pueden encontrar en las siguientes rutas:

  • /dev/md0: El disco que contiene el directorio raíz (/). Este es un disco RAM
  • /dev/da0 o /dev/ada0: El disco que contiene los directorios /var y /flash. Este es un disco persistente.

El directorio raíz (/) de Citrix NetScaler es un disco RAM, lo que significa que es un disco volátil. Este disco se puede encontrar en /dev/md0 cuando el NetScaler está encendido y en funcionamiento, y no estará disponible cuando el NetScaler esté apagado. Los directorios /var y /flash residen en el disco /dev/da0 o /dev/ada0 como dos particiones separadas y son persistentes.

Los siguientes comandos se pueden usar en una máquina Linux local para crear copias de disco de tu NetScaler a través de SSH. Si estás usando Windows, puedes usar WSL (wsl.exe) o Git Bash (git-bash.exe) para usar los mismos comandos. Evita usar comandos nativos de PowerShell, ya que PowerShell no maneja correctamente la transmisión de datos binarios en bruto a través de SSH.

1. Comprueba los tamaños de imagen esperados comprobando los tamaños de disco en el NetScaler.

Esto mostrará los discos disponibles, incluyendo si tu disco persistente es /dev/da0 o /dev/ada0. Luego comprueba el tamaño exacto:

local ~ $ ssh nsroot@<YOUR-NETSCALER-IP> shell diskinfo /dev/da0
local ~ $ ssh nsroot@<YOUR-NETSCALER-IP> shell diskinfo /dev/ada0

Para el disco RAM:

local ~ $ ssh nsroot@<YOUR-NETSCALER-IP> shell diskinfo /dev/md0

El da0.img o ada0.img resultante tendrá aproximadamente el tamaño del dispositivo respectivo, y md0.img aproximadamente el tamaño de /dev/md0.

2. Comprueba el espacio en disco de tu sistema local

local ~ $ df -h .

Asegúrate de que haya suficiente espacio disponible para alojar los archivos de imagen de disco, cuyos tamaños se calcularon en el paso anterior.

3. Crea una imagen de disco del disco /dev/da0 o /dev/ada0 en tu máquina local

Dependiendo del nombre de tu disco, ejecuta

local ~ $ ssh nsroot@<YOUR-NETSCALER-IP> shell dd if=/dev/da0 bs=10M | tail -c +7 | head -c -6 > da0.img

o

local ~ $ ssh nsroot@<YOUR-NETSCALER-IP> shell dd if=/dev/ada0 bs=10M | tail -c +7 | head -c -6 > ada0.img

Ten en cuenta que esto puede tardar un tiempo en completarse. No se muestra ningún progreso al usar dd. Se recomienda esperar hasta recuperar el control del prompt. Esto es un indicio de que dd ha terminado.

Descargar herramienta