我自己运行的是 Kali 2.0 Sana,它是基于 Debian 的系统。目前以root
用户身份运行。
我面临的一个常见问题是任何具有物理访问权限的用户都可以root
在几分钟内更改我的密码。
该passwd
命令允许您在没有现有密码的情况下执行该命令,无论何时执行该命令都无需输入现有密码。
该passwd
命令只是一个例子,但可能存在一些隐藏的技巧,可以在没有 root 用户现有密码的情况下更改密码,
有什么方法可以强制系统在更改 root 密码之前询问现有密码?
有非技术解决方案可用,但正在搜索针对此问题的一些技术调整。
答案1
一旦有人拥有物理访问权限,入侵系统就变得轻而易举——他们可以通过简单的操作来攻击你,比如进入单用户模式或者一些有趣的东西康布特。
我可以走到你的系统前,重新启动它,然后轻而易举地进入。
然而,我并不是这里的威胁,你才是。
当然跑步一切因为 root 权限只是……愚蠢而已。当然有些东西需要 root 权限,但如果你运行的某个软件被破解(或者你误输入了 rm -rf),你就没有你可爱的 linux 权限来保护你了。哎呀,有些应用程序会意外擦除你的整个系统
首先,停止运行 kali linux。从主流发行版,然后从头开始安装。设置一个能够使用 sudo 的适当用户和一个加密主目录。若要获得额外积分,请进行全盘加密。
这应该比你想做的任何创可贴都能更好地阻止人们进入。
答案2
我相信你描述的特征被认为是安全功能。
对于普通用户来说,更改密码做需要提供要更改的当前密码,但对于 root 用户来说不存在这样的密码。
原因是您可能会丢失 root 密码,在这种情况下,如果更改 root 密码需要知道当前密码,您的机器将几乎无法使用。
相反,您可以从实时发行版启动您的机器,chroot 到您的 HDD/SSD,更改 root 密码,然后恢复机器的正常使用。
root 帐户是不是适合机器的日常使用。
答案3
不可以,这不可能。
“passwd”命令不会要求root输入密码。
您可以做的(但不建议这样做)是将密码“mv”到另一个位置(passwd-orig),并制作一个脚本文件,在运行“passwd-orig”之前提示用户输入密码。但是,如果有人可以访问命令行,并且拥有 root 级权限,他们可以直接运行“passwd-orig”,从而阻止您通过这种方式保护事物的尝试。
那么,还有其他更改 root 密码的方法吗?例如,运行“vipw”,或者直接编辑文本文件?我说你不能这样做的原因是,漏洞太多了。如果你试图堵住所有漏洞,你很可能会开始破坏其他功能,这就是我说你不能这样做的原因。这不是正确的做法。
正确的方法是停止一直以“root”身份运行。相反,开始使用“sudo”命令。最好是广泛使用。例如,“sudo cp”、“sudo nano”等。但如果工作量太大,您可以只使用“sudo ${SHELL}”,然后键入“exit”即可离开。(请注意,如果您让 sudo 要求输入密码,sudo 可能会记住您已通过身份验证,然后在一段时间内(默认为 10 分钟)不再要求输入后续命令的密码。)
答案4
我面临的一个常见问题是任何具有物理访问权限的用户都可以在几分钟内更改我的 root 密码。
系统通电时进行物理访问意味着许多其他安全功能都无用。设计一种方法,在不使用系统时将其物理锁定或关闭。
如果您允许任何人以 root 身份登录您的系统,请停止这样做。了解sudo
您是否希望将以 root 身份运行特定命令的能力委托给其他用户。
如果您一直以 root 身份运行系统,请停止这样做。了解sudo
哪些功能可以让您根据需要从普通帐户运行 root 命令,而无需担心一直以 root 身份登录。
passwd
不需要现有密码,因为root
假定root
系统管理员使用密码,并且该管理员可能需要为其他人重置密码。 root
可以直接修改/etc/passwd
,/etc/shadow
无论如何,所以这毫无意义。