有人可以确定我以前的 sudo 密码是否可以访问我的机器和我的新机器吗?

5 security password snapshot

我发现了一个错误,我向其报告此错误的开发人员希望我将带有该错误的 VM 发送给他们。他们希望我将密码和当前状态(快照)的 VM 发送给他们。我不想给他们我目前拥有的 VM 密码,而是将 VM 的密码更改为其他密码,并且我不希望他们知道我的旧密码是什么.

因此,如果我更改 sudo 密码并向他们提供机器的快照,可以访问机器和新密码,他们有什么办法可以确定旧密码吗?该机器安装了 Ubuntu GNOME 15.10 和 GNOME 3.18 64 位。

我基本上只是想知道它是否仍然存储在某处或某处,以及我是否更安全地使用密码进行全新安装我不介意放弃,或者一旦密码更改,旧的一个无法恢复,因此如果我只是向他们发送一个带有新密码的快照也没有关系。

ter*_*don 9

不,密码只存储在/etc/shadow,即使在那里,它也存储在salted hash 中。这意味着即使他们拥有原始密码哈希,也很难从中获取实际密码。您将不得不强制使用它,如果可能的话,这将花费长时间和比任何人愿意花费的资源多得多的资源来获得一些随机的熊猫密码。

在任何情况下,当您更改密码时,输入的内容/etc/shadow都会更改,并且不会留下原始密码的痕迹。

也许您应该检查一下您的 shell 的历史记录,并确保您从未在那里输入纯文本密码:

 history | grep yourPassword
Run Code Online (Sandbox Code Playgroud)

为了让您安心,您还可以对虚拟驱动器上的所有文件运行完整搜索:

 find / -type f -exec grep -l "yourPassword" {} +
Run Code Online (Sandbox Code Playgroud)

注意命令前面的空间。这使得命令不会添加到历史记录中。

  • 一旦你运行了这些命令,你的密码*肯定*在你的历史中。;) (2认同)

ubf*_*an1 6

您最好创建一个新的 VM,重新创建错误,然后将该新副本发送给开发人员,而您发送给他们的内容对您没有任何价值。如果您考虑所有可以保存随机文本字符串的可能位置(shell 历史记录、auth.log、压缩日志等),您仍然会怀疑是否已将它们全部考虑在内,或者是否进行了充分检查。

例如:在需要用户名时输入您的密码,该密码将保存在 /var/log/auth.log 中,旧的 auth.logs 被压缩。其他像 ssh 这样的登录呢?有信心获得所有操作系统位置吗?现在考虑 VM 程序可能正在执行什么样的日志记录。从一个全新的、已知的干净 VM 开始并复制错误的工作要少得多。此外,开发人员将欣赏显示错误的已知状态(全新安装)。