2016-01-27 55 views
0

第一次問題。解碼Plesk密碼

我有一個顯示Plesk 12.5密碼的客戶面板。現在,當我生成密碼時,我會手動輸入。但是,客戶更改密碼,忘記密碼,然後一切都會失敗。我使用Plesk API來接收密碼,但這是加密的。

$5$CngpmNFXTsfRswHH$nntnTlj0KLkhEidK.XVWgbyv9HcAE8YV/fog0C6aG17

我發現,關鍵是在/etc/psa/private/secret_key找到。

我想:

$res_non = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $hash, 'ecb'); 

$decrypted = $res_non; 
$dec_s2 = strlen($decrypted); 

$padding = ord($decrypted[$dec_s2-1]); 
$decrypted = substr($decrypted, 0, -$padding); 

但是,這並不正確返回我的密碼。

任何幫助表示讚賞,謝謝!

+7

如果正確完成,您不能從密碼中獲取密碼。只需重置密碼併爲用戶提供新密碼 – RiggsFolly

+0

據我所知,這不是一個散列。可以解密它。當時它在Plesk 11中運行。 –

+1

當然他們至少不使用[ecb](https://blog.filippo.io/content/images/2015/11/Tux_ecb.jpg)和iv。 – PeeHaa

回答

0

解密的方式確實存在,但它不是公開的,並且可能永遠不會。即使支持也不知道解密它的方式。 您可以通過mail_auth_view命令查看郵件用戶的密碼。這就是所有可以做到的。

來源 - 我曾在Plesk開發一段時間。

+0

好吧,那真是令人厭煩。這是否是一些提倡性的東西?或者我可以通過API重置密碼? –

+0

@ RamonJ.A.Smit當然,如果您有管理員訪問服務器的權限,您可以通過API或CLI重新設置密碼。 – Starl1ght

+0

我有管理員權限:-) –

1

這似乎是一個sha256crypt散列,沒有存儲輪次數(這意味着它可能是硬編碼)。如果是這樣,this isn't encrypted。散列不是加密。哈希是密碼學的一個子主題,但與加密完全分開。

  • 散列:將一組無限可能值單向轉換爲一個大但有限的可能輸出集合中的一個值。無鑰匙。
  • 加密:信息的可逆轉換,由一個祕密密鑰(和/或,在某些算法中,一個公鑰)保護。

請不要混淆二者。

0

如何通過「忘記密碼?」重置密碼?在登錄屏幕上?