我需要安装防病毒软件吗?

我需要安装防病毒软件吗?

我以为在 Ubuntu 或任何 Linux 发行版中都不需要扫描病毒,直到昨天我在 Ubuntu 软件中心找到了病毒扫描程序clamtk包。klamav

这引出了以下问题:

  • Linux 和 Windows 中的病毒有何不同?
  • Linux 和 Windows 的保护策略有何不同?
  • 我的系统是否应该安装病毒扫描程序包?如果是,哪个选项更好?

答案1

几乎所有平台都有病毒(第一个蠕虫病毒是针对 DEC VAX 的),只是在 Windows 上更常见。不同的平台比其他平台更安全,但病毒通常可以获得用户级安全性,这在大多数平台上通常已经足够好了。如果您不断修补并且非常小心,您实际上可以在没有病毒扫描程序的情况下运行 Windows。

差异从 Windows 到 Linux 的病毒:在 Linux 上,病毒很难获得 root(或系统)级访问权限。但它可能仍可以访问您的地址簿或 Firefox 中保存的密码(用户级访问权限)。

战略:如果您非常小心并且知道自己在做什么,那么即使没有扫描仪也可以。一个好的策略是让扫描仪只扫描下载的文件,或者如果您从另一台计算机通过 USB 驱动器或软盘(假设您有)传输文件,则让扫描仪扫描。如果您愿意,也可以让它定期进行全系统扫描。这取决于您的警惕性以及您感染病毒的可能性。

为您笔记本电脑我建议只在下载文件和从另一台计算机传输文件时才使用扫描仪。让它进行完整的系统扫描可能会消耗大量电池电量。

病毒扫描程序的一个非常重要的元素是更新了新的签名因此,请选择具有最佳签名更新且最适合您使用方式的软件包。

答案2

klamav 和 clamtk 都是 clamAV 软件的前端。它们检查 Linux 病毒,但它们最有用的是确保您的 Linux 计算机不会与 Windows 计算机共享受感染的文件。大多数 Linux 病毒扫描程序实际上用于服务器,用于扫描发送的电子邮件或上传的文件。

维基百科上有一份 Linux 恶意软件列表,可以帮助我们了解相关风险: Linux 恶意软件 - 维基百科,自由的百科全书。他们列出了 30 种病毒和其他各种可能的威胁。

答案3

你可能不需要病毒扫描器本身,但你确实需要保持你的系统更新和安全(良好的密码和系统实践 - 权限等)

个人轶事:我有一个正在运行的 Debian 服务器,它的正常运行时间为 400 天,我想在重新启动它以更新内核之前达到 500 天,我太愚蠢了,太自以为是 Linux 系统了。由于它是为研究小组服务的服务器,我为所有同事提供了一个 ssh 帐户。结果发现,一些黑客利用了我的一个用户的错误密码,并加载了自动脚本,该脚本运行了 5 或 6 个漏洞,才找到一个有效的漏洞(如果我更新了内核,这个漏洞就会被修补)。它植根了服务器,然后继续设置一个机器人(校园 IT 部门在我之前发现了黑客行为,他们注意到了可疑的 IRC 流量并联系了我)。

有趣的是,我使用相同的脚本重新控制了机器,并在摧毁系统之前备份了一些原始数据。

