La forma en que funcionan la mayoría de los servicios 2FA para RADIUS es actuar como un servidor alojado localmente o en la nube que autentica las solicitudes de RADIUS de los agentes, y luego envía la solicitud a sus propios servidores utilizando sus propios protocolos (divulgación: trabajo para tales una empresa y han estudiado y construido tales servicios).
Eso significa que los datos fluyen así:
[You] => [VPN|router|service|etc] => [agent] => [2FA RADIUS server] => [2FA service]
Hay varios lugares para atacar:
- entre usted y la cosa VPN: uno esperaría que esto esté protegido por otros medios. Esto probablemente requeriría un ataque de hombre en el medio.
- entre la cosa VPN y el agente: generalmente son la misma cosa, por lo que es un ataque en memoria o un ataque de IPC. Esto significa que deberías estar en la misma casilla con privilegios elevados.
- entre el agente y el servidor RADIUS 2FA: sospecho que esta es su mayor preocupación. Es el protocolo RADIUS, lo que significa que depende del mecanismo de autenticación que utiliza para el usuario. La mayoría usa PAP, que usa una clave compartida para "cifrar" y "descifrar" solo la contraseña (comillas significa que es un poco dudoso). Esto probablemente requeriría un ataque de hombre en el medio.
- Entre el servidor RADIUS 2FA y los servicios web 2FA: también se espera que esto esté protegido por otros medios. Esto probablemente requeriría un ataque de hombre en el medio.
Entonces, ¿qué significa esto? Sí, alguien puede leer todo, pero la contraseña en su RADIUS solicita si se interpone entre el agente y el servidor. Esto es algo trivial si el servidor está en la nube. Es un poco más difícil si el servidor RADIUS está en la misma red cerrada que el agente. Es discutible si un atacante puede descifrar la contraseña, ya que depende de la fuerza del secreto compartido y de cuántos paquetes pueden robar.
Además, tiene el secreto compartido si se está comunicando directamente con el servidor RADIUS. Si todos tienen el mismo secreto compartido, cualquiera puede descifrar la contraseña de cualquier persona.