程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SyBase數據庫 >> SyBase綜合文章 >> 巧改字段還原SYBASE數據庫密碼

巧改字段還原SYBASE數據庫密碼

編輯:SyBase綜合文章

對於中小企業來說通過數據庫來管理企業內部應用信息是最直接和簡單的方法,因此很多企業都通過專業的數據庫管理程序實現此方法。正巧筆者所在企業使用的就是這種跨平台數據庫——Sybase,所以筆者也主要為各位IT168的讀者介紹如何恢復Sybase數據庫密碼。

一,Sybase數據庫管理帳戶及密碼概述:

對於Sybase數據庫來說丟失密碼後的恢復往往是比較復雜的,因為Sybase對於其默認的管理帳戶防護措施是非常高的,即不會發生SQL Server那樣SA對應的空密碼漏洞,也不會產生MySQL數據庫的root弱口令。一般來說Sybase通過dbo帳戶來直接連接和管理數據庫,數據表和相應的字段。因此本文也主要針對破解DBO帳戶的密碼來實現還原Sybase數據庫密碼的功能,還原的DBO帳戶權限是非常高的,具備針對數據庫各個表與字段的讀寫權限。

二,巧改字段還原Sybase數據庫密碼:

我們要實現巧改字段還原SYBASE數據庫功能首先要選擇一個合適恰當的SYBASE數據庫管理工具,筆者選擇的是專門的SYBASE CENTRAL。下面我們就來看看如何一步步驟還原Sybase數據庫密碼。

(1)環境簡介:

筆者所在企業一直使用著一套基於SYBASE數據庫的MIS管理系統,最近由於原管理員離職而且沒有將密碼等隱私數據順利轉交,所以企業MIS管理系統對應的SYBASE數據庫無法順利管理,平時只能夠通過前台的基於TOMCAT的WWW服務的“管理員”帳號來進行簡單配置,但是這個所謂的管理員權限並不高。因此還原並破解Sybase數據庫密碼的工作就落到了筆者身上。

(2)初次使用弱口令進行破解:

首先筆者決定針對幾個管理帳戶進行弱口令暴力猜解。

第一步:通過“開始”->“程序”->“SYBASE SQL ANYWHERE 8”->SYBASE CENTRAL啟動Sybase管理工具。(如圖1)

第二步:啟動Sybase central後我們通過其管理工具連接本地數據庫,在adaptive center anywhere 8選項上點鼠標右鍵選擇“連接”。(如圖2)

第三步:在打開的“連接”設置窗口中通過“數據庫”標簽裡的“浏覽”按鈕定位本地需要破解的數據庫文件——cmis30.db。(如圖3)

第四步:然後返回到“標識”標簽下針對幾個常見的口令進行弱口令猜解,不過都沒有成功,系統提示——“無法連接到數據庫,無效的用戶ID或口令”。這表明初次使用弱口令進行破解失敗。(如圖4)(如圖5)

(3)巧改字段還原Sybase數據庫密碼:

接下來我們使用巧改字段的方法來還原SYBASE數據庫密碼,之前筆者也對SYBASE數據庫密碼破解進行了研究,發現網絡上存在的方法都不太實用,要嘛需要提前知道SA帳號的密碼通過該帳戶來還原其他帳戶,要嘛解決辦法根本不起作用。最終經過反復研究筆者發現了這個巧改字段還原Sybase數據庫密碼的辦法,筆者在SQL ANYWHERE 7,8,9上分別測試成功。具體步驟如下。

第一步:首先我們需要下載並安裝一個二進制編輯工具,筆者選擇的是Ultraedit 14中文版。下載安裝然後選擇相應功能組件,我們保持默認即可。(如圖6)

第二步:復制必須文件到本地硬盤,這裡需要說明一點的是Sybase數據庫的信息都是以二進制進行存儲的,所以我們直接使用二進制編輯器可以查看裡面的內容,再結合已經知道的密碼保存位置就可以實現破解還原數據庫密碼的目的。(如圖7)

第三步:完成所有安裝工作我們點“完成”按鈕自動啟動ultraedit主程序。(如圖8)

第四步:接下來我們通過“文件”->“打開”找到之前要破解密碼的數據庫文件——cmis30.db,打開後可以看到對應的二進制代碼。(如圖9)

