电脑技术学习

/dev/tty文件在Unix操作系统中的妙用

dn001

  二、/dev/tty文件使用的注意点。

  在使用这个文件中,特别需要关注的是其权限文件。默认情况下,普通用户也可以实现这个文件,从而可能造成一定的安全隐患。如现在系统中有两个普通用户sa01与sa02。而他们两个都是通过远程终端连入到Unix操作系统中。此时假设用户sa01知道用户sa02的用户名以及登录密码。那么就可以假冒用户sa02的身份,把一些命令的执行结果重定向到/dev/tty文件中。同时利用tee命令进行分流。此时对于用户sa02时,因为其执行相关的命令在终端上仍然可以正常显示,不会产生什么怀疑。但是这个用户其可能不知道,自己执行命令的结果已经保存到/dev/tty文件中。而其他用户就可以通过这个文件来显示在其用户终端上所显示的信息。这显然会导致用户SA02信息的泄漏,给其带来一定的损失。

    /dev/tty这个文件可以有多个用户同时使用,而且相互之间不会发生冲突。这个特性可以帮助系统工程师实现很多有用的功能。但是毋庸置疑的是,也造成了一定的安全隐患。为此对于大部分情况下,Unix系统工程师要对这个文件进行一定的权限限制,如只有系统工程师(不一定是特权用户)才可以使用这个文件。从而防止非法攻击者利用这个文件来获取其攻击所必要的信息。

  另外需要注意的是命令 >/dev/tty与命令> file连个命令其最终的结果有可能相同,也有可能不同。前者在把命令的显示结果保存到/dev/tty文件中的时候,会过滤掉echo等命令设置的信息。而后者这个命令这会把显示的结果一五一十的照搬到file文件中去。也就是说,如果在命令或者脚本程序中没有echo等类似的命令设置信息的话在,则这两个命令重定向文件后所保存文件的内容是一致的。但是如果在命令或者脚本程序中有类似的提示命令的话,则两个文件的显示结果则会不同。为此系统工程师就需要根据自己的实际需要,来选择合适的重定向文件,看看有否必要采用/dev/tty文件。笔者的态度是,只有在确实有必要的情况下,才能够使用/dev/tty文件。因为这个文件是比较稀缺的,只由在缺其不可的情况下,才启用这个文件。

标签: