Navicat导出ncx文件并解密连接密码

Navicat导出ncx文件并解密连接密码(mysql为例)

一、导出.ncx文件解密

file——导出连接——勾上导出密码——确定:
Navicat导出ncx文件并解密连接密码_第1张图片
打开生成的.ncx文件:
Navicat导出ncx文件并解密连接密码_第2张图片
复制加密的password,使用下面的python代码解密即可:

from Crypto.Cipher import AES


def DecryptNavicat(data):
    aes = AES.new('libcckeylibcckey'.encode(), AES.MODE_CBC, iv='libcciv libcciv '.encode())
    text = aes.decrypt(bytes.fromhex(data))
    # 删掉填充的字符
    return text[0:-text[-1]].decode('utf-8')


if __name__ == '__main__':
    print(DecryptNavicat('D11E8CFFBA5852F686ED2ACC3B0E8E26'))

二、查看注册表解密

从注册表中查看数据库的连接地址、账号、密码、端口
cmd命令:

reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers
reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v host          数据库连接 ip 
reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v UserName     
reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v pwd    数据库用户名数据库用户名对应的密码  hash
reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v Port          据库连接

使用解密脚本解密:
在这里插入图片描述
脚本下载连接:
https://github.com/HyperSine/how-does-navicat-encrypt-password/tree/master/python3

三、其他数据库同理。

你可能感兴趣的:(渗透测试,数据库,mysql,网络安全)