基于签名的rootkit扫描程序?


20

目前,我所知道的唯一的rootkit扫描程序必须在rootkit之前安装在计算机上,以便它们可以比较文件更改等(例如:chkrootkitrkhunter),但是我真正需要做的是能够扫描我的计算机和其他计算机从LiveUSB中获取,因为如果rootkit足够好,那么它也将接管rootkit检测程序。

那么,是否存在适用于Ubuntu / Linux的基于签名的rootkit扫描程序,我可以将其安装在LiveUSB上并用于可靠地扫描插入的计算机,而不必监视行为或比较以前的文件?


您肯定有正确的名称@Paranoid。您的计算机是否在互联网上肆无忌,,完全暴露在外?
SDsolar

@SDsolar:不,但是我喜欢备份计划,以防万一。另外,我可能想扫描朋友的机器,如果它已经被破坏,那么安装类似的东西rkhunter可能不会有多大好处。实际上,如果安装了rootkit,我希望rkhunter不再提供准确的结果,因此仅将它安装在实际计算机上会受到危害的工具上就有点愚蠢了。

我不想抑制您的动静,但我认为您正在寻找一种工具,该工具将使很大一部分计算机法证专家失去工作,并可能迅速赚取数百万美元的收入。:-)
CatMan

@Paranoid Panda-Sophos的Linux免费扫描程序拥有超过1,250万个签名,但是据我所知,他们说-仅用于病毒?但是我想他们的意思是在野外(“ M $ ...”)中使用“病毒”各种恶意软件……
dschinn1001

@ParanoidPanda:似乎您想要的是拿一个您喜欢的rootkit扫描仪,将其安装在您确定是干净的系统上,然后在LiveUSB上安装THAT,以便您的扫描仪摇杆可以引用该摇杆上的优质文件。扫描一个(可能已损坏的)系统时。扫描器可能必须被黑客攻击,以查看其用于检查目标计算机的参考文件/签名的棍子。您可能还需要为要扫描的每个OS版本单独安装一个记忆棒。
汤姆·巴伦

Answers:


3

AIDE一个先进适用的 ntruder d etection ê nvionment)是替换tripwire在另一个答复中提到在这里。来自维基百科

先进入侵检测环境(AIDE)最初是作为根据GNU通用公共许可(GPL)条款获得许可的Tripwire的免费替代产品而开发的。

主要开发人员分别名为Rami Lehti和Pablo Virolainen,与坦佩雷工业大学都有关系,他们分别是荷兰独立安全顾问Richard Van den Berg。该项目在许多类Unix系统上用作廉价的基线控制和rootkit检测系统。


功能性

AIDE会“快照”系统状态,注册哈希,修改时间以及有关管理员定义的文件的其他数据。此“快照”用于构建已保存的数据库,可以将其存储在外部设备上以进行安全保存。

当管理员想要运行完整性测试时,管理员将先前构建的数据库放在可访问的位置,并命令AIDE将数据库与系统的实际状态进行比较。如果在快照创建和测试之间对计算机进行了更改,则AIDE将对其进行检测并将其报告给管理员。或者,可以将AIDE配置为按时间表运行,并使用诸如cron之类的调度技术每天报告更改,这是Debian AIDE软件包的默认行为。2

鉴于系统内部可能发生的任何恶意更改都将由AIDE报告,因此这主要出于安全目的。


自从写了维基百科文章以来,从2010年至今,新任维护者Hannes von Haugwitz取代了当时的维护者Richard van den Berg(2003-2010)。

AIDE主页指出Debian的支持,这意味着该应用程序可以安装在Ubuntu与可预测,:

sudo apt install aide

至于可移植性和USB笔式驱动器支持,主页继续说:

它根据从配置文件中找到的正则表达式规则创建数据库。初始化该数据库后,就可以用来验证文件的完整性。它具有几种消息摘要算法(请参阅下文),用于检查文件的完整性。还可以检查所有通常的文件属性是否存在不一致。它可以读取旧版本或更新版本的数据库。有关更多信息,请参见发行版中的手册页。

对我而言,这意味着您可以将签名数据库与应用程序一起存储在实时USB持久存储中。我不确定AIDE是否适合您的需求,但是它可以替代tripwire您目前最喜欢的产品。


聪明的答案! :-)
Fabby

@Fabby感谢您的赞美。cron在大多数安装中都安装了AIDE 。我本人可能不只是出于保护rootkit的目的而考虑它,而是为了避免遭受我自己的不良编程的侵害:p也许还要看看以后的变化是apt get install有教益的。
WinEunuuchs2Unix

3

让我想起tripwire,它会为您指定的文件创建加密校验和。从已知的可靠来源(例如DVD)安装要检查的系统的副本,安装目标系统的相同更新),让tripwire创建校验和文件。将tripwire的校验和文件复制到目标系统,让tripwire将校验和文件与目标系统的文件进行比较。

不同步的更新/升级/安装/系统特定的配置文件当然会被标记/标记为已更改。

更新2018-05-06:

我还应该补充一点,必须离线检查目标系统。如果目标已受到攻击,则硬件,启动固件,操作系统内核,内核驱动程序,系统库,二进制文件可能已经受到攻击,并干扰或返回误报。甚至跨网络运行到目标系统中也可能是不安全的,因为(受损的)目标系统将在本地处理网络数据包,文件系统,块设备等。

我想到的最小的可比较方案是智能卡(信用卡中使用的EMV,联邦政府使用的PIV等)。不管无线接口以及所有硬件/电气/射频保护,接触接口本质上都是串行端口,三线或两线。该API是标准化的,并以白框显示,因此每个人都同意它是不可渗透的。他们是否在保护运行中的数据,运行时的内存以及闪存中的静态数据?

但是实现是封闭的。硬件中可能存在一个后门,用于复制整个运行时和闪存。其他人可能会在硬件与内部存储器,智能卡操作系统或卡之间的I / O之间传输数据。即使hw / fw / sw / compilers是开源的,您也必须在每一步都对所有内容进行审核,但仍然可能会错过您/其他人没有想到的内容。妄想症会使您进入白色橡胶房。

很抱歉跑偏执切线。认真地,将目标驱动器取出进行测试。然后,您只需要担心目标驱动器的硬件/固件即可。更好的是,只需取出HDD盘片/ SSD闪存芯片进行测试(假设您的测试系统是金色的)。;)


即兴的是,但这实际上是解决问题的一个很好的方法!我会接受它,因为对于Linux似乎还没有其他好的解决方案。尽管如果出现另一个答案,可以提供问题的完整解答和要求的解决方案,那么我将不得不移动接受标记。但是,非常感谢您提供的至少是临时解决方案!

注意:有些固态硬盘实际上会加密闪存中的静态数据,因此在这种情况下,我关于仅将闪存芯片移出进行测试的评论将不起作用。在某些时候,您只需要叹息并接受安全性与完成计算任务之间的折衷。
rcpa0
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.