Reenvio de agente SSH
¿Qué es Reenvio de agente SSH?
Reenvio de agente SSHFuncion de OpenSSH activada con -A o ForwardAgent yes que expone un socket UNIX en el host remoto para que sus comandos usen el agente SSH local y autentiquen saltos posteriores.
El reenvio del agente SSH permite ejecutar ssh-agent localmente y rebotar de un servidor a otro sin copiar claves privadas. Al conectarse con ForwardAgent yes, OpenSSH crea un socket UNIX en el host remoto (ruta en SSH_AUTH_SOCK) que reenvia las peticiones de firma al agente local. El riesgo es que cualquiera con root en ese host puede secuestrar el socket y firmar autenticaciones en nombre del usuario contra cualquier objetivo alcanzable mientras dure la sesion. Incidentes notorios (matrix.org en 2019, avisos de cadena de suministro en GitHub) llevaron a recomendar ProxyJump (-J), certificados SSH con TTL cortos o claves respaldadas por hardware (FIDO ed25519-sk), asi como configurar IdentityAgent o pedir confirmacion en el agente cuando el reenvio sea inevitable.
● Ejemplos
- 01
Un atacante con root en un jump host usa SSH_AUTH_SOCK para firmar autenticaciones contra servidores de produccion downstream.
- 02
Sustituir ssh -A admin@jump por ssh -J jump admin@destino para que la clave privada nunca llegue al jump host.
● Preguntas frecuentes
¿Qué es Reenvio de agente SSH?
Funcion de OpenSSH activada con -A o ForwardAgent yes que expone un socket UNIX en el host remoto para que sus comandos usen el agente SSH local y autentiquen saltos posteriores. Pertenece a la categoría de Seguridad de red en ciberseguridad.
¿Qué significa Reenvio de agente SSH?
Funcion de OpenSSH activada con -A o ForwardAgent yes que expone un socket UNIX en el host remoto para que sus comandos usen el agente SSH local y autentiquen saltos posteriores.
¿Cómo funciona Reenvio de agente SSH?
El reenvio del agente SSH permite ejecutar ssh-agent localmente y rebotar de un servidor a otro sin copiar claves privadas. Al conectarse con ForwardAgent yes, OpenSSH crea un socket UNIX en el host remoto (ruta en SSH_AUTH_SOCK) que reenvia las peticiones de firma al agente local. El riesgo es que cualquiera con root en ese host puede secuestrar el socket y firmar autenticaciones en nombre del usuario contra cualquier objetivo alcanzable mientras dure la sesion. Incidentes notorios (matrix.org en 2019, avisos de cadena de suministro en GitHub) llevaron a recomendar ProxyJump (-J), certificados SSH con TTL cortos o claves respaldadas por hardware (FIDO ed25519-sk), asi como configurar IdentityAgent o pedir confirmacion en el agente cuando el reenvio sea inevitable.
¿Cómo defenderse de Reenvio de agente SSH?
Las defensas contra Reenvio de agente SSH combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.
¿Cuáles son otros nombres para Reenvio de agente SSH?
Nombres alternativos comunes: ForwardAgent, ssh -A.
● Términos relacionados
- network-security№ 1089
Tipos de claves SSH
Algoritmos de clave asimetrica aceptados por OpenSSH para autenticar usuarios y hosts: RSA, ECDSA (curvas NIST) y la opcion moderna por defecto Ed25519.
- network-security№ 594
Fichero known_hosts
Fichero del cliente OpenSSH (~/.ssh/known_hosts) que fija las claves publicas de los servidores para que SSH detecte cambios de host-key que podrian indicar un ataque MITM.
- identity-access№ 414
FIDO2
Estándar abierto de autenticación de la FIDO Alliance que combina WebAuthn (API del navegador) y CTAP (protocolo del autenticador) para un inicio de sesión sin contraseña y resistente al phishing.
- identity-access№ 861
Gestión de accesos privilegiados (PAM)
Conjunto de prácticas y herramientas que aseguran, controlan, monitorizan y auditan el acceso a cuentas y sistemas con privilegios administrativos elevados.
- defense-ops№ 606
Movimiento Lateral
Táctica MITRE ATT&CK (TA0008) que cubre las técnicas con las que el atacante pivota de un host comprometido a otros sistemas del entorno.
- network-security№ 1087
SSH
Protocolo de red criptográfico (RFC 4251, puerto 22) que ofrece inicio de sesión remoto, ejecución de comandos y túneles autenticados, cifrados e íntegros sobre redes no fiables.