在哪里可以找到可能已经安装在计算机上的恶意软件?


23

我想分析我的Ubuntu盒子,以检测它是否被黑客入侵了。我的问题是:在哪里可以找到是否启动了某些恶意软件?以下是某种原始列表:

  1. br
  2. 内核映像(我有md5)
  3. / sbin / init(我有md5)
  4. / etc / modules中的内核模块
  5. /etc/init.d和/ etc / init中的所有服务脚本(我有md5)
  6. /etc/rc.local
  7. gnome自动运行

和?

我的问题是完全诚实的,不是恶意的。只是要检测我的盒子是否被盗。

Answers:


25

恶意软件的目标是做某事。因此,它将需要与外界进行沟通。因此,最好的方法是查看计算机上发生的网络流量。

我喜欢dnstop实用程序。安装方式sudo apt-get install dnstop

然后针对您的网卡运行该实用程序

sudo dnstop -l 3 eth0

当该实用程序运行时,按3键,这将更改屏幕以显示您的计算机发出的所有dns请求。

就我而言,我去了Ubuntu,它试图访问以下内容

Query Name               Count      %   cum%
-------------------- --------- ------ ------
www.gravatar.com             2   40.0   40.0
askubuntu.com                2   40.0   80.0
ny.stackexchange.com         1   20.0  100.0

这使我对访问了哪些网站有所了解。您所需要做的就是什么也不做,坐下来等一会儿,看看您的计算机可以访问什么。然后,努力跟踪其访问的所有那些网站。

您可以使用许多工具,我认为这是一种易于尝试的工具。


嗯,我认为最愚蠢的rootkit隐藏了自己及其流量。
路易吉

就像我说的@Luigi,有很多法医分析工具。如果。您担心使用Wireshark并查看网络段上的流量,因为您在硬件级别上工作,这几乎是不可能伪造的。如果您更偏执,可以在网段上的干净计算机上运行Wireshark。
Meer Borg

好的,但是我认为最好的方法是通过livecd分析脱机系统。我认为这更容易,因为只有在存在其他数据流时,聪明的恶意软件才可以将信息发送到外部,或者可以在秘密渠道发送信息。
路易吉

@Luigi,以及如何确定数以千计的程序中哪个被破坏了?在干净的系统上运行md5哈希并将其与您的系统进行比较?最好的选择是擦电脑,mbr,甚至丢掉硬盘?BIOS?很多攻击媒介。这是一项艰巨的工作,而且您似乎已经掌握了很多信息。但是,是什么导致您相信您已经感染了这种超级隐形“病毒”?
Meer Borg

1
大多数Linux发行版都包含软件包中几乎所有的md5文件。例如,在Ubuntu中有debsums。因此,很容易检查整个系统。但是,当然,某些文件不会被散列..例如mbr。但是内核映像和所有模块都具有其md5(以及sha1或sha256,以避免md5冲突),并且对于/ sbin / init相同。我只需要检查未散列的内容,但是我必须非常深入地了解启动过程。
路易吉

6

您永远无法知道您的PC是否已被感染。您可能可以通过侦听来自计算机的流量来判断。您可以执行以下操作以确保系统正常。请记住,没有什么是100%。

  • 确保您未启用root帐户
  • 确保您拥有最新的安全更新,一旦它们出现
  • 不要安装您几乎不会或永远不会使用的软件
  • 确保您的系统具有强密码
  • 关闭不需要的任何服务或流程
  • 安装良好的防病毒软件(如果您要使用Windows,或者可能包含基于Windows的病毒的电子邮件)。

就找出您是否被黑客入侵而言;您将获得弹出广告,重定向到您不打算访问的网站等。

我不得不说,/sys /boot /etc在其他方面被认为很重要。

还可以使用内存取证工具(例如VolatilityVolatility)检测Linux恶意软件

您可能还想看看为什么我需要防病毒软件?。如果您想安装防病毒软件,我建议您安装ClamAV


3

您也可以尝试rkhunter对您的PC进行扫描,以查找许多常见的rootkit和特洛伊木马。


rkhunter只检测已知的rootkit,而且它很容易采取任何公开的rootkit,并更改源使它从rkhunter检测不到..
路易吉

1

有专门的发行版(例如BackTrack),其中包含用于分析您的情况的软件。由于这些工具的高度专业化性质,通常与它们相关的学习曲线非常陡峭。但是,如果这确实是您的关注点,那就值得花费时间。


我知道回溯,但是没有任何软件可以自动进行这种检查。
路易吉

@Luigi如果那么简单,我将成为一名IT安全/法务分析师,薪水为六位数……
hmayag

1

如果您将系统作为虚拟机运行,则对您来说很明显(出于其他原因,我会提及)。在这种情况下,电源按钮可以解决问题,请将程序保留在其沙箱中(每秒)。强密码。不能说足够。从SA的角度来看,这是您的第一道防线。我的经验法则,不要去爱9个字符,也要使用Specials,并且还要使用大写+小写+数字。听起来很难。这简单。例如...'H2O = O18 + o16 = water'我使用化学试剂来输入一些有趣的密码。H2O是水,但是O18和O16是不同的氧同位素,但最终结果是水,因此出现了“ H2O = O18 + o16 = water” ..强烈的密码。所以称那台计算机/服务器/终端为“ Waterboy”可能会有所帮助。

我在书呆子吗?!?!


0

您可以安装并运行ClamAV(软件中心)并检查计算机上是否存在恶意软件。如果您已安装Wine,请通过Synaptic进行清除(完全移除),然后根据需要重新安装。

记录:Linux的恶意软件很少(不要将其与Windows的过去混用!),因此您的系统受到威胁的几率几乎是zip。一个好的建议是:为您的根用户选择一个强密码(如果需要的话,您可以轻松地更改密码)。

不要对Ubuntu和恶意软件抱有幻想。保持在软件中心的范围内/不要安装随机的PPA /不要安装没有保证或没有经过认证的背景的.deb-packages;这样一来,您的系统将保持干净,不会发痒。

还建议您每次关闭Firefox浏览器(或Chromium)时删除所有cookie,以删除它们并清理历史记录。这很容易在首选项中设置。


0

回到运行公共服务器时,我会将它们安装在非网络环境中,然后在其上安装Tripwire(http://sourceforge.net/projects/tripwire/)。

Tripwire基本上检查了系统上的所有文件并生成了报告。您可以排除您允许更改的内容(例如日志文件)或不关心的内容(邮件文件,浏览器缓存位置等)。

遍历报告并进行设置需要很多工作,但是很高兴知道如果文件发生了更改,并且您没有安装更新程序来更改它,那么您知道有一些事情需要调查。我实际上并不需要所有这些,但是我很高兴我们将其与防火墙软件以及网络的常规端口扫描一起运行。

在过去的十年左右的时间里,我只需要维护自己的个人计算机,并且没有其他人可以使用物理访问权限或帐户,也没有公共服务(或有很多理由专门针对我的计算机),我是松懈一点,所以我多年来没有使用过Tripwire ...但是它可能是您正在寻找的用于生成文件更改报告的东西。


0

在您的方案中,最好的做法是每周或更短的格式。安装诸如spideroak之类的程序以安全地同步数据。重新格式化后,您所需要做的就是下载spideroak,然后所有数据返回。使用ubuntuone曾经更容易,但是现在已经不存在了:(

顺便说一句:Spideroak仅保证您永远不会通过网络会话访问其站点上的文件时的零知识。您只能使用其软件客户端来访问数据和更改密码。

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.