欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

破解Oracle數(shù)據(jù)庫的密碼

互聯(lián)網(wǎng)   發(fā)布時間:2008-10-08 19:03:29   作者:佚名   我要評論
要連接遠程的 Oracle 數(shù)據(jù)庫,需要知道 SID,用戶名, 密碼,當然還有最重要的 IP 地址。SID 如果被管理 員修改的話,可以利用 sidguess 來進行破解,速度非常的快,至于成功與否,就要看你的字典配置了。破解 效果如圖 1。   圖 1   Oracle 不同的版
要連接遠程的 Oracle 數(shù)據(jù)庫,需要知道 SID,用戶名, 密碼,當然還有最重要的 IP 地址。SID 如果被管理 員修改的話,可以利用 sidguess 來進行破解,速度非常的快,至于成功與否,就要看你的字典配置了。破解 效果如圖 1。  



圖 1

  Oracle 不同的版本有大量的默認帳戶密碼??墒怯行┣闆r下,Oracle 數(shù)據(jù)庫管理員把默認的密碼給修改了, 我們就要選擇暴力破解了 。如果帳戶破解成功 ,登錄上去,是 DBA 權(quán)限的話最好 ,不是的話,也可以利用 Oracle 的一些漏洞進行提權(quán)到 DBA。進入數(shù)據(jù)庫后,我一般選擇的是抓取其他用戶的密碼哈希值,然后本地 Rainbow 破解。如果同網(wǎng)段還有其他的 Oracle 數(shù)據(jù)庫,可以抓包等待其他用戶的 Oracle 登錄驗證,取出敏感 信息,然后破解。進一步擴大戰(zhàn)果。下面我就分別講講這三種破解方法及相關(guān)工具的使用。

  Quotation

  有關(guān) Oracle 密碼的基礎(chǔ)知識

  1、標準的 Oracle 密碼可以由英文字母,數(shù)字,#,下劃線(_),美元字符($)構(gòu)成,密碼的最大長度為 30 字符;Oracle 密碼不能以"$","#","_"或任何數(shù)字開頭;密碼不能包含像"SELECT","DELETE","CREATE"這類的 Oracle/SQL 關(guān)鍵字。

  2、Oracle 的弱算法加密機制:兩個相同的用戶名和密碼在兩臺不同的 Oracle 數(shù)據(jù)庫機器中,將具有相同的哈希值。這些哈希值存儲在 SYS.USER$表中。可以通過像 DBA_USERS 這類的視圖來訪問。

  3、Oracle 默認配置下,每個帳戶如果有 10 次的失敗登錄,此帳戶將會被鎖定。但是 SYS 帳戶在 Oracle 數(shù)據(jù)庫中具有最高權(quán)限,能夠做任何事情,包括啟動/關(guān)閉 Oracle 數(shù)據(jù)庫。即使 SYS 被鎖定,也依然能夠訪問數(shù)據(jù)庫。

  一、遠程暴力破解

  由前面的基礎(chǔ)知識 3,可以得知選擇遠程破解 Oracle 的最好帳戶是 SYS,因為此帳戶永遠有效。在 Oracle10g

  以前的版本在安裝的時候并沒有提示修改 SYS 的默認密碼,Oracle10g 雖然提示修改密碼了,但是并沒有檢查密碼的復雜性。如圖2 



圖 2

  可以使用 Orabrute 工具來進行遠程破解,在使用這個工具的時候,需要系統(tǒng)提前安裝好 Sqlplus,該工具的 原理很簡單,就是不停的調(diào)用 Sqlplus 然后進行登錄驗證,帳戶選擇的是 SYS,密碼則為 password.txt 中的密 碼單詞。只要登錄成功 ,就會調(diào)用 selectpassword.sql 腳本抓取出在 SYS.USER$表中的其他用戶的哈希值 , 然后退出程序。這里有個注意的地方,當?shù)诙芜\行 Orabrute 的時候,需要刪除或移動同目錄下的前一次運行 Orabrute 時生成的 thepasswordsarehere .txt 和 output.txt 文件。

  Orabrute 的使用方法為:

  orabrute

  效果如圖 3,4 



圖 3 



圖 4 Orabrute 的破解速度比較慢,我們可以采取變通的方法來破解,如果 Oracle 的數(shù)據(jù)庫版本為 Oracle10g。默 認自帶個通過 8080 端口來遠程管理數(shù)據(jù)庫的 WEB 接口,如圖 5 



