Bee root 但不知道密码。替换 /bin/ 中的二进制文件以绕过限制

Awa*_*hhh -2 password root binary passwd

我有一个活动的 root 帐户,但我不知道我的密码。

为了能够更改我的密码甚至创建另一个用户(使用该工具passwd),我需要知道我的密码。所以这就产生了一个问题。但是因为我是 root - 我可以替换/bin/目录中的任意二进制文件吗?只需修改passwd源代码,编译它,用新的替换原来的。有那么简单吗?有什么注意事项吗?

我的测试系统是:FreeBSD 11.0+Ubuntu 18.04

ilk*_*chu 5

我见过的大多数 Linux 都配置为passwd不需要root旧密码:

root@xxx ~# passwd root
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
Run Code Online (Sandbox Code Playgroud)

即使passwd不要求它,你可以尝试chpasswd,或编辑/etc/passwd/etc/shadow手动(密码哈希是第二场,人物的两个冒号之间的长期Blurb的)这只是你需要首先计算哈希值,openssl仅仅是一个的工具来做到这一点:

$ echo foobar | openssl passwd -1 -stdin
$1$G/nr44th$wn16q7ITSvfrNq4amDfzn1
Run Code Online (Sandbox Code Playgroud)

(您可能不应该真正使用MD5-based$1$哈希,但这并不重要,因为至少在将哈希重置为已知值后,您可以使用passwd它来更改它。)

  • 这不是一个愚蠢的问题,但它问得不好。不清楚您在问什么:您是在问“我如何重新获得对系统的访问权?”、“我有访问权,但不知道密码。如何更改密码?这就是我尝试过的。”,“我很好奇 root 可以做什么。root 可以更改系统上的任何内容吗?”。如果问题很明确,那么我会投赞成票。至于删除:我认为你可以投票关闭,然后关闭时,你可以投票删除(我不是这方面的专家)。 (3认同)