Ubuntu 会在关机或切换用户时出现的文本屏幕中打印用户密码。
总结
这是一个问题,但经过调查后发现这是一个错误(IMHO)。我已在发射台。请查看那里以了解任何更新。
原来的
我刚刚在一台旧机器上安装了 Ubuntu 18.04.1 LTS (bionic)(也许我之所以注意到这一点是因为它是一台运行缓慢的机器)。我使用了从 Ubuntu 官方网站获取的安装程序,在安装其他任何东西之前,我就开始怀疑这一点 - 但我花了一些时间才相信。
当仅使用一个用户时,我无法重现这一点,但是,当切换用户、登录和注销时,时不时(以及关机期间)文本屏幕会闪烁(在带有进度点的 ubuntu 徽标之前),并且在服务状态的底部,你就会看到:用户密码!
这台机器上没有安装任何可疑的东西。
这是一张图片:
在这种情况下,密码出现了两次。我很难相信我做错了什么,因为我刚刚安装了官方版本。
我不是 Ubuntu 专家。这正常吗?
更新 1:
我找到了一种轻松测试它的方法。切换用户并运行后:
sudo cat /dev/tty1
您可以看到最后输入的密码 - 实际上,您可以看到登录屏幕上输入的所有内容(包括错误的登录尝试),这也是关机时出现的内容。我已经设置了具有相同 Ubuntu 版本的 VM,但到目前为止我无法重现它。所以现在我怀疑我安装的应用程序之一实际上是作恶者。我将继续测试(基本上在 VM 中重现所有步骤)并在此处发布。
更新2:
安装了所有应用程序、所有更新,并执行了我记得执行过的所有步骤(切换语言、配置输入等)。我就是无法重现它 - 然而故障机器始终将登录窗口的所有键(并且只有登录窗口中的)打印到/dev/tty1
。
也许问题在于这台旧机器需要而虚拟机不需要的某些驱动程序。
现在我只想炸掉这台机器,但我先做一个错误报告。然后我会从头开始重新配置这台机器,如果问题仍然存在,我会更新它。
更新 3:
所以这是启动板上有错误。
更新 4:
在另一台机器上新安装。18.04 来自 canonical,没有安装任何应用程序,安装了所有更新 - 没有任何附加应用程序,我能够重现它。但是,症状在 4.15.0-29-generic 上没有显示恢复模式。
跑步:
sudo lsof /dev/tty1
打印两个过程,systemd-l
和gdm-wayla
。
是的,现在我完成了这个主题。它是 Ubuntu 的一部分,而不是外部应用程序。我会假装它不存在,并认为我已经尽到了报告错误的义务。
答案1
我是新来的,但发现你的问题很有趣。我相信,如果你说的是实话,那么你安装或打开过一次的某个程序已经安装了以下东西。记录你输入密码的时间。
https://unix.stackexchange.com/questions/138342/how-to-read-write-to-tty-device
不确定您是否可以搜索每个文件的内容,但我会寻找类似以下内容的内容。如果您愿意接受挑战,请尝试自己创建一个,以收集该信息,这可能会帮助您找到罪魁祸首。
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
int main() {
char byte;
int fd = open("/dev/pts/3", O_RDWR);
write(fd, "X", 1);
ssize_t size = read(fd, &byte, 1);
printf("Read byte %c\n", byte);
return 0;
}
祝你好运!
丹尼斯