圖 5

  當我們訪問 http://ip:8080/oradb/public/global_name 時,會彈出認證信息,這種 HTTP 的基本驗證,有好 多的工具可以快速破解,可以選擇著名的 Hydra,我這里選擇的是圖形界面的 wwwhack,設(shè)置好用戶名為 SYS, 選擇字典,就可以破解了。速度要比通過 Orabrute 來破解快許多。效果如圖 6 所示



圖 6
二、以 DBA 權(quán)限登錄后的破解

  當?shù)玫揭粋€遠程登錄的帳號后,可以使用 Checkpwd 來驗證數(shù)據(jù)庫中所有的缺省用戶的默認密碼。Checkpwd 是采用遠程破解的,速度比較慢。不過能清晰的看出每個帳戶的狀態(tài)(過期,鎖定),Checkpwd 的使用方法為:

checkpwdusername/password@//ip:port/sidpasswordfile
效果如圖 7 所示



圖 7

  我們也可以使用 Sqlplus 直接登錄到 Oracle 數(shù)據(jù)庫,然后使用 select username,password form dba_users 命令查看數(shù)據(jù)庫中的用戶名和密碼,然后本地用 Cain 來破解,如圖 8 所示?!?



圖 8

  本地破解速度是非??斓模彝扑]先選擇字典破解,在 Cain 中點選的 Cracker 標簽,然后右鍵點擊先前導入 好的用戶名和哈希值,選擇"Dictionary Attack"選項,就可以字典破解了。效果如圖 9,圖 10?!?



圖 9

  



圖 10

  字典攻擊無效果的時候,可以采用 RainBow 破解,Cain 自帶了 Rainbow 表生成器,打開 Winrtgen,點選"AddTable",在"Hash" 欄中選擇 Oracle,在"Min Len" ,"Max Len" 分別表示是最小密碼長度和最大密碼長度 ,"Charset"選擇密碼中的字符集,然后點"Ok"按鈕就能開始生成 Rainbow 表了,如圖 11

  



圖 11

  生成表的時間要看你的 CPU 和你剛才的 Rainbow 配置了,生成的表會占用大量的硬盤空間。不過好處是一 次生成可以多次使用。使用 Rainbow 方法進行破解的時候,會占用大量的內(nèi)存??墒撬俣确浅5目?,效率也 很高。
三、同交換機/集線器下的其他 Oracle 數(shù)據(jù)庫破解

THC 組織新發(fā)布了一款叫 Orakel 的工具,該工具分析,破解 Oracle 數(shù)據(jù)庫的脆弱遠程認證機制。經(jīng)我測試, 該工具仿佛只對 Oracle8i 的遠程登錄認證有效果。不過隨軟件附帶的文檔提供了一種攻擊方法 。如果是在同 集線器(HUB)下的其他端口有 Oracle8i 數(shù)據(jù)庫,我們知道集線器(HUB)是在同一個沖突域和廣播域中的??梢?直接使用 Ethereal 此類的抓包工具抓取其他端口的用戶連接 Oracle8i 數(shù)據(jù)庫的認證信息。我測試的時候選擇的是 Ethereal 抓包工具,因為該工具有個非常好的功能"Follow TCP Stream",可以利用這個功能,快速的找 出認證包中的 AUTH_SESSKEY,AUTH_PASSWORD,連接用戶名的值 ,然后把相關(guān)的值填入 OrakelSniffert 工具中,就可以破解了,OrakelSniffert 工具支持字典破解和暴力破解,破解速度非常快。效果如圖 12,圖13



圖 12



圖 13

如果是在交換機的環(huán)境下 (SWITCH),每個端口都是一個沖突域 ,我們無法直接的捕捉到其他端口的信息 , 但可以利用 ARP 欺騙技術(shù)或配置交換機的端口分析功能(SPAN),讓其他端口的數(shù)據(jù)包流量流經(jīng)本地,實際應(yīng) 用中,最常用的還是 ARP 欺騙技術(shù),然后使用 Ethereal 抓取認證過程,破解的方法是一樣的。

四、防護

由基礎(chǔ)知識 1 得知,默認情況下設(shè)置標準的 Oracle 密碼是很不復雜的, 但可以使用雙引號來突破 Oracle 的 設(shè)置密碼限制,通過使用雙引號能夠添加以下額外的字符

%^@$*()_ ~`-=[{]}\|;:’,

在 Oracle 中添加并賦予用戶 DBA 權(quán)限的命令如下:

SQL> create user minnie identified by "%^@$*()_ ~`=-[}[{\:’";

SQL> grant dba to minnie;

效果如圖 14 所示:



圖 14

通過設(shè)置如此復雜的密碼,可以在一定程度上防止密碼的破解。

相關(guān)文章

最新評論