Si le apasiona el mundo del pentesting, este curso le permite aprender cómo hackear páginas/aplicaciones web desde cero a niveles más avanzados, al igual que lo haría un atacante real. No se necesita ningún conocimiento previo en la materia.
En primer lugar, realizaremos las prácticas bajo un entorno controlado e instalaremos todos los programas necesarios.
Después, explicaremos el funcionamiento de un sitio web y cómo podemos llegar a lograr el control total de este.
Una vez comprendidos estos aspectos básicos de un sitio web, comenzaremos con el núcleo del curso. El núcleo del curso se desarrolla en tres partes principales:
1. Recopilación de información: Se trata de la primera fase de un ataque. En ella se intenta recolectar toda la información posible acerca del objetivo como, por ejemplo: tecnologías, información sobre el DNS, sitios web en el mismo servidor, subdominios... Esta información permite a un atacante hacerse una imagen previa de la estructura, versiones usadas... del objetivo y perfilar su ataque, aumentando las probabilidades de éxito.
2. Vulnerabilidades: En esta sección aprenderá como identificar, explotar y solucionar las vulnerabilidades más comunes e importantes. Se explicará cada una de estas y qué nos permiten, su explotación desde un nivel básico a uno más avanzado y finalmente veremos el código que las causa junto con cómo solucionarlas. Estas son las vulnerabilidades cubiertas en el curso:
Carga de archivos: Permite a un atacante subir cualquier archivo en el servidor web objetivo.
Ejecución de código: Permite a un atacante la ejecución de código arbitrario en el sistema operativo del servidor web objetivo.
Inclusión local y remota de archivos: Permiten a un atacante ejecutar código malicioso y/o llevar acabo robo de información mediante la manipulación de parámetros vulnerables en el objetivo. Las LFI afectan ficheros a nivel local del servidor y las RFI permiten la carga de ficheros remotos.
Inyección SQL: Permite a un atacante inyectar consultas SQL a través de las entradas de datos de una aplicación, esto supone: extraer/modificar/eliminar información y/o comprometer cuentas administrativas.
XSS: Permiten a un atacante ejecutar cualquier código JavaScript, esto supone: acceder a todo tipo de información sensible almacenada en la parte del cliente. Existen tres categorías diferentes de XSS: almacenado o persistente, reflejado y basado en el DOM.
CSRF: Permite a un atacante iniciar sesión en otras cuentas de usuarios sin conocer su contraseña.
Ataques de fuerza bruta y diccionario: Permiten a un atacante adivinar contraseñas de inicio de sesión del objetivo.
3. Post-explotación: Este capítulo describirá qué puede hacer con el acceso que obtuvo gracias a las vulnerabilidades anteriores, como, por ejemplo: interactuar con una shell inversa, acceder a otros sitios web en el mismo servidor, ejecutar comandos de la shell, eludir privilegios ilimitados, descargar/subir archivos en el servidor web objetivo…
Cuando termine el curso, podrá lanzar ataques y probar la seguridad de cualquier sitio/aplicación web, pero no solo eso, también podrá corregir estas vulnerabilidades y protegerse.
NOTA: Este curso se creó solo con fines educativos y todos los ataques se inician en un entorno controlado o contra dispositivos con autorización.