查找另一个 Sudoers 密码

查找另一个 Sudoers 密码

管理员有没有什么办法可以找到另一个管理员甚至非管理员帐户的密码?

我犯了一个错误,忘记了我以前在几台机器上使用的密码。我不想在每个机器上都从 grub/恢复模式重置,出于安全原因,找出那个密码并继续使用它会更有帮助。

最糟糕的情况是我会重置密码,但这不是问题,我知道如何重置。是或否是我真正想要的格式。

答案1

在 Ubuntu 上,用户密码不是以可恢复的格式存储的,而是以哈希值存储的。

更具体地说,它们是使用 SHA-512 进行加盐和哈希处理的,结果存储在 中/etc/shadow。在正在运行的系统上,也只有 root 可以读取此文件,但是当然,如​​果您在其他系统中安装磁盘,任何人都可以读取它。

回到哈希,实际上不可能逆转哈希过程并从中恢复原始密码。因此,相对于数学恢复,密码是安全的。

但是,人们可以“简单地”暴力破解它并尝试所有可能的密码,直到找到一个合适的密码。聪明的攻击者会使用字典并首先尝试真实的单词和这些单词的常见派生词,因为它们更有可能被人类使用。这当然需要一些时间,具体取决于计算能力和密码的长度/复杂性。SHA512 只是一个强大的加密哈希,而不是像 bcrypt 或 PBKDF2 那样需要额外大量计算的特殊密码哈希,因此很可能可以在或多或少合理的时间内找到一个相当短的密码。

所以,您无法直接恢复密码,但是,如果您花费足够的时间和计算能力,您可以尝试直到找到它。

答案2

不可以。密码哈希生成是一个单向过程。您不能将哈希还原为明文密码。

答案3

不。Ubuntu 使用安全算法和盐。这样几乎不可能找到密码,除非密码非常弱。如果您知道密码的格式(例如 aAaaa#111),破解起来就更容易了。哈希猫是首选密码破解程序 - 但即使这样也可能需要花费相当长的时间。

如果其他人有权访问sudo机器,他们可以为您重置密码。sudo passwd username将更改用户名的密码 - 而不询问旧密码。

相关内容