Navicat是一款被广泛应用的数据库管理工具。在渗透测试的过程中,我们可能需要获取Navicat所存储的数据库密码,以便能够直接登录到数据库。如何获取加密的数据呢?
首先,我们可以使用Win + R组合快捷键快速打开运行命令框。在打开的命令框中输入Regedit命令来打开注册表编辑器。接着,依据注册表的位置,我们可以找到存储密码值的位置:计算机\HKEY_CURRENT_USER\Software\PremiumSoft\Navicat\Servers\。在找到该位置后,选择要查看的连接名称,双击Pwd项,复制对应的值,这样我们就成功获得了密文。
接下来,我们需要进行密码解密。我们可以在php环境中运行代码,或者使用在线的php工具。同时,需要修改代码中倒数第二行的值为你的加密内容。
<?php
namespaCE FatSmallTools;
class NavicatPassword
{
protected $version = 0;
protected $aesKey = 'libcckeylibcckey';
protected $aesIv = 'libcciv libcciv ';
protected $blowString = '3DC5CA39';
protected $blowKey = null;
protected $blowIv = null;
public function __construct($version = 12)
{
$this->version = $version;
$this->blowKey = sha1('3DC5CA39', true);
$this->blowIv = hex2bin('d9c7c3c8870d64bd');
}
//...此处省略部分代码...
//解密将加密内容改为你的。
$decode=$navicatPassword->decrypt('7EAA549760822DA9A89CBBE9');
echo$decode."\n";
解密效果如下
通过以上的步骤,我们就成功获取了本地Navicat所存储的密码。