首页 > 数据库 >[20230508]crack oracle执行文件.txt

[20230508]crack oracle执行文件.txt

时间:2023-05-08 09:34:16浏览次数:41  
标签:count 20 XDB -- 65 crack oracle txt

[20230508]crack oracle执行文件.txt

--//昨天看了链接:https://www.xifenfei.com/2023/04/ora-07445-kglsget.html
--//提到open阶段执行如下:
----- Current SQL Statement for this session (sql_id=gtf6tgc2ycgxx) -----
select count(*) from XDB.XDB$SCHEMA s where s.xmldata.schema_url = 'http://xmlns.oracle.com/xdb/XDBSchema.xsd'
--//报ORA-07445 kglsget错误处理.这个不是启动必须的,可以规避掉该sql执行.
--//自己从来没有做过这样的事情,测试看看,千万不要在生产系统做这类测试!!

1.环境:

SCOTT@book> @ver1
PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

--//启动数据库,马上执行如下,看看共享池是否存在该语句.最好启动马上看,不然可能执行次数少已经不在共享池了.
SYS@book> @sql_id gtf6tgc2ycgxx
--SQL_ID = gtf6tgc2ycgxx
select count(*) from XDB.XDB$SCHEMA s where s.xmldata.schema_url = 'http://xmlns.oracle.com/xdb/XDBSchema.xsd';

SYS@book> select count(*) from XDB.XDB$SCHEMA s where s.xmldata.schema_url = 'http://xmlns.oracle.com/xdb/XDBSchema.xsd';
  COUNT(*)
----------
         1

--//关闭数据库略,开始crack,安全起见做一个oracle执行文件的备份在关闭数据库的情况下.

$ which oracle
/u01/app/oracle/product/11.2.0.4/dbhome_1/bin/oracle

$ cd /u01/app/oracle/product/11.2.0.4/dbhome_1/bin
$ cp oracle oracle_20230508

$ ll oracle*
-rwsr-s--x 1 oracle oinstall 239627073 2021-07-21 10:16:30 oracle
-rwxr-x--x 1 oracle oinstall 239627073 2023-05-08 09:00:57 oracle_20230508
-rwsr-s--x 1 oracle oinstall 239627073 2021-07-21 09:50:16 oracleO

2.测试:
$ strings -t d oracle | grep 'select count(\*) from XDB.XDB$SCHEMA s where s.xmldata.schema_url ='
165404960 select count(*) from XDB.XDB$SCHEMA s where s.xmldata.schema_url = 'http://xmlns.oracle.com/xdb/XDBSchema.xsd'

$ strings oracle | grep 'select count(\*) from XDB.XDB$SCHEMA s where s.xmldata.schema_url =' |wc -c
111

$ bvi -b 165404960 -s 111 oracle

09DBE120  73 65 6C 65 63 74 20 63 6F 75 6E 74 28 2A 29 20 66 72 6F 6D 20 58 44 42 2E 58 44 42 24 53 43 48 select count(*) from XDB.XDB$SCH
09DBE140  45 4D 41 20 73 20 77 68 65 72 65 20 73 2E 78 6D 6C 64 61 74 61 2E 73 63 68 65 6D 61 5F 75 72 6C EMA s where s.xmldata.schema_url
09DBE160  20 3D 20 27 68 74 74 70 3A 2F 2F 78 6D 6C 6E 73 2E 6F 72 61 63 6C 65 2E 63 6F 6D 2F 78 64 62 2F  = 'http://xmlns.oracle.com/xdb/
09DBE180  58 44 42 53 63 68 65 6D 61 2E 78 73 64 27 00                                                    XDBSchema.xsd'.

--//修改如下:
select count(*) from sys.dual
--//注意后面字符都使用空格代替.实际上我还多显示了1个字符结尾的0x00.

09DBE120  73 65 6C 65 63 74 20 63 6F 75 6E 74 28 2A 29 20 66 72 6F 6D 20 73 79 73 2E 64 75 61 6C 20 20 20 select count(*) from sys.dual
09DBE140  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
09DBE160  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
09DBE180  20 20 20 20 20 20 20 20 20 20 20 20 20 20 00

3.尝试启动数据库看看.
SYS@book> startup
ORACLE instance started.
Total System Global Area  643084288 bytes
Fixed Size                  2255872 bytes
Variable Size             205521920 bytes
Database Buffers          427819008 bytes
Redo Buffers                7487488 bytes
Database mounted.
Database opened.

SYS@book> @sql_id gtf6tgc2ycgxx
--SQL_ID = gtf6tgc2ycgxx

