(https://i.postimg.cc/jqmGzq8D/Cloudflare.png) (https://postimg.cc/hh8ynnRn)
Existen webs que, entre los servicios que brindan, ofrece extraer la IP real de un sitio, aun protegido por Cloudflare.
De cualquier modo, el desafío radica precisamente en que, la obtención real de la IP de un sitio web sobre internet, es la base para establecer ataques de Denegación de Sevicios (DDoS).
Y en efecto, numerosos sitios web que intentan ocultarse con Cloudflare, creen estar seguros porque su dirección IP está protegida por dicho servicio.
Pero, cómo es que se hace?
En mi experiencia personal, he visto realizarlo con Shodan. Digo que lo he visto, porque no lo he realizado; pero sí lo he presenciado en vivo en conferencias, con varios métodos, y de cómo usando esa herramienta [Shodan] se extrae la IP real del sitio.
Aquí les va para los interesados, los distintos métodos a día de hoy para extraer una IP real de un sitio.
Panorama general y fundamentos
Escáner de Internet
Internet, con sus 3.706.452.992 direcciones IPv4 públicas (un conjunto infinito de direcciones IP públicas), es escaneado constantemente por diversas herramientas y servicios, incluyendo investigadores de seguridad, actores de amenazas y sistemas automatizados.
Para identificar un servidor oculto tras Cloudflare, se debe encontrar una característica única del sitio web que aloja. Este identificador único puede utilizarse para activar los escáneres de Internet y detectar la dirección IP del servidor. Es como buscar una aguja en un pajar enorme: ya conocemos su contenido, pero necesitamos un punto de partida preciso.
Maneras de hacerlo.
No es nada nuevo ni mágico. Simplemente con los servicios y el cómo funciona internet. Diagrama que lo visualiza:
Ejemplo de cómo suele lucir la configuración de Cloudflare:
(https://i.postimg.cc/kG5nWP7x/imagen-1.png) (https://postimg.cc/2bPRfJb6)
Proxy DNS de Cloudflare
Información sobre cómo Cloudflare oculta su dirección IP: Registro DNS proxy
Al usar como proxy registros DNS específicos a través de Cloudflare (en concreto, registros A, AAAA o CNAME), las consultas DNS para estos se resolverán en direcciones IP anycast de Cloudflare en lugar de en su destino DNS original. Esto significa que todas las solicitudes dirigidas a nombres de host proxy se dirigirán primero a Cloudflare y luego se reenviarán a su servidor de origen.
1. Hash de favicon
¿Alguna vez se ha preguntado cómo identificar el servidor que protege Cloudflare?
Los favicons, esos pequeños logotipos de sitios web en las pestañas de su navegador, son la clave. Los sitios web suelen usar favicons únicos, lo que los convierte en una valiosa herramienta de identificación.
El truco está en el cálculo del hash de favicon (un código único derivado del contenido del favicon), herramientas como Censys y Shodan pueden ayudarle a localizar servidores que comparten ese mismo favicon. Esta técnica evita el enmascaramiento de Cloudflare y revela el servidor de origen.
(https://i.postimg.cc/Qx1X5m3Y/imagen-2.png) (https://postimg.cc/1fRh1p4D)
Utilice esta información para buscar el servidor en Shodan usando su favicon único.
2. Hash de banner o título
Al igual que los hashes de favicon, los hashes de banner y título pueden ser indexados y escaneados por los motores de búsqueda de internet. Las páginas HTML siempre incluyen un título y un banner, lo que proporciona posibles puntos de entrada para la identificación.
Por ejemplo, los servidores Nginx suelen mostrar un título predeterminado. Para identificar estos servidores con Censys, puede utilizar la siguiente consulta:
(https://i.postimg.cc/8522z8jp/imagen-3.png) (https://postimages.org/)
(https://i.postimg.cc/VLRV30BL/imagen-4.png) (https://postimg.cc/TpK0bw4Z)
3. Certificado TLS
Los certificados TLS actúan como huellas digitales para los servidores. Cada uno es único, lo que los convierte en una herramienta poderosa para identificar el servidor de origen que busca. Los sitios web utilizan TLS para proteger las conexiones, y herramientas como crt.sh pueden revelar certificados pasados y presentes asociados a un dominio específico.
Una vez que tenga la huella digital del certificado TLS, puede utilizar motores de búsqueda como Censys, Fofa, ZoomEye o Shodan. Estas plataformas pueden identificar servidores que comparten el mismo certificado TLS, lo que podría guiarle hacia su objetivo.
Pero el proceso no termina ahí. Los certificados TLS a veces contienen "valores codificados": fragmentos de datos incrustados en el certificado. Estos valores suelen reutilizarse en diferentes servidores, lo que le permite adaptar su búsqueda y, potencialmente, descubrir sistemas relacionados.
Como estas consultas:
(https://i.postimg.cc/SxH75m5x/imagen-5.png) (https://postimages.org/)
4. Registro DNS histórico
Cloudflare funciona como un proxy DNS. A veces, cuando un sitio web aparece por primera vez en internet, puede que no utilice inicialmente Cloudflare como proxy DNS. Por lo tanto, es posible que aún haya registros DNS antiguos en algún lugar de internet que aún apunten al servidor de origen (dirección IP).
Puedes usar herramientas como Security Trail para buscar DNS históricos; estas almacenan y rastrean todos los DNS en internet.
Nota: Es posible que cambien la dirección IP original después de configurar Cloudflare, por lo que, incluso si encuentras una dirección IP histórica que coincida con el dominio, es posible que no pueda verificarla.
5. El subdominio podría apuntar a la dirección IP del servidor de origen
A veces, el subdominio podría apuntar a la dirección IP del servidor de origen. En OSINT, ya se ha reconocido todo el dominio con herramientas como dnsreccon.
6. El análisis del encabezado de la política de seguridad de contenido muestra la dirección IP del servidor de origen
(https://i.postimg.cc/8P96ktby/imagen-6.png) (https://postimages.org/)
7. Medio: Usar CloudFlair (que utiliza muchos scripts para encontrar el servidor de origen)
Se accede a Censys o Shodan para registrar una cuenta, obtener una clave API y un secreto API, iniciar el script y CloudFlair ejecutará varios scripts.
El comando se ve así:
(https://i.postimg.cc/2695cScH/imagen-7.png) (https://postimages.org/)
El resultado se vería así:
(https://i.postimg.cc/02DwQ7HP/imagen-8.png) (https://postimages.org/)
8. Caso curioso: Puedes usar la Búsqueda de Google para encontrar la dirección IP de origen
Antes, a veces simplemente buscaba el dominio en Google, algo así como "ejemplo.com", y a veces la dirección IP aparecía en el resultado.
9. Verificar la dirección IP de un dominio con Curl
Es inteligente verificar si el servidor de origen es el propietario del dominio.
Para una sola dirección IP, aloja un solo dominio.
(https://i.postimg.cc/6Q3qdZz7/imagen-9.png) (https://postimages.org/)
Para una dirección IP que sirve a varios dominios (dirección IP compartida), este TTP utiliza la Indicación de Nombre de Servidor (SNI) para ejecutar varios sitios web HTTPS en una sola dirección IP.
https://www.cloudflare.com/learning/ssl/what-is-sni/
SNI permite tener certificados únicos para cada dominio (es decir, varios certificados) mientras esos dominios comparten la misma IP. Los certificados multidominio, por otro lado, simplemente usan un certificado para varios dominios, lo que a su vez significa una IP para varios dominios.
cURL ofrece un argumento --resolve para asignar explícitamente un nombre de dominio y un puerto a una dirección IP en lugar de usar la búsqueda DNS tradicional. Debe incluir el puerto y el nombre de dominio completo.
Si el sitio web aún está alojado en ese servidor, devolverá el contenido del sitio web.
Conclusión
Hay muchísimas maneras de hacer cualquier cosa. Depende de tu creatividad y de tu comprensión de los conceptos básicos. Estos consejos y trucos siempre han funcionado.
Fuente:
Zeroska
https://medium.com/@zeroska/eng-osint-techniques-how-to-find-a-server-behind-cloudflare-cfc48a1c56a0