操作系统:Linux Mint 18.2 Cinnamon 64 位
虽然我用的不多rkhunter
,可能一年几次,但今天我决定看看它。
我在rkhunter
日志中发现:
/var/log/rkhunter.log
skdet
以下部分似乎缺少一些二进制文件:
Performing Suckit Rookit additional checks
其中指出:
Running skdet command [ Skipped ]
Info: Unable to find the 'skdet' command
由于这个名称下没有可用的包,我想知道它实际上是什么,坦率地说,如何安装它?
答案1
由于许可证不明确,因此它不提供打包版本,并且其使用仅限于您自担风险就像声明的那样这里。
我发现它托管在一些奇怪命名的域上:
https://dvgevers.home.xs4all.nl/skdet/
因为我不知道它是否永远可用,所以我只是将它托管在我的域上,未受影响,请参阅下面的备份链接,如果原件及时损坏的话。
首先,为文件创建一些目录。
您需要三个文件:
更方便的是,您可以使用egwget
直接从终端下载它们:
(2022 年 11 月 18 日新)所有文件的备份链接:
https://www.vlastimilburian.cz/public/skdet.tar
将它们全部下载到您创建的目录中。
提取bzip
'ed 文件:
tar -xjf skdet-1.0.tar.bz2
它将展开一个名为 的目录skdet-1.0
。
将文件移动diff
到该目录中:
mv skdet-fix-includes.diff skdet-1.0/
编辑sha1
文件,使最后一行:
59bfb29bc1f7601027629453a39dc81508dd9df5 skdet-1.0/skdet-fix-includes.diff
哈希值和文件名之间有 2 个空格,否则将被跳过。
然后,让我们检查这些文件的完整性:
sha1sum --check skdet-1.0.sha1
一切应该没问题。
现在,我们需要应用补丁文件:
cd skdet-1.0/
patch -p 1 < skdet-fix-includes.diff
它会说:
patching file src/skdet.c
patching file src/usage.c
我们现在不需要该diff
文件:
rm skdet-fix-includes.diff
虽然它已经包含预编译的二进制文件,但我宁愿自己编译,所以......
make clean
让我们编译一下这个东西:
make
它将输出一个名为skdet
.
只需将其复制到您想要拥有自己编译的二进制文件的位置即可,对我来说:
sudo cp skdet /usr/local/bin/
你基本上就完成了。
只需更新您rkhunter
的文件属性数据库和病毒数据库文件:
sudo rkhunter --propupd
sudo rkhunter --update
最后,在您的rkhunter
命令之后,例如:
sudo rkhunter --check --enable all --disable none --skip-keypress
应该会在日志文件中生成这样的条目:
sudo cat /var/log/rkhunter.log | grep -B 6 -A 1 "skdet command"
[16:23:13] Performing additional rootkit checks
[16:23:13]
[16:23:13] Performing Suckit Rookit additional checks
[16:23:13] Checking hard link count on '/sbin/init' [ OK ]
[16:23:13] Checking for hidden file extensions [ None found ]
[16:23:13] Info: Found the 'skdet' command: /usr/local/bin/skdet
[16:23:13] Running skdet command [ OK ]
[16:23:13] Suckit Rookit additional checks [ OK ]
瞧!