长话短说,保持系统更新,保证密码安全,保持良好的管理习惯。除非你真的sudo rm -rf /*按照网上有人告诉你的那样去做,否则你的 Linux 计算机不太可能出现任何问题。

答案4

不,你不需要防病毒软件(AV)以确保其安全。

您需要采取其他“良好卫生”预防措施,但与此处发布的一些误导性答案和评论相反,防病毒措施并不在其中。

首先,这里的一些顶级答案似乎对两个问题存在混淆:

  1. 病毒的存在对于 Linux 和
  2. 有能力实际感染一个系统。

这两者并不相同。确实有可以在 Linux 上运行的“病毒”,但为了让它们运行,恶意用户需要获得有地方特权的人主动安装它们。这需要系统所有者信任恶意用户,下载软件,并使用sudo密码安装它(或以普通用户身份运行它以造成一些普通用户级别的损害)。这不是一个需要克服的简单障碍。

与其他系统不同,普通用户只要保持 Ubuntu 系统的安全修复程序最新(这很容易做到),通常就不会意外安装某些东西(例如打开附件或点击某些东西)。未知的零日漏洞是个例外,但对于这些 AV 来说完全无效无论如何。Ubuntu 用户默认不具有管理员权限,并且远程 root 登录已禁用。

此外,Ubuntu 还附带:

  • 随机地址加载(可挫败大多数 drop-to-shell 尝试)
  • 应用程序限制/障碍,apparmor例如,像 Firefox 这样的应用程序只能访问非常有限的文件和操作子集(参见/etc/apparmor.d/usr.bin.firefox
  • 内置防火墙 (iptables),可设置为非常严格的限制

因此,为了确保安全,您需要遵守基本的安全规则,例如:

  1. 保持软件更新
  2. 仅运行从官方存储库下载的软件(或您自己编写的软件,或可以审核其源代码的软件)
  3. 仅使用标准包管理器进行安装。特别是不要安装来自随机来源的专有二进制文件,因为您无法通过使用以下方式查看源代码来审核这些文件:apt-get source
  4. 安装家庭防火墙并且不要运行不必要的服务
  5. 定期运行一些日志扫描来检测异常活动——我建议logcheck
  6. 添加本地iptables基于防火墙的另一层防御边界层
  7. 保持密码长度足够且安全(建议使用好的密码管理器)。使用双因素身份验证尽可能。
  8. 使用加密会话(使用sshscp,而不是ftptelnet
  9. 使用容器(例如dockersystemd-nspawn图像) - 通过与系统其余部分隔离运行软件,即使是最有缺陷/最脆弱的软件,也无法在其容器外造成损害。容器技术基本上意味着受感染软件的游戏结束。

如果你遵循这些明智的指导方针,你会比安装非开源的“防病毒软件”(你怎么能相信这样的软件?)并陷入虚假的、高度迷惑,安全感

当然,如果恶意用户要求你badstuff.deb从某处下载并通过打开终端窗口并输入以下内容进行安装:

sudo dpkg -i badstuff.deb

而你也照做了,那么一切都将失去意义,你只能怪自己被感染了。在这种情况下,杀毒软件不太可能拯救你。除非这个特定的病毒是badstuff.deb有限的黑名单签名之一。

正如其他人提到的,clamav“for Linux”被设计为其他(非Linux)系统的扫描服务器。

这里的一些答案和评论提出了以下不合逻辑的主张:“由于用户级损坏可能非常有害(例如删除$HOME及其下的所有内容),因此sudo访问无关紧要。无论如何,您都需要 AV。”

这是一个转移注意力的逻辑谬误。$HOME无论有没有病毒,你都可以故意(或意外)删除。关键问题还是:您是否运行来自不受信任来源的随机代码或者不。如果你这样做,AV(或任何其他预防措施)将无法避免你故意损坏你的系统。

在 Ubuntu 上,整个系统和软件存储库生态系统都旨在防止运行来自随机来源的随机代码,因此安装 AV 来“保护 Ubuntu 免受病毒侵害”是浪费时间和资源。

这里的一些答案建议在 Linux 上安装商业的、非开源的 AV 软件。不要这样做AV 软件以提升的权限运行,经常更改系统调用语义(例如,更改 open() 以扫描下载的文件并可能失败),并且消耗大量资源(内存、CPU、磁盘、网络)。此类软件无法审核,因此无法信任。在原本非常安全的 Linux 系统上安装此类软件将大大增加系统的攻击面,并使其远不及安全的。

参考:

  1. 基于签名的防病毒或反恶意软件是否有效?
  2. 哪种自动入侵通知/检测设置适合家庭桌面使用?
  3. 与 OS-X 和 Linux 相比,为 Windows 编写病毒是否更容易(Quora)
  4. 谷歌:赛门铁克杀毒软件漏洞“严重到极点”
  5. 设置iptables- 询问 Ubuntu 问题
  6. systemd-nspawn在 Arch wiki 上

相关内容