Oracle默認管理員到底怎么回事?
近日JDeveloper 11g新版本剛剛發布,通過閱讀Oracle相關文檔發現ADF應用的部署和發布方式在新版本中做了一些更改,于是今天想進行下研究和測試,啟動JDeveloper自帶的WebLogic,并打開控制臺頁面后,輸入用戶名密碼weblogic/weblogic進行登錄,卻發現無法正常登錄,提示用戶名/密碼錯誤。試驗了幾次不成功后,求助于Oracle官方提供的文檔,在e13852.pdf中有段關于用戶名和密碼的描述.
原來是在WebLogic 11g(即WebLogic10.3.1)版本中Oracle默認管理員密碼做了修改,這里給出的是welcome1,但是在控制臺登錄頁面進行測試后發現仍不能正常登錄,于是轉到boot.properties文件(…\system11.1.1.1.33.54.07\DefaultDomain\servers\DefaultServer\security)中查看是否跟之前版本有所變動.發現了與之前版本的不同點,之前版本的用戶名密碼采用的是3DES加密方式,而在新版本中,采用的是AES加密.
最后,經過查證,在新版本的WebLogic中,用戶的密碼必須包含數字,因此Oracle將WebLogic的默認管理員密碼設置成了weblogic1,而非其文檔中描述的welcome1,即用戶名和密碼為weblogic/weblogic1。不過,以上內容都是在JDeveloper 11g新版本自帶的WebLogic中進行測試,獨立版WebLogic還需后面進行驗證.
安裝ORACLE時,若沒有為下列用戶重設密碼,則其默認密碼如下:
用戶名/密碼:sys/change_on_install 登錄身份:SYSDBA或SYSOPER
說明:不能以NORMAL登錄,可作為Oracle默認系統管理員system/manager,SYSDBA或NORMAL不能以SYSOPER登錄,可作為Oracle默認系統管理員sysman/oem_temp,sysman 為oms的用戶名
Oracle默認管理員密碼是固定的,這是為了安裝和調試的方便。Oracle數據庫中的兩個具有DBA權限的用戶Sys和System。筆者發現很多國內網站的Oracle數據庫沒有更改這兩個用戶的密碼,其中也包括很多大型的電子商務網站,我們就可以利用這個缺省密碼去找我們感興趣的東西。
進行測試前我們先來了解一些相關的知識,我們連接一個Oracle數據庫的時候,需要知道它的service_name或者是Sid值,就象mssql一樣,需要知道數據庫名。那如何去知道呢,猜?呵呵,顯然是不行的。這里我們先講講oracle的TNSlistener,它位于數據庫Client和數據庫Server之間,默認監聽1521端口,這個監聽端口是可以更改的。但是如果你用一個tcp的session去連接1521端口的話,oracle將不會返回它的banner,如果你輸入一些東西的話,它甚至有可能把你踢出去。這里我們就需要用tnscmd.pl這個perl程序了,它可以查詢遠程 oracle數據庫是否開啟(也就是ping了),查詢版本,以及查詢它的服務名,服務狀態和數據庫服務名,而且正確率很高。
理論方面的講完了,如果還有什么不懂的可以去查找相關資料。現在開始測試吧,需要的工具有:ActivePerl,Oracle客戶端,Superscan或者是其它掃描端口的軟件,Tnscmd.pl.我們先用Superscan掃描開放了端口1521的主機,假設其IPxx.xx.110.110,這樣目標已經有了。然后我們要做的就是用Tnscmd.pl來查詢遠程數據庫的服務名了.從上面得到的信息我們可以看出數據庫的服務名為ORCL,然后我們就可以通過sqlplus工具來遠程連上它了,用戶名和密碼我們用默認的 system/manager或者是sys/manager(Oracle默認管理員),其他的如mdsys/mdsys,ctxsys/ctxsys等,這個默認用戶和密碼是隨版本的不同而改變的。
如果密碼正確,那么就會提示connected,如果不行,再換別的默認用戶名和密碼。經過筆者的嘗試一般用dbsnmp/dbsnmp都能進去。當然如果對方已經把默認密碼改了,那我們只能換別的目標了。但是我發現很多都是不改的,這個就是安全意識的問題了。
附錄 Oracle默認管理員密碼
1.用戶名:sys 密碼:change_on_install
2.用戶名:system 密碼:manager
3.用戶名:scott 密碼:tiger
【編輯推薦】