NIST 800-53 rev 4 CM-7(2)指出:
(2)防止程序执行的功能最少的信息系统采用自动化机制来防止程序按照选择(一个或多个):授权的软件程序;未经授权的软件程序;授权软件程序使用条款和条件的规则执行。
Linux中存在哪些自动机制来阻止特定程序(S)的执行?我理解Linux权限可以在较高级别上用于限制所有程序的执行,但这不是白名单/黑名单实现。我还意识到,可以使用SELinux的严格策略实现来满足白名单,方法是要求为每个已批准的应用程序定义策略。还有比SELinux严格策略(这是在严格策略配置中实现的相当大的努力)更简单的其他选项吗?
发布于 2017-11-22 02:22:56
有几种方法可以防止在Linux上执行。但是,重要的是要记住,这些只适用于二进制可执行文件(如ELF)。不能以同样的方式阻止脚本或任何其他解释文件。例如,不实际执行bash脚本,它只是由/bin/bash读取,并对其进行解析。类似于python的情况也是如此,其中/usr/bin/python读取和解释python文件。阻止脚本的执行将阻止一个脚本执行./file.sh,但是除非bash可执行文件本身被阻塞,否则您仍然能够执行/bin/bash file.sh。因此,任何充当口译员的程序都可以绕过这些保护。
阻止执行的几种方法:
注意,默认情况下,AppArmor只适用于您为其创建策略的程序。有一些方法可以使用全局配置文件,因此每个程序都需要白名单,但它没有得到官方的支持。
看起来你想要的是一个MAC,只是比SELinux简单一点。
https://security.stackexchange.com/questions/174026
复制相似问题