我低头看着键盘并输入密码,因为我以为我已经输入了登录名。我按Enter,然后在要求输入密码时按Ctrl+ c。
我应该采取一些预防措施以确保密码不是以纯文本格式存储在某处,还是应该更改密码?
这也是在ubuntu服务器16.04 LTS上的tty上。
我低头看着键盘并输入密码,因为我以为我已经输入了登录名。我按Enter,然后在要求输入密码时按Ctrl+ c。
我应该采取一些预防措施以确保密码不是以纯文本格式存储在某处,还是应该更改密码?
这也是在ubuntu服务器16.04 LTS上的tty上。
Answers:
问题在于您的密码是否记录在身份验证日志中。
如果要在Linux下的文本控制台上登录,并且在密码提示下按Ctrl+C,则不会生成任何日志条目。至少对于Ubuntu 14.04或带有SysVinit的Debian jessie,甚至其他Linux发行版,这都是正确的。我没有检查在使用Systemd的系统上是否仍然如此。在生成任何日志条目之前,按Ctrl+会C终止该login
进程。所以你很安全。
另一方面,如果您实际进行了登录尝试(如果在密码提示符下按Enter或Ctrl+ 会发生这种情况)D,那么您输入的用户名将以纯文本形式出现在身份验证日志中。记录所有登录失败;该日志条目包含帐户名,但从不包含有关密码的任何内容(只是密码不正确的事实)。
您可以通过查看身份验证日志进行检查。在Ubuntu 14.04或带SysVinit的Debian jessie上,身份验证日志位于中/var/log/auth.log
。
如果这是一台由您独占控制的机器,并且它不是远程日志,并且尚未备份日志文件,并且您愿意并且能够编辑日志文件而不会破坏任何内容,那么请编辑日志文件以删除密码。
如果您的密码记录在系统日志中,则应认为该密码已泄露,需要进行更改。日志可能由于各种原因而泄漏:备份,请求帮助……即使您是这台计算机上的唯一用户,也不要冒险。
注意:我没有检查Ubuntu 16.04是否工作不同。该答案可能无法推广到所有Unix变体,当然也不能推广到所有登录方法。例如,即使您在密码提示下按Ctrl+ C(实际上,在显示密码提示之前),OpenSSH也会记录用户名。
就您而言,您很安全-您输入了密码并从密码中取消了。在登录提示中键入密码,然后输入错误的密码将被视为身份验证失败,并且会部分记录在btmp
日志中。对于tty
控制台,这没关系。
$ sudo lastb
[sudo] password for xieerqi:
UNKNOWN tty1 Mon Apr 25 22:14 - 22:14 (00:00)
“偶然地”键入的密码记录为UNKNOWN
,所以在这里一切都很好。但是,GUI登录屏幕上的身份验证失败确实显示了模糊的失败登录条目
$ sudo lastb
[sudo] password for xieerqi:
hellowor :1 :1 Mon Apr 25 22:17 - 22:17 (00:00)
UNKNOWN tty1 Mon Apr 25 22:14 - 22:14 (00:00)
那有什么好处吗?好 。。攻击者首先必须具有访问您系统的权限,甚至更多-他/她将必须具有root用户访问权限才能读取btmp
日志。对于单用户计算机来说,这也意味着-密码已经被盗,因此即使攻击者知道了您的密码,也无济于事。您已经可以推断出该条目中的密码仅被部分记录,但是对于攻击者而言,这是一个相当不错的优势,因此该部分没有什么好处。
您应该更改密码吗?可能只是为了100%保证。另一方面,攻击者将不得不访问您的btmp
日志,而这与访问日志相同/etc/shadow
,因此并没有真正的优势。
旁注:我的Ubuntu 14.04的所有输出
/var/log/auth.log
?是的,密码重用是一个常见问题,我很清楚,所以我不会重用。
sudo rm /var/log/btmp
吗?