← Volver a artículos
Seguridad· 2 min de lectura

FreeBSD parchea un fallo en ptrace(PT_SC_REMOTE) que daba root local (CVE-2026-45253)

El 20 de mayo de 2026 el equipo de seguridad de FreeBSD publico el aviso FreeBSD-SA-26:21.ptrace, que corrige CVE-2026-45253, un fallo en la operacion ptrace(PT_SC_REMOTE) del kernel. El problema permite que un usuario local sin privilegios escale hasta tomar el control completo del sistema.

Que falla exactamente

ptrace es la llamada al sistema que usan los depuradores para inspeccionar y manipular otros procesos. La operacion PT_SC_REMOTE deja invocar una syscall dentro del proceso que estas depurando. El problema esta en como valida los parametros cuando esa syscall remota es una de las meta-llamadas syscall(2) o __syscall(2), que reciben el numero real de syscall como primer argumento.

La validacion de esos parametros era insuficiente. El aviso lo resume sin rodeos: un usuario con capacidad de depurar un proceso podia disparar ejecucion de codigo arbitrario en el kernel, incluso si el proceso objetivo no tenia ningun privilegio especial. Y depurar un proceso propio no requiere permisos: cualquier cuenta local puede crear un proceso hijo y adjuntarse a el. Esa es la parte incomoda. No hace falta una condicion rara ni un binario setuid; basta con tener una shell.

A quien afecta

Todas las versiones soportadas en el momento del aviso:

  • FreeBSD 15.0 y 15.0-STABLE
  • FreeBSD 14.4 y 14.4-STABLE
  • FreeBSD 14.3

Si administras servidores FreeBSD donde varios usuarios tienen acceso shell (hosting, entornos de desarrollo compartidos, jails con usuarios poco confiables), este es el escenario que mas te interesa cerrar. En una maquina de un solo usuario el riesgo directo es menor, pero sigue siendo un vector util para cualquier malware o exploit que ya haya conseguido ejecucion local y quiera subir a root.

Gravedad

El aviso lo clasifica como ejecucion de codigo a nivel de kernel partiendo de un usuario sin privilegios, lo que en la practica significa escalada total. FreeBSD no publico una puntuacion CVSS en el propio aviso. Es el tipo de fallo que no se explota desde fuera por si solo, pero que encadena perfectamente con cualquier acceso local previo.

Como protegerse

No hay workaround. La unica via es actualizar. Las correcciones se commitearon todas el 20 de mayo de 2026:

  • stable/15 y releng/15.0
  • stable/14 y releng/14.4
  • releng/14.3

Tienes tres caminos segun como mantengas el sistema. Con paquetes oficiales, actualiza el kernel via freebsd-update en las ramas releng. Si compilas desde fuente, aplica los parches publicados en security.FreeBSD.org, recompila el kernel y reinicia. En cualquier caso necesitas reiniciar para cargar el kernel parcheado: una syscall del kernel no se arregla en caliente.

Comprueba tu version con freebsd-version -k y compara contra las builds parcheadas antes de darlo por cerrado. Este aviso salio junto a otros varios de la misma tanda de mayo (setcred, bsdinstall, libcap_net), asi que merece la pena revisar la pagina de avisos completa y aplicarlos en bloque.

Puedes consultar la ficha de FreeBSD para ver versiones soportadas y fechas de fin de soporte.

Fuente