当前位置: 首页>>技术教程>>正文


sudo密码有多重要?

, ,

问题描述

我知道sudo密码可以保护我的计算机免受具有物理访问权限的人的本地入侵(编辑:实际上,它是doesn’t)。我的密码足以达到此目的,但是我知道如果有人可以远程将其密码brute-force,它的密码还不够强。

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

  1. 如果您确实有网络访问权限,肯定可以(简短答案)

  2. 如果您对安全性不够重视,可以(很长答案)

  3. 如果您正在运行”ssh”,但没有2FA,则是(comments和答案)

  4. One can access your computer as root without sudo/user password

最佳方法

I know that the sudo password protects my computer from being locally hacked by someone having physical access to it.

我不想吓到您,但是如果某人具有物理访问权限,则无论您的密码强度如何,您都将其移交给他们。某人将需要1重启,以便该人可以更改您的root密码(可以从”grub rescue”完成,而无需提供您的当前密码)。顺便说一句:该方法被认为是有效的,并且是一种功能,并且具有公认的安全风险(否则,如果密码被盗用,您将永远无法修复系统)。

but I know that it is not strong enough if someone can brute-force it remotely.

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

Can anybody access my computer in root mode using my sudo password with no physical access to the computer, on a standard Ubuntu desktop installation ?

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

请注意,有可能滥用服务。如果您在该计算机上运行了”ssh”并且他们可以将”ssh”连接到您的系统,并获得了该用户的用户名和密码(由于它也是admin用户,您的sudo密码也是如此),他们可以访问您的计算机并将其弄乱。顺便说一句:如果他们这样做,那么他们必须首先了解您的系统(例如您的密码)。

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

只要您的sudo密码是您的,就可以/应该很好。如果密码强度高(您可能很容易记住但别人无法猜到),您的生活就会更好。我之前在讨论这个问题时使用的一个示例:如果您的狗被命名为”Abwegwfkwefkwe”,但它看起来不错,因为它使用”Abwegwfkwefkwe”作为密码是坏的(因为有人会问您:’您的狗是什么’s name’,他们会免费尝试一下)。如果您与”Abwegwfkwefkwe”没有关系,那么这是一个很好的密码。

我可以提供的最佳建议:

  • 除非要求您输入管理员密码,否则请不要输入管理员密码。如果您打开浏览器并看到一个类似我们的“询问管理员帐户密码”的弹出窗口,请停止…首先考虑。

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

  • 请勿出于娱乐目的而安装服务或软件。如果不需要ssh,请不要安装ssh;如果您不使用网络服务器,请不要安装网络服务器。并查看当前正在运行的服务。如果您不在笔记本电脑上使用BT,请禁用它。如果您不使用网络摄像头,请将其禁用(如果启用)。删除不再使用的软件。

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

  • 将重要数据备份到保留的内容off-line。因此,即使您确实在系统上找到了某个人,也可以对其进行格式化,然后重新安装并重新安装数据。

次佳方法

是的他们可以。

但是,有多种方法可以使用,而sudo的brute-forcing密码可能不是第一个。

首先,sudo密码是您的用户密码;因此,实际上他们需要获取的是您的密码。

其次,使用brute-force破解用户密码来访问系统可能是最后的选择。

有一些进入其他系统的更优雅(但更有效)的方法。

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

  • 扫描系统上的开放端口以获取诸如以下信息:

    • 作业系统版本

    • 运行服务版本

  • 利用已知的操作系统或运行中的服务的错误(缓冲区溢出等),以便至少获取用户 shell 程序,然后尝试获取根 shell 程序(再次,可能是利用ShellShock)

如果无法以其他方式获得根 shell ,则可以尝试强行使用sudo /用户的密码,但是例如,利用以root用户身份运行的服务不需要攻击者强行使用sudo /用户的密码。

第三种方法

  1. 如果最近几年我在安全方面学到了什么,那么一件事:没有什么是不可能的。

  2. 当然,只要您可以访问网络。从理论上讲,可以在网络上访问的,在系统上运行的每个服务都非常脆弱,因此可能是一个弱点。

因此,对于具有足够想法的攻击者而言,这是可能的。您可以使系统尽可能地安全,但永远无法达到100%的安全性。

因此,重要的是评估在合理的技术努力下可能发生的事情以及对您的保护程度如此之好以至于您自己再也无法工作的事情。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8709.html,未经允许,请勿转载。