如何在Linux的Windows子系统中重置kali linux密码

Abd*_*man 4 password-recovery kali-linux windows-subsystem-for-linux

我已经在Windows上安装了Kali Linux子系统。现在我忘记了Kali中的root密码,只有Kali Linux的终端,没有其他东西。如何安全地重置密码?

注意:我同时安装了 Ubuntu 和 Kali Linux,但是当我默认运行 bash 时,它会打开 ubuntu

小智 10

我知道这是一个较老的问题,但我想根据微软的指导提供答案,因为我偶然发现了这个问题,并且知道必须有更好的方法。

这是基于运行至少运行 Windows 10 1709(秋季创意者更新)的设备的https://docs.microsoft.com/en-us/windows/wsl/user-support上提供的文章

  1. 确保 Kali 没有运行
  2. 打开命令提示符 ( cmd.exe)
  3. 从命令提示符处运行kali config --default-user root
  4. 运行 Kali,你应该自动以 root 身份登录
  5. 在 Kali 中,运行passwd user,其中 user 是您希望重置密码的帐户的用户名,即passwd bob
  6. 按照提示重置密码,然后键入exit关闭 Kali
  7. 从命令提示符处运行,kali config --default-user user其中 user 是您刚刚重置密码的用户名,即kali config --default-user bob

按照这些步骤操作,您应该能够在 WSL 上的 Kali 中重置您帐户的密码。

  • 应提升为“已接受的答案”。 (2认同)

Bis*_*iyo 5

我同时安装了 Ubuntu 和 Kali Linux,但是当我默认运行 bash 时,它会打开 Ubuntu。

在新的Windows版本中,用户可以安装并运行多个GNU/Linux发行版。可以用命令配置默认的发行版(即自带的发行版wsl.exewslconfig /s <disrto_name>。例如,要在第一次运行时打开 Kali wsl.exe,请使用此命令wslconfig /s kali-linux或运行kali.exe

我忘记了Kali中的root密码,只有Kali Linux的终端,没有其他东西。如何安全地重置密码?

首先,我不知道这个程序是否安全。在撰写本文时,WSL 通过DefaultUID注册表管理默认登录用户(将来可能会更改)。关闭所有打开的 WSL 实例。要编辑此注册表值,请打开注册表编辑器或regedit.exe从开始菜单或运行对话框。转到此注册表路径或在该窗口中使用Ctrl+键入此路径:L

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss 
Run Code Online (Sandbox Code Playgroud)

您可能会看到一个或多个子项(如子文件夹),其名称类似于{12345678-1234-1234-1234-123456789012}(称为 GUID)。双击它们将其一一打开,并将DistributionName值与您所需的发行版名称相匹配,如下所示kali-linux(见下文)。双击该DefaultUID值并将其更改为零。零表示 root 用户,10000x3e8(十六进制)表示普通用户。

wsl.exe在命令提示符中打开。提示符从 变为$#表示 root 用户)。在 Kali 中运行passwd命令,照常更改 root 密码。现在返回到以前的注册表项,将零更改为以前的值(或3e8十六进制)。以下是注册表值的示例:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss 
Run Code Online (Sandbox Code Playgroud)

更多细节: