sudo 密码有多重要?

mxd*_*dsp 27 security sudo password

我知道 sudo 密码可以保护我的计算机免受具有物理访问权限的人的本地黑客攻击(编辑:实际上,它没有)。我的密码足够强大,但我知道如果有人可以远程暴力破解它,它就不够强大。

罐头任何人进入我的电脑在根模式下使用sudo的我与密码的电脑没有物理访问,在一个标准的Ubuntu桌面安装?

  1. 如果您确实可以访问网络,则肯定(简短回答)
  2. 如果你对安全不够重视,是的(长答案)
  3. 如果您运行了“ssh”,并且没有2FA是的评论和答案)
  4. 无需sudo /用户密码即可以root身份访问您的计算机

Rin*_*ind 35

我知道 sudo 密码可以保护我的计算机免受具有物理访问权限的人的本地黑客攻击。

我不想吓到你太多,但如果有人有物理访问权限,无论你的密码有多强,你都会将访问权限交给他们。某人需要重新启动 1 次才能更改您的 root 密码(可以通过“grub 救援”完成,而无需提供您当前的密码)。顺便说一句:这种方法被认为是有效的,是一项功能,也是一种可接受的安全风险(否则,如果密码确实被泄露,您将永远无法修复您的系统)。

但我知道如果有人可以远程暴力破解它是不够强大的。

这里还有其他东西在起作用:如果是在短时间内重复请求相同信息的请求,则路由器应该足够智能以锁定来自外部的访问。基本上,您在这里拥有的是 DOS 攻击(如果有 2 台以上计算机攻击您,则为 DDOS)。路由器应该终止该连接并在接受来自该连接的新请求之前强制等待一段时间。

在标准的 Ubuntu 桌面安装上,任何人都可以使用我的 sudo 密码以 root 模式访问我的计算机而无需物理访问计算机吗?

他们首先需要连接,然后提供 sudo 密码。“root”模式被禁用,您无法直接登录到“#”提示。

请注意,可能会滥用服务。如果您在那台机器上运行“ssh”并且他们可以“ssh”到您的系统,并获得该用户的用户名和密码(因为它是管理员用户,您的 sudo 密码也是如此),他们可以访问您的机器搞砸了。顺便说一句:如果他们这样做,他们必须首先了解您的系统(例如您的密码)。

但是,这(以及任何其他方法)存在一个问题:他们是如何获得您的密码的?他们无法从您的系统本身获取它。一般来说,猜测是不值得的。如果它是社会工程……那么你的问题就在那里,而不是你的系统、Ubuntu 或 Linux 的安全模型。

只要您的 sudo 密码是您的,您就会/应该没问题。如果它是一个强密码(可能对你来说很容易记住但其他人无法猜到),你会更好。我之前在讨论这个问题时使用的一个例子:如果你的狗被命名为“Abwegwfkwefkwe”,使用“Abwegwfkwefkwe”作为密码是错误的,即使它看起来不错(因为有人可能会问你:“你的狗的名字是什么”,他们尝试这样做免费猜测)。如果您与“Abwegwfkwefkwe”没有关系,这是一个很好的密码。

我能给出的最佳建议:

  • 在被要求时不要输入您的管理员密码,除非您知道它会被要求。如果您打开浏览器并看到一个弹出窗口,看起来像我们的“要求管理员帐户密码”......停止......并首先考虑。

  • 当“sudo”宽限期处于活动状态时,不要让您的系统无人看管。sudo --reset-timestamp删除当前的宽限期,并在您下次使用“sudo”时再次要求输入密码。AFK 时锁定屏幕。

  • 不要为了好玩而安装服务或软件。如果您不需要ssh就不要安装ssh,如果您不使用网络服务器,请不要安装网络服务器。并查看当前运行的服务。如果您不在笔记本电脑上使用 BT,请将其禁用。如果您不使用网络摄像头,请禁用它(如果处于活动状态)。删除不再使用的软件。

  • 对于真正的偏执狂(是的,我正在看着你的偏执熊猫):经常更改密码。您甚至可以安装 rootkit 猎人来检查不适当的访问。

  • 将重要数据备份到离线状态。因此,即使您确实在系统上找到了某人,您也可以对其进行格式化,然后重新安装并恢复数据。

  • 对于真正的偏执狂,您可以将 `sudo --reset-timestamp` 缩写为 `sudo -k`,或将其缩写为 `sudo -K`(仅当攻击者可以将系统时间设置为任意值时才需要,此时您可能已经丢失)。 (2认同)

kos*_*kos 6

是的他们可以。

但是,有多种方法可以做到这一点,并且暴力破解sudo密码可能不是第一个。

首先,sudo密码是您用户的密码;所以他们真正需要的是你的密码。

其次,使用暴力破解用户密码来访问系统可能是最后的手段。

有更优雅(但大多数更有效)的方法可以闯入另一个系统。

通常,攻击者要么尝试利用最常见的漏洞(最著名的可能是通过任何方式获取用户 shell 并利用 ShellShock 来获取 root shell),要么按照以下方式做最好的工作:

  • 扫描系统上的开放端口以获得如下信息:
    • 操作系统版本
    • 运行服务版本
  • 利用已知的操作系统或正在运行的服务的错误(缓冲区溢出,...)以获得至少一个用户 shell,然后尝试获取一个 root shell(再次,可能利用 ShellShock)

暴力sudo破解 / 用户的密码可能是一种尝试,以防无法以其他方式获得 root shell,但例如,利用以 root 身份运行的服务不需要攻击者暴力破解sudo/ 用户的密码。

  • @mxdsp 没错。这么说吧:如果攻击者设法通过任何方式获得一个 sudoer 用户 shell(例如探索一个 sudoer 用户正在运行的程序),他可能会使用已知的漏洞利用(在我的回答中我提到了最臭名昭著的)来获得一个 root shell,绕过需要用户的 / `sudo` 密码。更好的是,如果他设法利用以 root 身份运行的服务,他就是直接 root。 (2认同)