# cdncheck: identificar infraestructura de CDN y WAF antes de escanear

> Cómo instalar y ejecutar cdncheck, y por qué Tandera resuelve la pertenencia a CDN en discovery antes de agendar cualquier escaneo activo.

`cdncheck` te dice si una IP pertenece a una CDN, un WAF o un proveedor de nube. Suena menor. Es la diferencia entre escanear la infraestructura de tu cliente y escanear la de Cloudflare.

## Instalación

```bash
go install -v github.com/projectdiscovery/cdncheck/cmd/cdncheck@latest
```

## Comandos principales

```bash
# clasifica una lista de IPs
cdncheck -i ips.txt

# solo lo que está detrás de una CDN
cdncheck -i ips.txt -resp -mcdn

# excluye rangos de CDN antes de un escaneo activo
cdncheck -i ips.txt -exclude > direct-ips.txt

# JSON
cdncheck -i ips.txt -json -o cdn.jsonl
```

## Salida

```json
{"input":"104.16.0.1","cdn":true,"cdn_name":"cloudflare","waf":false,"cloud":false}
```

## Dónde encaja en Tandera

cdncheck se ejecuta en la fase de **discovery** de tres flujos, incluido `recon_cloud_enum`. Se sitúa deliberadamente temprano — antes de agendar cualquier escaneo activo — porque su salida cambia lo que las fases posteriores tienen permitido tocar.

Una IP clasificada como propiedad de CDN no es un activo del cliente. Tandera usa esa clasificación al aplicar el techo de riesgo de un flujo, de modo que el escaneo activo de `recon_web_full` no apunte `nmap` o `masscan` a un rango de proveedor compartido.

## Uso en un pentest

**Esto es un control legal, no una optimización.** Hacer port scan a un rango de Cloudflare o AWS es escanear a un tercero que no te autorizó. Ejecuta cdncheck antes de cualquier fase activa y excluye lo que marque.

**Una CDN por delante significa que tus findings pueden no ser del origen.** Las cabeceras, la configuración TLS y las páginas de error que observas pueden pertenecer al edge. Anótalo en el informe en lugar de atribuir el comportamiento del edge al servidor del cliente.

**Una clasificación de WAF cambia tu metodología, y el cliente debe saberlo.** Si las pruebas ocurrieron a través de un WAF, dilo — de lo contrario el informe implica un nivel de cobertura que el engagement no tuvo.

---

Canonical: https://tandera.io/es/tools/cdncheck
This page as markdown: https://tandera.io/es/tools/cdncheck.md
Index for agents: https://tandera.io/llms.txt

Every page here is also available as markdown: append `.md` to the path (e.g. `/recon.md`, `/index.md` for this homepage, `/blog/<slug>.md`), or request the canonical path with `Accept: text/markdown`.
