学院首页>网络编程>ORACLE>[Oracle]Oracle Database缓冲区漏洞

[Oracle]Oracle Database缓冲区漏洞

作者:orc 来源:绿盟科技 添加时间:2006-5-26 9:53:14

* 限制对DBMS_SNAPSHOT_UTL软件包的访问:

  -- WARNING: This workaround may cause your application to work incorrectly

  -- if it depends (directly or indirectly) on any of the affected database objects.

  -- REVOKE_EXECUTE_PRIV: This procedure revokes all the EXECUTE privileges granted

  -- to the database object identified by the parameters P_OWNER and P_OBJECT_NAME.

  CREATE OR REPLACE PROCEDURE REVOKE_EXECUTE_PRIV (P_OWNER IN VARCHAR2,

  P_OBJECT_NAME IN VARCHAR2) AUTHID CURRENT_USER IS

  CURSOR my_cur IS

  select grantee from dba_tab_privs where owner = P_OWNER AND TABLE_NAME = P_OBJECT_NAME;

  BEGIN

  FOR my_rec IN my_cur

  LOOP
  
  DBMS_OUTPUT.PUT_LINE ('Revoking EXECUTE privilege from '    my_rec.grantee);

  EXECUTE IMMEDIATE 'REVOKE EXECUTE ON '    P_OWNER    '.'    P_OBJECT_NAME   ' FROM '    my_rec.grantee    ' FORCE';

  END LOOP;

  END REVOKE_EXECUTE_PRIV;

  /

  -- To remove all execute privileges granted on vulnerable objects execute this PL/SQL:

  BEGIN

  REVOKE_EXECUTE_PRIV ('SYS', 'DBMS_SNAPSHOT_UTL');
  END;

  /

  -- To remove execute privilege granted only to PUBLIC role on vulnerable objects

  -- execute this PL/SQL:

  REVOKE EXECUTE ON SYS.DBMS_SNAPSHOT_UTL FROM PUBLIC FORCE;

  厂商补丁:

  Oracle

  目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

  http://www.oracle.com
(e129)

第 2 页,共 2 页 [1] [2]
站内搜索