相对来说,Tomoyo可以控制的客体类型并不多,只有文件、网络和环境等几类。网络实际上指的是套接字,网络之下又可分为INET和UNIX两小类。Tomoyo中用ENVIRON来代表环境“环境”是Tomoyo独有的一种客体类型,其他强制访问控制模块——SELinux、SMACK、AppArmor都没有这种客体类型。“环境”指的是进程的环境变量。在进程执行execve时起作用,用来控制执行execve后进程可以得到的环境变量。举个例子,如果在策略文件中规定了执行execve前后进程可以读取的环境变量包括PATH、PWD、RUNLEVEL等,但是不包括LD_PRELOAD,那么通过环境变量LD_PRELOAD使得进程加载恶意共享库的攻击手段就无效了。
在Tomoyo中,不同的客体类型有不同的操作许可。客体类型隐含在操作许可之中。以下列出Tomoyo 2.5中的操作许可,前缀包含“FILE”的都是文件类型的操作许可,前缀包含NETWORK的都是网络类型的操作许可。
●FILE_EXECUTE ●FILE_MOUNT
●FILE_OPEN ●FILE_UMOUNT
●FILE_CREATE ●FILE_PIVOT_ROOT
●FILE_UNLINK ●NETWORK_INET_STREAM_BIND
●FILE_GETATTR ●NETWORK_INET_STREAM_LISTEN
●FILE_MKDIR ●NETWORK_INET_STREAM_CONNECT
●FILE_RMDIR ●NETWORK_INET_DGRAM_BIND
●FILE_MKFIFO ●NETWORK_INET_DGRAM_SEND
●FILE_MKSOCK ●NETWORK_INET_RAW_BIND
●FILE_TRUNCATE ●NETWORK_INET_RAW_SEND(www.xing528.com)
●FILE_SYMLINK ●NETWORK_UNIX_STREAM_BIND
●FILE_MKBLOCK ●NETWORK_UNIX_STREAM_LISTEN
●FILE_MKCHAR ●NETWORK_UNIX_STREAM_CONNECT
●FILE_LINK ●NETWORK_UNIX_DGRAM_BIND
●FILE_RENAME ●NETWORK_UNIX_DGRAM_SEND
●FILE_CHMOD ●NETWORK_UNIX_SEQPACKET_BIND
●FILE_CHOWN ●NETWORK_UNIX_SEQPACKET_LISTEN
●FILE_CHGRP ●NETWORK_UNIX_SEQPACKET_CONNECT
●FILE_IOCTL ●ENVIRON
●FILE_CHROOT
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。