跳转到路径导航栏
跳转到正文内容

一个容易忽视的Oracle安全问题

http://www.sina.com.cn  2008年12月29日 18:21  比特网ChinaByte
  数据库安全问题一直是人们关注的焦点之一,我们知道一个企业或者机构的数据库如果遭到黑客的攻击,而这些数据库又保存着非常重要的数据,象银行、通信等数据库,后果将不堪设想。Oracle数据库使用了多种手段来保证数据库的安全性,如密码,角色,权限等等。

  作为Oracle的数据库管理员都知道,数据库系统典型安装后,一般sys和system以及internal这三个用户具有默认的口令,数据库安装成功后,系统管理员作的第一件工作就是修改这些用户的口令,保证数据库的安全性。然而,众多管理员往往忽视了其中的一个安全问题,下面我们就将详细讨论这个问题。

  Oracle数据库系统如果采用典型安装后,除了创建前面介绍的几个用户外,另外还自动创建了一个叫做DBSNMP的用户,该用户负责运行Oracle系统的智能代理(Intelligent Agent),该用户的缺省密码也是“DBSNMP”。如果忘记修改该用户的口令,任何人都可以通过该用户存取数据库系统。现在我们来看一下该用户具有哪些权限和角色,然后来分析一下该用户对数据库系统可能造成的损失。

  启动SQL/PLUS程序,使用该用户登录进入:

  SQL> select * from session_privs;

  CREATE SESSION

  ALTER SESSION

  UNLIMITED TABLESPACE

  CREATE TABLE

  CREATE CLUSTER

  CREATE SYNONYM

  CREATE PUBLIC SYNONYM

  CREATE VIEW

  CREATE SEQUENCE

  CREATE DATABASE LINK

  CREATE PROCEDURE

  CREATE TRIGGER

  ANALYZE ANY

  CREATE TYPE

  CREATE OPERATOR

  CREATE INDEXTYPE

  可以看到该用户不是SYS或SYSTEM管理用户,然而,它却具有两个系统级权限:UNLIMITED TABLESPACE和CREATE PUBLIC SYNONYM。

  看到这两个权限你应该马上想到,这些都是安全隐患,尤其是UNLIMITED TABLESPACE,它是破坏数据库系统的攻击点之一。如果这时候你还依然认为,即使有人利用这个没有修改的口令登录进数据库也造成不了什么损失的话,我就不得不提醒你:该用户具有UNLIMITED TABLESPACE的系统权限,它可以写一个小的脚本,然后恶意将系统用垃圾数据填满,这样数据库系统也就无法运行,并将直接导致最终的瘫痪。目前很多数据库系统都要求7X24的工作,如果出现了系统用垃圾数据填满的情况,那么,等数据库系统恢复时,恐怕不可挽回的损失已经造成了。

  为了保证Oracle数据库系统运行的绝对安全,强烈建议数据库管理员修改该用户的默认口令,不要为不怀好意的人留下“方便之门”。


本文相关下载

更多>> 
Navicat导航貓Oracle数据库管理工具 8.1.1 Lite
一个强大的Oracle数据库管理和开发工具。
DDR for Oracle 9i/10g 1.5
为中、小企业提供了一个廉价、使用简单、功能完善的数据库容灾解决方案。
MSSQL To Oracle 1.5
MSSQL数据库转换到Oracle数据库。
MySQL To Oracle 2.3
MySQL数据库转换到Oracle数据库的工具。
Oracle-to-MySQL 3.1
转移Oracle数据到MySQL服务器上。
Access To Oracle 1.5
一款将Microsoft的Access的数据库数据移植到Oracle服务器的软件。
ORACLE数据同步软件 2.0
能够将一个正在运行的数据库系统中的数据准实时的同步到另外的一个或者多个同类数据库上

>话题讨论查看全部评论

已有 _COUNT_位网友发表评论  
登录名: 密码: 匿名发表

Powered By Google 感动2008,留下你最想说的话!
flash

新浪简介About Sina广告服务联系我们招聘信息网站律师SINA English会员注册产品答疑┊Copyright © 1996-2008 SINA Corporation, All Rights Reserved

新浪公司 版权所有