第五步:接下來我們通過“搜索”功能查找內容為“44 42 41”的字段,查找到的第一個符合信息就是DBA密碼存儲區,這個字段代表的是DBA意思,而後面的就是保存的密碼段。(如圖10)

第六步:接下來我們將如下代碼依次敲入數據庫文件中並保存——24 90 3D 40 7A F5 7C B1

CC DB 89 69 30 43 CF 00 2C E7 8B 3A BC 6C 7A CB

DE 27 05 29 07 10 33 33 0A BE 00 3E BC 01 59 01

59 01 59 01 4E 01 4E 01 4E 17。(如圖11)

第七步:通過查找“DBA”(二進制使用“44 42 41”),定位到一個位置,觀察這個區域可以發現前面一般有“dbo”、“PUBLIC”,後面有“SYS”。這個區域就是ASA保存用戶口令的數據段。按照上面提示的代碼改好後,保存數據庫,DBA密碼就是“SQL”了。

第八步:接下來我們再次通過Sybase central管理工具打開cmis30.db數據庫文件。(如圖12)

第九步:在連接數據庫時直接使用用戶名為dbo,密碼是sql即可順利連接。(如圖13)

第十步:順利連接後我們可以看到該數據庫中對應的用戶和組關系,包括public用戶組以及其他幾個默認用戶,當然也可以直接通過Sybase central查詢數據庫中的數據表以及關鍵字段,總之有了管理帳戶與密碼我們就可以通過SQL數據庫查詢語句來所以遍歷數據庫內容了。(如圖14)

(4)幾個破解技巧:

對於破解Sybase數據庫來說我們還應該掌握幾個技巧,下面筆者將其羅列。

首先有些時候我們可能只知道管理員帳號而且默認的DBA帳戶被更改了名字或者禁用,這時我們就不能夠使用上文的方法來破解了,可以解決的辦法是先通過sybase central的“實用程序”->“創建數據庫”來建立一個新的空數據庫,然後將其帳戶信息進行更改,例如我們只知道破解的數據庫管理員帳號為ZHANG密碼不知道,那麼可以通過在這個空數據庫中建立一個ZHANG帳戶,這樣就可以繼續通過上文的方法來巧改字段還原Sybase數據庫中ZHANG帳戶對應的密碼保存區信息了。

第一步:通過Sybase central管理工具的“實用程序”->“創建數據庫”來啟動創建向導。(如圖15)

第二步:接下來選擇“在這台計算機上創建數據庫”,然後點“下一步”按鈕繼續。(如圖16)

第三步:通過“浏覽”按鈕選擇數據庫文件保存位置,默認只需要輸入名稱即可,系統會自動加上.db後綴名的。(如圖17)

第四步:選擇是否創建事務日志文件,這個根據實際需要選擇即可,當然我們僅僅是為了破解密碼用的話就不用選擇創建日志文件了。(如圖18)

第五步:最後是詢問是否加密數據庫,我們一定不要點加密,否則根本無法實現破解工作,即使能夠定位到密碼存儲區保存的信息也是經過加密的,無法用上文介紹的方法破解和還原密碼。(如圖19)

第六步:數據使用的頁面大小我們保持默認設置——2048字節即可。(如圖20)

第七步:最後點“完成”按鈕結束創建數據庫向導,系統會自動建立對應的數據庫文件。之後我們再按照前文介紹的方法建立對應的ZHANG帳戶以及巧改字段來還原Sybase數據庫密碼即可。(如圖21)

小提示:

在我們針對數據庫文件的字段進行更改之前一定要將其屬性進行修改,如果數據庫文件在“只讀”狀態我們是無法編輯其內容的,取消文件屬性“只讀”選項即可解決此問題。(如圖22)

三,總結:

本方法只適用於數據庫文件沒有被加密的情況,如果在創建數據庫文件時選擇了加密數據庫,那麼本方法將不起任何作用。另外如果默認刪除了DBO帳戶而使用其他不知名的管理員帳戶來管理數據庫的話,我們也無法通過巧改字段的方法來還原Sybase數據庫的密碼。本方法在Sybase ANYWHERE 7,8,9上均進行了測試而且破解有效。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved