内核:5.8.0-31-generic x86_64 位:64 编译器:gcc v: 10.2.0 桌面:i3 4.18 发行版:Ubuntu 20.10 (Groovy Gorilla)
tripwire 在 VM 上运行良好,但在主机上发生段错误,如下所示:
当我运行 tripwire --init -v 时,我得到以下信息
sudo tripwire --init -v
Open Source Tripwire(R) 2.4.3.7.0 built for x86_64-pc-linux-gnu
Open Source Tripwire 2.4 Portions copyright 2000-2018 Tripwire, Inc. Tripwire is a registered
trademark of Tripwire, Inc. This software comes with ABSOLUTELY NO WARRANTY;
for details use --version. This is free software which may be redistributed
or modified only under certain conditions; see COPYING for details.
All rights reserved.
Opening configuration file: /etc/tripwire/tw.cfg
This file is encrypted.
Opening key file: /etc/tripwire/site.key
Opening key file: /etc/tripwire/zika.gattaca.net-local.key
Please enter your local passphrase:
Opening key file: /etc/tripwire/site.key
Opening policy file: /etc/tripwire/tw.pol
This file is encrypted.
Parsing policy file: /etc/tripwire/tw.pol
Generating the database...
*** Processing Unix File System ***
Processing: /usr/sbin
--- Generating information for: /usr/sbin
Software interrupt forced exit: Segmentation Fault
Segmentation fault (core dumped)
为了防止您复制粘贴,我找到了一些答案:
嗨,Shane,你可以立即尝试以下几件事——
您的日志似乎表明 init 在 /proc 中遇到了一些问题。如果您根本不需要扫描 /proc,只需在策略中添加“! /proc ;”行即可将其排除。
或者,您可以尝试“--init --verbose”,它应该会告诉您哪个文件(或本例中的 /proc 伪文件)失败了。如果您尝试了几次并且它在同一对象或同一类型的对象上持续失败,那么这可能是一个线索,我们需要处理一些特殊的东西。我手头没有 17.04 vm,但我会尝试在 16.04 上扫描 /proc,看看我这边会发生什么。
已知会导致段错误的另一个原因是静态链接二进制文件和远程目录服务(NIS、LDAP、AD 等)的组合。(请参阅问题 #11 中先前的示例)。如果这是问题所在,您可以 a.) 使用 RESOLVE_IDS_TO_NAMES=false 配置文件选项(在 OST 2.4.3.2 中引入),或者改用动态链接二进制文件。
答案1
我也遇到了这个问题并且有一个关于它的页面这里。
就我而言,最终的解决方案是编辑文件twcfg.txt
并RESOLVE_IDS_TO_NAMES=false
在其中添加。
但是,我首先注释掉了几个文件:/proc
&/dev
和 ,/boot
在我的例子中,它们有一些远程安装的文件夹,tripwire 说它不喜欢。这些已知会引起问题。
另外两种可能性:不久前,我有一个超过 2Gb 的文件,显然 tripwire 阻塞了这些文件。/usr/sbin
但是文件夹不应该有这样的文件。
有人提到他的/usr/sbin
文件夹中有一个权限为 -r-------- (400) 的文件。通过调整策略文件,他隐藏了该文件,然后就成功了。您可能也遇到同样的情况。但我在文件夹中看不到这样的文件/usr/sbin
。
最后,柚木 J 型手拿包,他遇到了同样的问题,通过重新编译tripwire解决了这个问题来源。如果其他方法都不起作用,这可能是解决方案。我猜想 Debian/Ubuntu 版本使用相同的源代码,但它们可能有补丁,其中一些可能会破坏某些东西!