我可以使用“sudo apt-get install”来获取病毒吗?

我想确保使用sudo apt-get install下载软件是安全的。 包裹是否在某处扫描过? 使用此命令下载的所有软件包都是免费的吗?

如果无法保证它们没有病毒,在安装包含病毒的软件包后,攻击者是否可以完全控制我的机器? 有什么办法可以检查我电脑上安装的所有软件包吗? (而不是系统自动。我想过滤它们以查看我手动安装的所有软件包,而不是系统。)

在默认的Ubuntu系统上, apt不太可能获得病毒。 但是,这并不意味着不可能:

  • 恶意PPA
    APT的一个function是管理员能够将个人包存档(PPA)或其他软件源添加到APT缓存。 这些第三方APT源不一定受信任,可能携带病毒。 但是,机器管理员有意采取措施添加其中一个受感染源,这使得人们很难添加自己。
  • 黑客存储库
    理论上,软件存储库可能被恶意方攻击,导致下载的.deb文件可能携带恶意负载。 但是,正式监视官方软件存储库,这些存储库的安全性非常紧张。 黑客很难取消官方的Ubuntu软件资源,但第三方软件资源(见上文)可能会更容易受到损害。
  • 主动MITM /网络攻击
    如果网络受到更高的威胁(例如,您的ISP),则可能会从官方软件源中获取病毒。 然而,攻击这种能力将需要极大的努力和中间人的许多站点的能力,包括GPG密钥分发服务器和官方回购。
  • 写得不好/恶意代码
    漏洞确实存在于开源,同行评审和维护的代码中。 虽然从技术上讲这些东西在技术上并不被视为“病毒”,但代码中隐藏或从未泄露的某些漏洞可能允许恶意攻击者在您的系统上放置病毒或对其进行攻击。 这类问题的一个例子是来自OpenSSL的Heartbleed,或者是更近期的Dirty CoW。 请注意, universemultiverse回购中的程序是此级别的潜在威胁,如此处所述。

apt (由于其在Linux系统上的重要性)在客户端和服务器端几乎所有这些类型的攻击都受到严密保护。 虽然它们是可能的,但是知道他们正在做什么并且知道如何读取错误日志的管理员将能够防止发生任何这些攻击。

此外, apt还强制执行签名validation,以确保下载的文件是合法的(并且正确下载),这使得通过apt偷袭恶意软件变得更加困难,因为这些数字签名无法伪造。


至于响应恶意软件感染事件,绝对最简单的方法是将系统刻录到地面并从最近(并且已知 – 干净)备份重新开始。 由于Linux的本质,恶意软件很容易在系统中如此深入地表现出来,以至于永远无法找到或提取它。 但是, clamavrkhunter等软件包可用于扫描系统是否存在感染。

apt-get只能从已检查的官方Ubuntu存储库或从您添加到源中的存储库安装。 如果你添加了你遇到的每个存储库,你最终可能会安装一些讨厌的东西。 不要那样做。

sudo apt-get下载的文件与该文件的校验和/哈希值进行比较,以确保它没有被篡改并且没有病毒。

事实上,当你谷歌“sudo apt get hash sum”时人们遇到的问题是对病毒的安全性过高。

Linux无论如何都不是完全没有病毒的,但事件可能比Windows少1000倍。

然后再次判断我的屏幕名称我可能有偏见:)

2017年11月28日的评论提到Windows如何拥有1000多个工作站而不是Linux,所以为什么要打扰黑客Linux。 它提出了Linux现在运行在所有500个速度更快的超级计算机上的事实,并且大多数Web服务器运行Linux,这使得它成为破解连接到互联网的所有Windows工作站的最佳方式。

谷歌Chrome,Android和Windows 10为用户提供了充分的机会,可以同时放弃他们的隐私和可能的安全性。

虽然apt-get只能从官方的Ubuntu存储库安装,但它并不保证100%你打包的包装是干净的。

如果存储库被黑客攻击,黑客可能会将损害代码注入到包中。 以Linux Mint服务器为例,黑客入侵,黑客将恶意软件注入其ISO文件中。 http://www.theregister.co.uk/2016/02/21/linux_mint_hacked_malwareinfected_isos_linked_from_official_site/

取决于你的sudo权限是什么。 根访问权限? 所有的赌注都是关闭的 – 你事实上将你的信任放在apt-get生态系统中,这可能是也可能不安全。 我认为这是一个可怕的想法,但我一直这样做,因为它是唯一的选择。 如果你正在运行一个安全性非常高的敏感安装,那么在anthing上运行sudo你就不会完全控制它可能是疯了。 如果你只是一个普通的schmoe,那么你可能还可以。