--//检查alert日志没有任何问题.使用一小段时间没有任何问题.

4.收尾还原.
--//关闭数据库略.
$ cp oracle_20230508 oracle

$ ll oracle*
-rwxr-x--x 1 oracle oinstall 239627073 2023-05-08 09:21:49 oracle
-rwxr-x--x 1 oracle oinstall 239627073 2023-05-08 09:00:57 oracle_20230508
-rwsr-s--x 1 oracle oinstall 239627073 2021-07-21 09:50:16 oracleO

--//再次使用bvi检查看看内容,输出略.
$ bvi -b 165404960 -s 111 oracle

标签:count,20,XDB,--,65,crack,oracle,txt
From: https://www.cnblogs.com/lfree/p/17380748.html

相关文章

  • Oracle DB服务器体系结构
    一、OracleDB服务器体系结构概览。  OracleDB服务器体系结构包含以下三种主要结构:内存结构、进程结构和存储结构。基本的OracleDB系统由OracleDB和数据库实例组成。数据库包括物理结构和逻辑结构。由于物理结构和逻辑结构是分开的,因此管理数据的物理存储时不会影响......
  • 使用 JavaScript连接Oracle 数据库(js连接oracle)
    原文链接 在建立Web交互应用程序时,一般使用JavaScript语言作为表现层,而Oracle作为背后真正的数据库。连接JavaScript和Oracle数据库需要一组技术,可以实现将JavaScript执行的数据请求发送到服务器上的Oracle数据库,这样就可以访问和操作Oracle数据库中的相关内容。 在建立Web......
  • 数据库迁移之从oracle 到 MySQL
    关键字:数据库迁移之从oracle到MySQL开场白:对于水平扩展需求很强烈的大型网站,oracle到mysql的迁徙是必然的,一个重要的因素就是Oracle数据库是收费的,而MySQL则是完全免费的,mysql经过在大型网站的考验及沉淀目前已经修复的很完美了,下面就oracle到mysql......
  • oracle第一课
    一、sql初步了解1**SQL****语句分为以下三种类型DML:DataManipulationLanguage数据操纵语言DDL:DataDefinitionLanguage数据定义语言DCL:DataControlLanguage数据控制语言1.1DML用于查询与修改数据记录包括如下SQL语句:INSERT:添加数据到数据库中UPDATE:修......
  • oracle大数据量优化
    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在where及orderby涉及的列上建立索引。2.应尽量避免在where子句中对字段进行null值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:selectidfromtwherenumisnull可以在num上设置默认值0,......
  • Oracle分区详解
    关键字:Oracle分区详解概要说明:对分区后的表进行操作和原来一样(无需任何改动)并且可以根据分区进行查询(非必须),如:select*frombpmpartition(part_b)wherepid<=18;其中part_b是bpm表中的一个分区名称。该文章通过以下五方面来整理关于分区表的概念......
  • Oracle中存储过程编译卡死
    --查看锁死的存储过程的SESSION_IDSELECT*FROMDBA_DDL_LOCKSWHERENAME=UPPER('存储过程名')--获取selectt.sid,t.serial#fromv$sessiontwheret.sidin(SELECTdistinctSESSION_IDFROMDBA_DDL_LOCKSWHERENAME=UPPER('存储过程名'))--杀掉进程--分......
  • Oracle到国产数据库DM的迁移案例
    Oracle到国产数据库DM的迁移案例 阿依纳伐 发表于2020/12/2510:37:49  3.5k+  0  0 【摘要】对于达梦数据库,我在19年之前还没有听过,第一次听到达梦,金仓数据的时候还是我们打算开始做鲲鹏专家服务的技术研讨会上,数据库专家在说国产数据库的提到达梦和金仓,感觉完......
  • oracle中int类型和number类型区别
    oracle中int类型和number类型区别 INT类型是NUMBER类型的子类型。下面简要说明:(1)NUMBER(P,S)该数据类型用于定义数字类型的数据,其中P表示数字的总位数(最大字节个数),而S则表示小数点后面的位数。假设定义SAL列为NUMBER(6,2)则整数最大位数为4位(6-2=4),而小数最大位数为2位。(2)INT类型当定......
  • Oracle 对象依赖性与对象失效
    一、起源开发A在从库查询视图遇到报错:执行的SQL为:select*fromV_TEST_JOIN具体错误信息为:java.sql.SQLSyntaxErrorException:ORA-04045:在重新编译/重新验证V_TEST_JOIN时出错ORA-16000:数据库或可插入数据库是以只读访问方式打开的二、报错原因及处理方法1.报错原......