我的系统是 Novell SLES 11.4 x86-64。
我得到了:
必须禁用 ldd 命令,除非它可以防止执行不受信任的文件。
如果您搜索上述内容,您可以轻松获得有关它的更多信息。
oem
的设置权限/usr/bin/ldd
为 root.root
0755。
还指出“禁用‘ldd’的可接受方法是将其模式更改为 0000”
如果我这样做并ldd
完全禁用,那么我的系统将无法工作。我立即发现的第一个后果是 YAST 不起作用。
因此,第一个妥协是在chmod 644 /usr/bin/ldd
保留root.root
.在运行合法软件(在许可上花费了大量资金)时,这仍然会导致问题和错误。
因此,我得出的结论是,这个请求要么已经过时,要么就是很糟糕。
寻找想法和建议,谢谢。
答案1
我以前从未听说过这个建议,而且这是完全错误的。
在 Linux 上,ldd
通常是一个 bash 脚本,最终执行相当于
LD_TRACE_LOADED_OBJECTS=1 /lib64/ld-linux-x86-64.so.2 your_program
因此ldd
实际上并不执行“任何”程序本身,而是调用二进制加载器并那尝试运行你的程序。
(脚本的其余部分基本上是一个包装器,用于计算正确的调用ld.so
;例如 32 位、64 位等)。
在 Linux 上删除权限的ldd
安全增益为零。
答案2
这是指CVE-2009-5064,即固定在 SLES 中自 11 SP1 起。因此,您应该遵守“它可以防止执行不受信任的文件”条款。您可以找到有关该漏洞和概念验证的更多信息这里。