Una IP privada no existe fuera de su red
Por qué dos máquinas en redes NAT de hipervisores distintos no se ven entre ellas, pero sí ven al host. Explicado simple y con un diagrama.
Cómo opero sistemas, qué le delego a una máquina y dónde pongo el límite. Quince años apagando fuegos reales, escritos para que sirvan después.
Empieza por aquí
15 años sobreviviendo al Síndrome del Impostor
Por qué dos máquinas en redes NAT de hipervisores distintos no se ven entre ellas, pero sí ven al host. Explicado simple y con un diagrama.
Hay una conversación que se repite constantemente en LinkedIn, en foros, en grupos de Slack. Alguien descubre los agentes de IA autónomos. Los instala.
Llevo tiempo estudiando un máster en Inteligencia Artificial mientras trabajo como Platform Engineer. En algún punto del camino, las dos cosas colisionaron.
La inteligencia artificial no va a escribir un buen CV por ti.
El dogma de la industria sostiene una narrativa binaria: la IA generativa de alta producción requiere ecosistemas cerrados o stacks CUDA de nivel empresarial.
Esta tarde decidí tocar algo muy concreto. Sin prisas, sin redes, sin Cursor y sin la sensación de que tenía que salir algo publicable.
Una reflexión técnica sobre por qué la supuesta pelea entre LLM y SLM es más narrativa que práctica.
Llevo varios meses trabajando intensivamente con Claude en el desarrollo de TENVY y en mi trabajo como Platform Engineer.
El valor de la imperfección (y de escuchar). Crónica de un fin de semana de código.
Un experimento comparativo sobre la eficacia de los formatos en LLMs y las reglas de oro para obtener mejores resultados.
Un laboratorio de análisis de infección en Linux, con creación masiva de cuentas, una cuenta privilegiada oculta, persistencia en systemd y sabotaje de red.
Por qué ocultar un secreto en el cliente no protege nada, contado sobre una app Android que guarda su PIN en el propio código.
Un ejercicio de análisis de evidencias locales en Windows, leyendo el visor de eventos hasta correlacionar los indicios que abren un script cifrado.
Una cadena en dos fases donde el contexto de red manda, con esteganografía, una SQLi que se reconstruye a trozos y un debug que ejecuta como root.
Un paquete forense donde reconstruir una intrusión entera cruzando auth.log, syslog y un pcap, del acceso inicial a la exfiltración.
Una máquina DFIR para reconstruir una intrusión a partir de logs, con entrada web, un canal C2 por DNS y exfiltración por el mismo túnel.
Varias debilidades medianas bien conectadas, de una base de datos abierta y un secreto en una imagen a un sudo sobre python3 que entrega root.
De un directorio de subidas expuesto a RCE por un PHP disfrazado de imagen, y de ahí a root por un bash con el bit SUID activo.
Un laboratorio de reversing corto y directo, una app Android que valida un PIN en el cliente y deja el secreto a la vista de quien abra el APK.
Una cadena de fallos que parecen inconexos pero se empujan unos a otros, de una pista en las cabeceras HTTP a una biblioteca precargada con la clave de root.
Cómo una serie de decisiones aparentemente inconexas termina abriendo una cadena completa de acceso, activación y escalada.
Una máquina de iniciación donde un virtual host, un binario con credenciales embebidas y un sudo mal delegado se encadenan hasta root.
Cómo una cadena de fallos pequeños, pistas mal protegidas y credenciales expuestas puede terminar en compromiso total del sistema.
Cómo una cadena de malas decisiones termina convirtiendo una aplicación web expuesta y una plataforma de automatización en una puerta al sistema.
Una cadena de compromiso sencilla y habitual en sistemas mal mantenidos, con servicios expuestos de más, autenticación débil y privilegios mal delegados.
Errores de configuración que se repiten en producción, de un Grafana sin parchear con LFI a una capability en Python que entrega root.
Mi primera máquina Windows, un IIS que solo orienta y un Samba con permisos laxos que dejan escribir un script privilegiado.
Todavía no hay nada publicado bajo este tema.