2013-05-05 66 views
0

为了在用户模式-Linux内核中实现一些安全措施,我试图编辑系统调用,如opendir和readdir,它们将控制目录,以便我可以保证某个目录那是无法达到的。我在哪里可以找到与目录交互的所有系统调用的列表?管理目录的系统调用

+1

这里是一个系统调用列表:http://man7.org/linux/man-pages/man2/syscalls.2.html – 2013-05-05 17:32:12

+0

你没有足够的描述你正在梦想的确切的安全措施。 .. – 2013-05-05 17:51:47

+0

所以在这里我的计划:我有一个目录,我不希望任何人访问(除了密码之一),我想做它作为OS服务的一部分。如果我可以编辑所有与用户模式Linux中的目录交互的系统调用来尊重我的意图,那么事情就会很简单。 我需要的是这些系统调用的列表。 – user19570 2013-05-05 18:00:39

回答

1

我不认为这是正确的做法。候选人太多了。原则上,这个数字是无限的,因为随机加载的模块可以做任何他们想要的事情。 (你是在控制哪些模块被加载?)你最好在处理内核内部访问的常用例程中捕获这个问题。

+0

我想编辑仅影响主磁盘的系统调用,与添加的模块没有关系。如果系统调用的数量限制为内核,为什么这个数字是无限的? – user19570 2013-05-05 17:40:48

+0

搜索了一下之后,Linux中的“fs/open.c”下的系统调用看起来就是这样。 – user19570 2013-05-08 14:44:08

0

您是否考虑过相反的方法,在访问某些敏感文件或目录时收到通知?

然后你会想要使用inotify。所以开始阅读inotify(7)(以及那里引用的系统调用手册页)。

也许udev也可能是相关的。