Interceptar los comandos de "cierre de sesión" es fácil en el servidor hostil. Interceptar el "Ctrl-D" requiere tomar el control del terminal en modo raw, pero eso no es un gran problema.
Volver a leer el contenido del terminal puede ser difícil. Diferentes terminales implementan su propio conjunto de secuencias de control; xterm es conocido por implementar muchos de ellos . No veo ninguna secuencia que permita volver a leer el contenido del terminal; sin embargo, aún se pueden hacer algunos errores considerables con las secuencias, como mover la ventana, cambiar de fuente, etc. En días anteriores, era posible hacer que xterm creara archivos locales, aunque sin mucho control sobre el nombre del archivo (no recuerdo los detalles, pero probablemente fue con la función de "archivos de registro" que se puede desactivar en la compilación). hora). Además del baile, también se puede hacer un xterm para cantar, con el "carácter de campana", aunque es más una molestia que un vector de ataque.
Hablando de molestias: dependiendo del sistema cliente y su configuración y controladores gráficos, un texto de desplazamiento de terminal a gran velocidad puede congelar la consola de la víctima (según mi experiencia, gnome-terminal y un administrador de ventanas de composición pueden convertirse en una mala combinación para eso).
Aún en xterm, hay secuencias para manipular el portapapeles (busque "manipular selección" en la página de referencia vinculada arriba). Esto puede ser desagradable, tanto para leer como para escribir. Consulte esta página para obtener una discusión sobre los posibles problemas (una lista de comentarios de seguimiento de problemas). , de personas que discuten la posibilidad de importar ese mecanismo en un emulador de terminal llamado mintty).
La conclusión general es: no SSH en hosts inseguros. Si lo hace, puede hacerlo desde rxvt-unicode , una bifurcación de rxvt donde el autor hizo (entre otras características) algún esfuerzo para desactivar las secuencias de control "inseguras" de forma predeterminada (se pueden recuperar con el parámetro de línea de comando "-insecure").