Skip to main content

Flag 3 (Planned-Flags-signed-2.pdf) – Nullcon CTF 2026

nullcon CTF 2026

Datos del reto

Campo Valor
CTF Nullcon CTF 2026
Reto Flag 3 (Planned-Flags-signed-2.pdf)
Categoría Forense / Misc
Flag ENO{semantic_3_inference_initialized}

Descripción del reto

El PDF fue publicado por la ley alemana de libertad de información (Informationsfreiheitsgesetz), con información "redactada". Hay 6 flags ocultas en el mismo archivo. Objetivo de este reto: entregar la flag que contiene un "3" (Submit here the flag containing a 3).


Reconocimiento

Herramientas usadas: mutool (MuPDF), pdftotext, strings/grep, qpdf (opcional).

  • Con pdftotext Planned-Flags-signed-2.pdf - se ve que en la sección 3.4 aparecen flags en claro (contienen "1", no "3"). En 3.3 (Applied Cryptanalytic Methodologies and Information Obfuscation Studies) el texto está redactado: solo llaves { } y el resto tapado. La flag con "3" no está en el texto extraíble.
  • Metadatos (exiftool): Producer contiene ENO{secureflaghidingsystem76} — contiene 7 y 6, no 3.
  • Anotaciones (qpdf --qdf + grep): URIs con ENO{input_sanitization_2_is_overrated} — contiene 2, no 3.

Ninguna es la flag que pide el reto.


Análisis de la vulnerabilidad

En PDFs "redactados", el contenido a veces se reemplaza por una imagen (p. ej. borrosa) que sigue siendo analizable. Conviene extraer todas las imágenes:

mutool extract Planned-Flags-signed-2.pdf

Se obtienen, entre otras, image-0080.png (objeto 80) e image-0117.png. La primera corresponde al bloque de texto redactado de la página 2 (sección 3.3), donde se listan las seis flags.


Explotación

En image-0080.png el texto está intencionadamente borroso pero se distingue la estructura:

  • "The first flag is ...", "The second flag is ..."
  • "The third flag is ENO{semantic_3_inference_initialized}, ..."
  • y el resto (fourth, fifth, sixth).

La tercera flag es la que contiene el carácter "3" en su cuerpo: semantic_3_inference_initialized.


Flag

ENO{semantic_3_inference_initialized}

Lecciones aprendidas

Origen Contenido Motivo de descarte
Producer (metadatos) ENO{secureflaghidingsystem76} Contiene 7 y 6, no 3
URIs (anotaciones) ENO{input_sanitization_2_is_overrated} Contiene 2, no 3
Sección 3.4 (texto) ENO{stability gradient 1 disrupted} Contiene 1; patrón distinto

En PDFs redactados, el contenido no siempre se elimina: a veces se reemplaza por una imagen que sigue siendo analizable. Extraer y revisar todas las imágenes del PDF (mutool extract) es un paso estándar en análisis forense de documentos.