Password

定義具有特定密碼的使用者

  • March 15, 2021

我有以下使用者,其密碼來自 /etc/shadow:

userA:$5$FSRFdXhqehxiiFZV$SoIvO/4Y2tvOzIi.8p1Ud6AInQ3K5XT/WqVE5Zh4GT8:18388:0:99999:7:::
userB:*:18388:0:99999:7:::
userC:$6$SJRweUUklycIq1C$ZKCPyeM9bAoTynYioSYBOmZTATXsajucfHNE3ZNfWNmql1GKdsYCTprf/aXOspBxxzlRuDEvjRlzLf7rbx.fy0:18388:0:99999:7:::
userD:$6$YgVQv3fSdlYwR$yOn6MBS5dGhMoFmPri4tsLYFzFgd0.nc8VYrSBykn/4qQwGV31NhMtoV/VJfhNqkA.FH0oP7GKxqYyK/4/0nr.:18388:0:99999:7:::
userE:$1$8HptDKnp$w32YYwwlxi9F.2JDO/gSA.:18388:0:99999:7:::
userF:$6$DWKlq62oU9k8O/z$aMNpueRgSIcILIpSMNV.gnSven6kgNbJ4QJlQM1E32snjhndk3LvfWtnR4NoiFIE4NwC7Kga7PZTlWDaxD0Gd1:18388:0:99999:7:::
userG:X014elvznJq7E:18388:0:99999:7:::
userH:$6$yhVabCDsrFv$CImM3mQGwX6Scbi/mGsl/jwKFJcdnsEq/Wjlve6ApB21ytw6/.weDMi6QkjJh3RiCO9xTBatNjwxd7vUddRS2/:18388:0:99999:7:::

此外,我知道有人使用“EasyDiamond”作為密碼。我想知道誰在使用它。我嘗試使用線上雜湊工具來獲取輸出雜湊,但不幸的是沒有得到一個匹配項。例如,對於 userA 嘗試使用 SHA-256 等對 EasyDiamondFSRFdXhqehxiiFZV 進行雜湊處理。我究竟做錯了什麼?

密碼散列方案不僅僅是密碼+鹽的單個 SHA256 或 SHA512 散列$5$$6$這太容易暴力破解了。

相反,散列被迭代可配置的次數:如果密碼散列不包含$rounds=N$說明符,則預設為 5000 次迭代。

您可以在以下網址找到該算法的完整描述:https ://www.akkadia.org/drepper/SHA-crypt.txt

OpenSSL 包含一個可用於計算密碼雜湊的工具。例如,要手動檢查您的密碼EasyDiamonduserA您可以執行:

openssl passwd -5 -salt FSRFdXhqehxiiFZV EasyDiamond

輸出將是所選密碼散列算法(選項-5指定$5$算法)與指定鹽(來自/etc/shadow行)和密碼的結果。如果它與您列出的內容相匹配userA/etc/shadow您現在就知道userA密碼是EasyDiamond.

的手冊頁openssl passwd可能有點難以訪問,因為 OpenSSL 通常為每個子命令都有一個單獨的手冊頁,並且該子命令的名稱passwd與正常passwd命令匹配。不同的發行版可能會以不同的方式解決這個問題,但一種常見的方法是使用帶有後綴的手冊節名稱:至少在 Debian/Ubuntu 系列的 Linux 發行版中,man 1ssl passwd將為openssl passwd子命令生成手冊頁。

或者,您可以使用man -a passwd獲取所有可能的手冊頁,passwd至少包括和。/usr/bin/passwd``openssl passwd``/etc/passwd

引用自:https://unix.stackexchange.com/questions/639361