使用 Ttyutils 截获 UNIX/Linux 终端
2008-09-23 08:23:44 来源:WEB开发网使用 ttylook 控制用户会话
当使用 ttyexec 监控了一个程序之后,如果想偷窥被监控终端上的会话,就需要在另外一个终端使用 ttylook 连接到 ttyexec。
使用 ttylook,必须要知道运行 ttyexec 的那个终端的终端名称,伪终端名称,或者进程 ID 中的至少一个。这可以很容易的从 ttyadmin 获得,看下图:
图 1 ttyadmin 截图
这是运行在 IBM AIX5.1 上的 ttyadmin 的截图,在主窗口中,每一行列出了当前系统中的一个 ttyexec 实例,信息包括运行它的用户 ( 图中故意模糊了 ),进程 ID,终端名称,伪终端名称,运行的时间和运行的命令。
在上图中我们可以看到当前系统有 13 个 ttyexec 实例在运行。
在上图中,如果用 ttylook 连接被监控的终端 /dev/pts/16,可以使用下面的命令中的任意一个,它们是等价的:
$ ttylook --tty /dev/pts/16
$ ttylook --pid 319688
$ ttylook --pts /dev/ttypf
在默认情况下,ttylook 在只读模式运行,也就是说,它只能偷窥被监控的终端,而不能操作被监控的终端,如果要操作被监控的终端,它必须通过命令行 --writable 进入可写模式。
但是进入了可写模式很危险,特别是你不希望让被监控终端上的用户发现的时候。所以默认是只读模式。
回顾一下,假设用户 1 在终端 A 在上运行着 ttyexec,用户 2 在终端 B 上运行着 ttylook,当 ttylook 连接到的 ttyexec 实例后,终端 A 和终端 B 的屏幕内容将实时同步,所以,用户 1 在被监控终端上的所有会话对于用户 2 而言就暴露无遗了。
更多精彩
赞助商链接