我两次通过 ssh 进入远程 Linux 机器,生成 /dev/pts/0 和 /dev/pts/1。从 0 开始,我可以打开 1 进行读取,从而窃取用户输入到 1 的所有内容。如果我希望他们看到他们的输入,我必须将其写回 /dev/pts/1。当然,他们的输入永远不会到达他们的 shell,所以我必须在我的一端(在 0 上)创建一个 shell 进程并将其输入通过管道传输,然后将 shell 的管道输出回 1。
这一切对我来说都很有效。当这一切发生时,我可以在任何我喜欢的地方保存在此过程中读取和写入的所有数据。
当然,除非您是 root 或正在窥探您拥有的会话,否则您无法执行此操作,但您只想将其用于教育目的,对吧?