0x01 介紹python
0x02 提取密碼git
0x03 離線破解github
注:文中使用的是Navicat Premium 12.x,Navicat 11.x與12.x的加密方式有一些不一樣,實際上按照11.x的方式解密就能夠了算法
Navicat是一套快速、可靠並價格至關便宜的數據庫管理工具,專爲簡化數據庫的管理及下降系統管理成本而設。它的設計符合數據庫管理員、開發人員及中小企業的須要。Navicat 是以直覺化的圖形用戶界面而建的,讓你能夠以安全而且簡單的方式建立、組織、訪問並共用信息。數據庫
balabala,反正是挺經常使用的一個數據庫鏈接工具了,若是在實際環境中碰到了,那將是一大幸事,裏面確定會保存着不少服務器數據庫的鏈接密碼,這個時候如何將其提取出來就是一個相當重要的事情了安全
首先須要明確一下,Navicat針對不一樣的數據庫,它所存放的地點是不同的服務器
MySQL HKEY_CURRENT_USER\Software\PremiumSoft\Navicat\Servers\ MariaDB HKEY_CURRENT_USER\Software\PremiumSoft\NavicatMARIADB\Servers\ MicrosoftSQL HKEY_CURRENT_USER\Software\PremiumSoft\NavicatMSSQL\Servers\ Oracle HKEY_CURRENT_USER\Software\PremiumSoft\NavicatOra\Servers\ PostgreSQL HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPG\Servers\ SQLite HKEY_CURRENT_USER\Software\PremiumSoft\NavicatSQLite\Servers\
這裏仍是拿MySQL進行舉例吧dom
咱們先在註冊表中訪問一下工具
既然是在註冊表中,咱們直接導出其內容就能夠了加密
IP reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v host 用戶名 reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v UserName 密碼 reg query HKEY_CURRENT_USER\SOFTWARE\PremiumSoft\Navicat\Servers /s /v pwd
同理也能夠提取其餘數據庫的IP、帳號和密碼hash
當拿到這些內容的時候,咱們接下來就是進行離線破解
至於如何逆向navicat保存密碼的加密算法,做者已經寫的很清楚了,有興趣的能夠本身去看看
https://github.com/DoubleLabyrinth/how-does-navicat-encrypt-password
咱們直接拿來使用就好了,咱們使用其中的python3腳本
首先先安裝依賴pycryptodome
用法做者也已經給出了
能夠看到已經成功解密出數據庫的密碼了,至於以後的提權等內容以後再慢慢說。
本文由博客一文多發平臺 OpenWrite 發佈!