【红队工具】Navicat存储密码·解密工具


免责声明

请勿利用文章内的相关技术从事非法测试。由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任,请务必遵守网络安全法律法规。本文仅用于测试,请完成测试后24小时删除,请勿用于商业用途。。

0x01 简介

参加xx攻防演练的时候,顺利拿下了一台应用服务器,发现桌面存在Navicat并且存在连接信息,但是结果是密文的,无法进一步获取数据库权限(使用CS可以顺利获取,这里场景没使用CS)。

另外一个使用场景就是:Navicat存在多个连接,忘记具体密码信息,也可以使用这个工具解在这里插入图片描述

查阅资料后发现

Navicat11版本:解密过程首先将输入的十六进制字符串转换为二进制数据,然后使用 Blowfish 算法和初始向量对每个加密块进行解密并异或运算,最终得到解密后的结果

Navicat12及以上版本:

获取方式:解密过程用于解密版本 12 的加密密码。它会先将输入的十六进制字符串转换为二进制数据,然后使用 AES 算法和初始向量进行解密,并使用填充函数进行去填充操作,最终得到解密后的结果。

关注Z0安全公众号回复【Navicat】获取工具下载链接!

关注Z0安全公众号回复【Navicat】获取工具下载链接!

关注Z0安全公众号回复【Navicat】获取工具下载链接!

0x02 实战解密过程

1、首先我们需要再Nacivat中选择导出我们的连接:
在这里插入图片描述

2、选择你需要导出的连接并一定记得勾选密码(重要)

在这里插入图片描述

3、使用文本编辑器打开导出的文件,一般是以ncx后缀进行结尾

在这里插入图片描述

4、然后找到右边 password 的一段内容

在这里插入图片描述

这里看到密文是699FF7AFA9EC7B60D20E3E5A384AEC62

5、然后下载这个脚本

在这里插入图片描述

简单说一下脚本内容
在这里插入图片描述

通过使用 PyCrypto 库中的 AES 和 Blowfish 加密算法来执行解密操作。在 NavicatPassword 类中,有两个方法用于解密:

  1. decrypt_eleven(self, string): 该方法用于解密版本 11 的加密密码。它首先将输入的十六进制字符串转换为二进制数据,然后使用 Blowfish 算法和初始向量对每个加密块进行解密并异或运算,最终得到解密后的结果。
  2. decrypt_twelve(self, string): 这个方法用于解密版本 12以及以上的版本 的加密密码。它会先将输入的十六进制字符串转换为二进制数据,然后使用 AES 算法和初始向量进行解密,并使用填充函数进行去填充操作,最终得到解密后的结果。

通过调用这两个方法,可以根据所选的版本对相应的加密密码进行解密操作。在之前提供的示例代码中,通过创建 NavicatPassword

7、使用过程

首先安装依赖 pip install pycryptodome

然后直接运行NavicatDecode.py脚本

在这里插入图片描述

顺利解密成功,经过测试Navicat各版本都可以,具体还请自测~

关注Z0安全公众号回复【Navicat】获取工具下载链接!

关注Z0安全公众号回复【Navicat】获取工具下载链接!

关注Z0安全公众号回复【Navicat】获取工具下载链接!

获取工具下载链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值