¿Cómo identificar una superficie de ataque?

| Última modificación: 13 de mayo de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Sabes cómo identificar una superficie de ataque y para qué se ejecuta este proceso en ciberseguridad?

La recolección de información es la fase inicial de cualquier ciberataque. Por lo tanto, todos los tests de intrusión empiezan del mismo modo. Tanto en pentesting web como en pentesting de sistemas, reunir información sobre el objetivo de la auditoría es el primer paso y tiene una gran relevancia en el resto del proceso.

El propósito de la recolección de información sobre el sistema o la aplicación web es determinar cuál es su superficie de ataque. En el caso de un sistema, la superficie de ataque son los dispositivos vulnerables conectados a una red; en el caso de una aplicación web, la superficie de ataque son todos los subdominios y subdirectorios relacionados con la página web.

En este post, hablaremos sobre métodos para ejecutar esta fase de un pentesting, tanto en sistemas como en aplicaciones web. A continuación, te explicaremos cómo identificar una superficie de ataque en ciberseguridad.

¿Cómo identificar una superficie de ataque?

Como lo decíamos en la introducción, para aprender cómo identificar una superficie de ataque es necesario diferenciar entre el caso de un sistema informático y el de una aplicación web. La superficie de ataque es el conjunto de elementos que pueden tener vulnerabilidades y, por lo tanto, varían en ambos tipos de tecnologías.

Superficie de ataque en sistemas

La superficie de ataque de un sistema se encuentra por medio de un escaneo de red. Los escaneos de red permiten enumerar todos los dispositivos conectados a un entorno y qué tipo de tecnología utilizan. Las vulnerabilidades se pueden encontrar en los softwares y hardwares de estos equipos y pueden explotarse de diferentes formas.

🔴 ¿Quieres entrar de lleno a la Ciberseguridad? 🔴

Descubre el Ciberseguridad Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp en Ciberseguridad por una semana

Una de las herramientas más utilizadas para reconocer la superficie de ataque de un sistema es Nmap, que permite hacer este tipo de escaneos e, incluso, identificar algunas vulnerabilidades.

Superficie de ataque en aplicaciones web

La superficie de ataque en aplicaciones web está compuesta por todos los subdominios y subdirectorios relacionados con la página web. Los subdominios son, básicamente, aplicaciones subordinadas que pueden ser totalmente distintas a la página original. En la estructura de la URL, los subdominios se identifican por llevar el nombre antes del nombre de la aplicación, es decir, de la siguiente manera:

subdominio.ejemplo.com

Por su parte, los subdirectorios son carpetas que se encuentran dentro de la aplicación original, de la siguiente forma:

ejemplo.com/subdirectorio/tema

Los subdominios y subdirectorios constituyen la superficie de ataque de una aplicación, ya que en ellos se pueden encontrar la mayor cantidad de vulnerabilidades informáticas. Por eso, para saber cómo identificar la superficie de ataque de una aplicación web, es necesario saber hallar estas direcciones URL.

Crawling

La primera técnica que veremos, sobre cómo identificar una superficie de ataque en aplicaciones web será el crawling.

El crawling consiste en automatizar la búsqueda de subdirectorios de una aplicación. Para ello, un programa visita todos los links internos de una página y la explora por completo. Así pues, el resultado es una lista con todos los subdirectorios activos de la aplicación. En ellos, el pentester puede escanear vulnerabilidades o buscar información confidencial.

Algunas herramientas para hacer crawling son:

Fuzzing

El fuzzing consiste en utilizar técnicas de fuerza bruta para encontrar todos los subdominios de una aplicación. Es altamente efectiva, pero debe realizarse con la autorización del propietario del dominio. El fuzzing web o fuerza bruta de dominios consiste en automatizar pruebas de ensayo y error para encontrar los valores correctos de una cadena de datos, que en este caso sería el nombre del subdominio de la aplicación.

Los web fuzzers optimizan el tiempo de funcionamiento por medio del uso de diccionarios, que son listas de palabras comúnmente asignadas para subdominios. Para acceder a más diccionarios como estos, puedes ingresar al repositorio de GitHub de SecLists.

MassDNS

MassDNS es una herramienta importante para aprender cómo identificar una superficie de ataque de una aplicación web. MassDNS es un web fuzzer de alto rendimiento que puede resolver 350.000 nombres de subdominios por segundo. Por medio de este programa, puedes utilizar más de 990 servidores DNS para resolver nombres de dominio y reconocer la superficie de ataque de una aplicación.

Además, cuenta con diccionarios de palabras con más de 100.000 términos comúnmente utilizados en subdominios de páginas web. Por eso, es la herramienta más potente para encontrar estas direcciones URL por medio de fuerza bruta.

Ya hemos visto cómo identificar una superficie de ataque de un sistema y una aplicación web. Si quieres aprender más sobre técnicas de hacking ético, en KeepCoding tenemos un curso intensivo ideal para ti. Entra a nuestro Ciberseguridad Full Stack Bootcamp y especialízate en tan solo 7 meses. Aprende sobre temas como red team/blue team, análisis de malware, criptografía y mucho más. ¡No sigas esperando e inscríbete ahora!

Carlos Cilleruelo

CEO and co-founder of Byron Labs & Coordinador del Bootcamp en Ciberseguridad.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Ciberseguridad

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado