Qué es un CTF (Capture The Flag) y cómo empezar

Qué es un CTF (Capture The Flag) y cómo empezar

Qué es un CTF (Capture The Flag) en ciberseguridad

Un CTF (Capture The Flag) es una competición de ciberseguridad en la que los participantes resuelven retos técnicos para encontrar una cadena de texto oculta llamada flag, y con eso demuestran sus habilidades de hacking en un entorno legal y controlado. Para mí es el laboratorio de práctica más divertido que existe para aprender hacking real desde cero, y también el más efectivo.

Si alguna vez te has preguntado cómo aprenden los hackers sin acabar en la cárcel, los CTF son buena parte de la respuesta. Desde estudiantes de instituto hasta profesionales de seguridad ofensiva con décadas de experiencia compiten en estas pruebas. Hay categorías y plataformas pensadas para gente que no sabe nada todavía, así que el nivel de entrada es más bajo de lo que parece.

¿Qué es una «flag»?

La flag (bandera) es la prueba de que has resuelto el reto. Suele ser una cadena de texto con un formato fijo, por ejemplo:

flag{W3lc0m3_t0_CTF_w0rld!}

Cuando la introduces en la plataforma, el sistema te asigna los puntos del reto. Sin flag no hay puntos, y el objetivo es acumular más que el resto de participantes antes de que acabe el tiempo.

Encontrar la flag puede requerir explotar una vulnerabilidad web, descifrar un mensaje cifrado, analizar un archivo de memoria, revertir un binario compilado o simplemente buscar información pública en internet. Cada reto es un puzzle distinto, y eso es lo que engancha.

Modalidades: Jeopardy vs Attack-Defense

Jeopardy (el más común para principiantes)

Es el formato más extendido. Los organizadores publican una serie de retos independientes clasificados por categoría y dificultad, cada uno con su flag que conseguir. Puedes elegir por dónde empezar y avanzar a tu ritmo, lo que lo hace perfecto para principiantes: te centras en las categorías que más te gusten o en las que ya tengas nivel.

Attack-Defense

Formato más avanzado. Cada equipo recibe un servidor con servicios vulnerables que debe defender mientras ataca simultáneamente los servidores del resto de equipos. Requiere trabajo en equipo coordinado, conocimientos de redes y habilidades tanto ofensivas como defensivas. Es habitual en competiciones presenciales de nivel alto como DEFCON CTF.

Categorías de retos en un CTF

La mayoría de CTFs en formato Jeopardy dividen los retos en estas categorías:

Categoría Qué se practica Herramienta típica
Web SQLi, XSS, IDOR, SSRF, Path Traversal, vulnerabilidades OWASP Top 10 Burp Suite, curl, navegador + DevTools
Pwn / Binario Explotación de binarios: buffer overflow, format strings, ROP chains pwntools, GDB + peda/pwndbg
Criptografía Cifrados clásicos y modernos, RSA débil, XOR, hash cracking Python (PyCryptodome), CyberChef, hashcat
Forense Análisis de capturas de red, imágenes de disco, volcados de memoria, metadatos Wireshark, Autopsy, Volatility, exiftool
OSINT Búsqueda de información pública en internet: redes sociales, registros, imágenes Google Dorks, OSINT Framework, Maltego
Reversing Ingeniería inversa de ejecutables: entender qué hace un programa sin tener el código fuente Ghidra, IDA Free, radare2, strings
Misc Todo lo demás: esteganografía, scripting, puzzles de lógica, morse, QR… stegsolve, CyberChef, Python

Como principiante, empieza por Web y OSINT: piden menos conocimiento previo de bajo nivel y la curva de aprendizaje es más suave al inicio.

Plataformas para empezar con CTFs

picoCTF (Carnegie Mellon University)

La competición y plataforma de práctica más recomendada para comenzar desde cero. La creó la Carnegie Mellon University, tiene más de 600.000 usuarios registrados y se la considera la mayor competición de hacking educativa del mundo para estudiantes. Sus retos permanentes (picoPractice) están ordenados por dificultad y cubren todas las categorías. Solo necesitas un PC con conexión a internet.

La plataforma está disponible en picoctf.org. Desde mayo de 2026 el proyecto se ha integrado en la CyLab Security Academy de CMU; los retos y el progreso histórico siguen disponibles.

«There is no standardized cybersecurity education, so there is a need for this contact.» — Megan Kearns, Project Manager de picoCTF (Carnegie Mellon University). Fuente: CMU News, junio 2024.

TryHackMe

Plataforma de aprendizaje guiado con rooms temáticas (habitaciones de práctica) que te llevan de la mano por cada concepto. Tiene una ruta específica para principiantes absolutos (Pre-Security y Jr Penetration Tester) y muchos CTFs integrados con pistas. Funciona en el navegador, sin instalación, y es de las mejores opciones si buscas estructura junto con práctica libre. Más info en nuestra guía sobre mejores plataformas para practicar hacking.

Hack The Box (HTB)

La plataforma de referencia para hacking avanzado. Sus máquinas (servidores vulnerables que debes comprometer) son más difíciles que las de TryHackMe, aunque tiene una sección llamada Starting Point con máquinas guiadas para principiantes. También organiza CTFs propios de alta competición. Cuando lleves unos meses en TryHackMe o picoCTF, HTB es el siguiente escalón natural. Aprende más en nuestro curso de hacking web.

CTFtime.org: el calendario mundial de CTFs

CTFtime.org no es una plataforma de práctica, es el directorio y calendario de competiciones CTF de todo el mundo. Aquí ves qué competiciones hay próximamente, filtras por dificultad, consultas los writeups públicos de ediciones anteriores y miras el ranking global de equipos. Úsalo para encontrar tu próxima competición.

Cómo empezar en CTFs: guía paso a paso

Paso 1: Prepara tu entorno

Lo más recomendable es tener una máquina con Linux. Kali Linux y Parrot OS son las distribuciones preferidas porque vienen con cientos de herramientas de ciberseguridad preinstaladas. Puedes instalarlas en una máquina virtual (VirtualBox o VMware son gratuitos) sin tocar tu sistema operativo principal. Para empezar con CTFs web incluso puedes usar Windows o macOS con el navegador y algunas herramientas básicas.

Paso 2: Aprende los fundamentos mínimos

No necesitas saberlo todo antes de empezar, pero sí conviene tener soltura con:

  • Terminal de Linux (comandos básicos: ls, cd, cat, grep, chmod)
  • Python básico (para automatizar tareas y escribir scripts sencillos)
  • Conceptos básicos de redes (HTTP, TCP/IP, puertos)
  • Qué es una vulnerabilidad web (SQL injection, XSS)

No te preocupes si no dominas todo esto: los CTFs son la forma más eficiente de aprenderlo sobre la marcha. Nuestra guía completa de hacking web cubre lo que necesitas para empezar.

Paso 3: Regístrate en picoCTF o TryHackMe y resuelve tu primer reto

Entra en picoCTF, elige un reto de nivel «Easy» en la categoría que más te llame (empieza por Web o General Skills) e intenta resolverlo. No importa si tardas una hora. Pelearte con un reto, investigar, fallar y finalmente conseguir la flag es exactamente cómo se aprende hacking de verdad.

Paso 4: Herramientas básicas que debes conocer

  • CyberChef: navaja suiza para codificar/decodificar datos (Base64, hex, XOR, etc.)
  • Burp Suite Community: interceptar y modificar peticiones HTTP
  • Wireshark: analizar capturas de red .pcap
  • strings + file + binwalk: inspeccionar archivos desconocidos
  • Python 3: automatizar casi cualquier cosa
  • nmap: escanear puertos y servicios

Paso 5: Lee writeups después de cada reto

Un writeup es la solución detallada de un reto publicada por quien lo resolvió. Leer writeups de retos que no pudiste resolver (o incluso de los que sí) es una de las formas más potentes de aprender. CTFtime tiene miles de writeups de competiciones pasadas, y también puedes buscar en GitHub el nombre del CTF junto con «writeup».

Vídeo: Cómo empezar en CTFs desde cero (español)

El canal notMalafama publicó esta guía en español perfecta para principiantes que quieran dar sus primeros pasos en ciberseguridad usando CTFs:

Consejos para principiantes que quieren progresar

Únete a un equipo o comunidad

Los CTFs se pueden hacer en solitario, pero en equipo se aprende más rápido. Cada miembro puede especializarse en una categoría distinta (uno en web, otro en crypto, otro en forense) y compartir lo que va descubriendo. Busca equipos en Discord de TryHackMe, HTB o en servidores de ciberseguridad en español.

Documenta todo

Toma notas de cada reto: qué intentaste, qué funcionó, qué herramientas usaste y por qué. Con el tiempo esas notas se convierten en tu propio repositorio de técnicas. Herramientas como Obsidian o Cherry Tree son muy usadas para esto en la comunidad CTF.

No te rindas antes de tiempo

Hay retos diseñados para que tardes días. Si llevas más de una hora bloqueado, busca una pista en el chat del CTF o mira si alguien ha publicado un hint. Nadie aprende hacking mirando la solución sin intentarlo primero, pero tampoco hay mérito en frustrarse sin pedir ayuda.

Participa en competiciones reales

Cuando lleves unas semanas practicando, entra a una competición real en CTFtime (filtra por dificultad «beginner friendly»). Aunque acabes en los últimos puestos, competir en tiempo real con miles de personas de todo el mundo es una experiencia distinta a resolver retos sueltos. Y si consigues tu primera flag en competición, ese subidón no se olvida.

Si quieres entender el marco legal y ético detrás de todo esto, no te pierdas nuestra guía sobre qué es el hacking ético.

Preguntas frecuentes sobre CTFs

¿Necesito saber programar para participar en un CTF?

No es imprescindible para empezar, sobre todo en categorías como OSINT o retos de General Skills. Pero cuanto más avances, más útil te resultará saber Python básico. La mayoría de herramientas de CTF tienen interfaces de línea de comandos sencillas, así que aprende Python a la par que practicas: es la combinación que mejor funciona.

¿Son legales los CTFs?

Completamente. Los CTFs se desarrollan en entornos cerrados y controlados por los organizadores. Atacar los sistemas de un CTF es legal porque tienes autorización explícita para hacerlo. Esa es la diferencia entre el hacking ético y el delito: el permiso. Nunca apliques técnicas de CTF en sistemas reales sin autorización.

¿Cuánto tiempo necesito para resolver mi primer reto?

Con los retos de nivel Easy de picoCTF, la mayoría de principiantes consiguen su primera flag en la primera o segunda sesión (1-3 horas). Los retos más difíciles pueden llevarte días. Lo importante no es la velocidad, es el proceso de aprendizaje: cada reto que resuelves, y cada uno que no resuelves pero cuyo writeup lees, te hace mejor.

¿Hay CTFs en español?

Sí. Las plataformas internacionales tienen comunidades hispanohablantes grandes (TryHackMe y HTB tienen canales de Discord en español) y también existen competiciones organizadas por universidades y grupos de ciberseguridad españoles y latinoamericanos. CTFtime lista todas las competiciones y puedes filtrar por región.

¿Los CTFs sirven para conseguir empleo en ciberseguridad?

Sí, y bastante. Muchas empresas de ciberseguridad valoran más el perfil de alguien activo en CTFs que un título universitario sin práctica. Un buen historial en plataformas como Hack The Box o TryHackMe demuestra habilidades reales y autodisciplina. Incluir tu perfil de HTB o CTFtime en el CV es una señal clara de que sabes lo que haces. Las certificaciones como eJPT, OSCP o CEH complementan bien la práctica en CTFs.

Conclusión: el hacking se aprende hackeando

Los CTFs son la forma más directa y divertida de aprender ciberseguridad. No necesitas pagar un curso carísimo ni tener un servidor propio: solo una cuenta en picoCTF o TryHackMe, ganas de investigar y tolerancia a la frustración temporal que precede a cada aprendizaje real.

El camino es: picoCTF para las bases → TryHackMe para aprender con estructura → Hack The Box para el siguiente nivel → CTFtime para competir en el mundo real. Empieza hoy. La primera flag siempre es la más difícil, y la más memorable.

Si quieres profundizar en técnicas concretas, visita nuestra sección de hacking web: guía completa o explora el listado de mejores plataformas para practicar hacking.

Sigue tu camino

Cursos de ciberseguridad por especialización

Descubre los cursos que más se adaptan a tu perfil profesional.