第五章数据库安全.docx

上传人:b****3 文档编号:10965753 上传时间:2023-05-28 格式:DOCX 页数:29 大小:108.52KB
下载 相关 举报
第五章数据库安全.docx_第1页
第1页 / 共29页
第五章数据库安全.docx_第2页
第2页 / 共29页
第五章数据库安全.docx_第3页
第3页 / 共29页
第五章数据库安全.docx_第4页
第4页 / 共29页
第五章数据库安全.docx_第5页
第5页 / 共29页
第五章数据库安全.docx_第6页
第6页 / 共29页
第五章数据库安全.docx_第7页
第7页 / 共29页
第五章数据库安全.docx_第8页
第8页 / 共29页
第五章数据库安全.docx_第9页
第9页 / 共29页
第五章数据库安全.docx_第10页
第10页 / 共29页
第五章数据库安全.docx_第11页
第11页 / 共29页
第五章数据库安全.docx_第12页
第12页 / 共29页
第五章数据库安全.docx_第13页
第13页 / 共29页
第五章数据库安全.docx_第14页
第14页 / 共29页
第五章数据库安全.docx_第15页
第15页 / 共29页
第五章数据库安全.docx_第16页
第16页 / 共29页
第五章数据库安全.docx_第17页
第17页 / 共29页
第五章数据库安全.docx_第18页
第18页 / 共29页
第五章数据库安全.docx_第19页
第19页 / 共29页
第五章数据库安全.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

第五章数据库安全.docx

《第五章数据库安全.docx》由会员分享,可在线阅读,更多相关《第五章数据库安全.docx(29页珍藏版)》请在冰点文库上搜索。

第五章数据库安全.docx

第五章数据库安全

第五章数据库安全

数据库的任何部分都不允许受到恶意侵害,或XX的存取与修改。

数据库的破坏来源于:

系统故障;

并发所引起的数据不一致;

转入或更新数据库的数据有错误,更新事务未遵守保持数据库一致的原则。

安全问题——人为的破坏,非法访问、篡改或破坏。

发现威胁数据库安全的因素

采取相应措施两个方面缺一不可

第一节威胁

多数威胁看不见,遇到破坏都太迟了安全带、乏味单调

一.篡改伪造

对数据库中的数据XX进行修改,使其失去原来的真实性,造成影响之前是很难发现它的。

人为因素:

个人利益驱动;

隐藏证据;

恶作剧令人头疼,看起来无辜;

无知去了不该去的地方,导致无意破坏。

二.损坏

数据的真正丢失,表和整个数据库部部分或全部被删除、移走或破坏。

原因:

破坏有明确的动机,对付之既容易(只需简单策略)又困难(涉及的人很广)

恶作剧出于爱好或好奇,给数据造成破坏;

病毒感染范围大,应拒之门外。

三.窃取

一般对敏感数据的访问而完成窃取。

严重问题:

甚至当它已损害还难以发现。

原因:

工商业间谍;

不满和要离开的员工。

数据可能比你想象的重要——数据丢失比毁坏更令人苦恼。

第二节安全防范

安全管理——需要一成文的安全计划和用户手册。

没有计划就准备失败

一.安全计划制定的原则

原则:

1.切实可行用人们愿意的方法,而不是应该的方式;

2.经得起测试用自己最优秀的雇员想办法突破,让用户向你反馈意见;

3.不应广为人知特殊是一实现方法,应保密,但规则应公布,如禁止将数据存入工作站的硬盘,但只在周四晚上查看规则执行的情况;

4.需经常检查措施、威胁和可行性二次/年

二.使用OS和NOS安全措施

OS,NOS——NetWare,LANServerWindowsNT,UNIX等,都有用户管理、口令检查、数据追踪等安全防范的第一步

1.没有口令,任何人不许进入删除没有特定用户的帐户

2.特别注意Supervisor或Admin帐户它们拥有全部访问权限

方法:

指定自己的管理权限与Supervisor或Admin相同,然后不让Supervisor/Admin帐户登录,如系统不允许删除之,则为它们设定随机的口令。

3.口令策略限制使用长度、格式、常见键盘组合

4.控制访问只让用户进入其需要访问的文件、目录及其他资源,适当地设置系统标志,如Netware的删除禁止deleteinhibitDI

拷贝禁止CopyinhibitCI

三.限制可移动介质的访问

有盘工作站、有磁带工作站病毒、窃取、损坏

1.磁带驱动器

备份的很好选择方法,却不利安全防火、安全、防盗

2.软盘

易病毒感染无盘工作站,病毒检查

四.限制接触

1.登录使用时易受攻击不用时/离开一会儿,应先退出

2.锁上服务器,当从一般区域挪走服务器。

第三节数据库安全

会引发数据失密,丢失,出错等。

数据库安全性:

数据库的任何部分都不允许受到恶意的侵害或XX的存取与修改。

涉及二层意义:

一为运行安全;二为信息安全。

一.数据库安全与数据库管理系统

DBMS管理控制库(DBMS建立在OS上)。

安全的OS是数据库安全的前题。

OS应保证数据库中数据必须经由DBMS访问而不允许用户越过DBMS直接通过OS进行访问。

DBMS对数据库安全的帮助:

用户授权;

防止非授权用户使用系统;

统计数据库的安全性。

二.DBA的职能数据库管理员

数据库只有解决保密问题,才可能实现共享;

数据库用户及其访问权限应由DBA根据DBMS所提供的功能进行控制。

DBA的特权不能转让;对敏感数据需跟踪审查,以便监督其访问;一旦发现窃密企图,DBA应及时分析处理;口令要严加管理,定期更换。

主要职能:

建立用户帐号/撤消用户帐号

授予用户权限/撤消用户权限

另:

防病毒,备份等。

大多数数据库为C2级,可增加B1级的安全管理模块。

三.访问控制

1.数据库安全的基本手段略,详见第2章相关内容

2.访问控制在数据库之间是彼此独立的

3.数据库用户——用户分类

(1)一般用户(SQL中称“具有CONNECT特权的用户”)

A.根据所授予的特权,可查询或更新数据库中数据;

B.可建立视窗或定义数据的别名;

(2)具有支配部分数据库资源的用户(SQL中称“具有RESOURCE特权的用户”)

除一般用户的权限外,有:

A.可建立表,索引和簇群;

B.具有授予收回一数据库用户对其所建立的数据对象的访问权力;

C.具有对其所建立的数据对象跟踪审查audit的权力;

(3)具有DBA特权的用户

(1)和

(2)的权限外,有:

A.可访问数据库中的任何数据;

B.具有授予和撤消用户对数据库的访问权以及可建/撤数据库用户;

C.具有为PUBLIC定义别名的权限;

D.有权对数据库进行调整,重组或重构;

E.具有控制整个数据库系统的跟踪审查的权力;

说明:

授权注意事项:

A.用户标识与鉴别标识是公开的,应鉴别,如口令,对话,个人特征(指纹、声波、鉴名等),物品鉴别(钥匙、磁卡等)。

B.授权

数据库

数据对象

数据库的授权由DBA完成:

GRANT<特权类型>[{<特权类型>}]TO<用户标识>

[IDENTIFIEDBY<口令>];

<特权类型>:

CONNECT|RESOUCE|DBA

数据对象的授权由DBA或数据对象建立者完成:

CRANT<特权>ON<表名>TO<受权者>[{<受权者>}]

[WITHGRANTOPTION];

<特权>:

=ALLPRIVILEGES[<操作>{,<操作>}]

<操作>:

=SELECT|INSER|DELETE|UPDATE[{<准许修改的属性表>}]

<准许修改的属性表>:

=<属性名>[{,<属性名>}]

<受权者>:

=PUBLIC|<用户标识>

收回特权:

REVOKE<特权>ON<表名>FROM<受权者>[{,<受权者>}];

(4)数据分类,建立视图

四.数据加密

1.意义

防止窃取措施外,万一被窃取,则考虑加密。

介质,通信线路;

数据库系统本身无法控制的。

2.特点

(1)密码系统采用公开密

(2)多级密钥结构(对应库名-表名-记录名-字段名)

(3)加密机制(加/解密钥公开,相同或不相同,但加密算法应绝密;加密算法公开,但加/解密钥(相同时)应绝密,(不相同时)解密钥应绝密)

(4)良好的加密算法

3.加密数据库范围

(1)索引字段不能加密;

(2)关系运算符不能加密;

(3)表间连接码字段落不能加密(外部编码——表与表相连)。

4.加密后对原DBMS的影响

(1)无法实现对数据制约因素的定义;

(2)密文数据无法排序,分类或分组;

(3)无法便用SQL语言的部分内部函数;

(4)一些应用开发工具受到限制。

加密后如何保证数据库操作的兼容性尤其在分布式库中,仍是待解决的问题。

五.跟踪审查

一种监视措施——分系统审计(系统命令使用,客体使用)和用户审计。

跟踪审查是由DBA控制或由数据所有者控制。

跟踪审查是对保密数据跟踪,并跟踪、记录有关的访问活动,以发现窃密企图,如有重复,相似的查询。

记录在文件上audittrailfile跟踪审查记录文件,包括:

操作类型(如修改,查询等);

操作日期时间;

所涉及的数据(如表,视窗,记录,属性等)

数据的前象和后象。

DBMS相应施加和撤销语句:

A.施加AUDITSELECT,INSERT,DELETE,UPDATEON<表名>WHENEVERSUCCESSFUL

B.撤销NOAUDITALLON<表名>

第四节设计分析实例COBASE

V1.0为C1级,V2.0为C2级

一.设计

B1级对数据库中主、客体按敏感程度加以分类并增强安全审计能力。

1.安全策略是任何对数据库对象的存取行为的控制规则集合

资源授权:

由DBA完成对普通用户调用系统所管理的数据库资源的权限;

操作授权:

数据库用户将其拥有的数据库资源使用权限授予其他用户,如选择、插入等。

对数据库中主、客体定义并指派相应的准许空间和敏感度标识(无歧义以保证标识完整性)。

定义基于敏感度标识的MAC(强制存取控制),以检查规则完成系统级的存取控制,如读、写、修改等。

2.在DBMS一级上对数据库用户的创建和鉴别进行管理。

安全审计:

用户级——用户级事件是为某数据库用户所设定进行审计的事件;

  系统级——由DBA设计的,在DBMS运行期间内与系统级权限相关的事件。

以数据库表形式保存安全审计日志,并由DBA管理审计日志记录。

 

3.采用一对一进程结构,因而用户工作域的分离依赖于底层OS的TCB(可信计算基,为上层)域的隔离能力,即用户的私人工作区以进程的私有数据区的形式隔离,而对共享的数据库数据的用户分离由MAC(强制访问控制,为下层)和DAC(自主访问控制,为下层)保证。

4.多重实例

同一表中包含两条肯有同一主码的元组现象。

支持多重实例=》支持跨级别可靠性=》导致数据库的迅速扩大=》为保证主码唯一性需构造复合码,从而使操作复杂性大大增加。

COBASE牺牲一定安全性而保证数据的完整性――不可多重实例(可推出敏感数据)

相同ID的两客户有不同敏感度:

          

标识

客户ID

客户名

城市

S:

A,C 

1001

上海

P:

C

1001

西安

ID冲突

5.隐蔽信道

系统中存在某个/些通信通道可被进程利用来传递信息,而该传递方法违反了系统的安全策略。

隐蔽存储信道——存在时,非法进程可通过对合法进程的存储空间的直接/间接读写来获得或传递信息;

隐蔽时间信道——易控制。

COBASE通过设定系统的审计选项来加以跟踪。

6.体系

 

 (系统级审计,敏感度标识)

   用户   注册

       

                         安全审计

       接收SQL语句              

                                          

                   

  

        

                      

      (自主访问控制)

          

(并指派敏感度标识) (同义词表现图)

 

                       

 

 

  结果输出

DCL数据控制语句;DDL数据定义语句;DML数据操作语句

在用户一次会话期间,COBASE对用户进行连续的安全监控和响应用户的数据库请求。

二.实现

1.敏感度标识

类型MLSLABEL——对应于每一个记录,任一表都含一隐含列——LABEL,以保证系统安全性,在DDL、DML更新语句中加入相应机制,限制用户定义和使用该种类型的列,但SELECT可引用MLSLABEL。

分层密级——定义主客体的敏感程序 SECRET-LEVEL

组成 

    非分层范围——定义该敏感度标识在该分层密级所覆盖的安全域集合

NON-SECRET-RANGE

2.数据字典的扩充 

完成强制存取控制,需在数据库中保存(扩充数据字典):

A.对可用敏感度标识安全域的定义;

B.用户许可空间;

C.数据敏感度标识的属性。

      

    

(1)字典表SYSTTABLES增加字段:

AUDIT-SCOPEMLSLABEL[SCRETLEVEL]标识分级密级。

OPERATION-AUDIT-SETCHAR(3)11种操作,每操作2位:

一位表示对表操作成功的审计;

                    另一位表示对表操作不成功的审计。

ROWLABEL1MLSLABEL表示该表所能允许插入

ROWLABEL2 MLSLABEL的记录的密级上下界。

TABLE-MLSLABELMLSLABEL密级标识,记录对表的审计设置:

0未设、1设置。

(2)扩充字典表

SYSTABCOLS增加列:

LABELMLSLABEL

  每表均需扩充,用于对每记录加一敏感度标记,从而实现MAC处理。

(3)数字字典表

SYSUSERAUTH增加字段:

 AUDIT-SCOPEMLSLABEL[SECRET]同

(1)的。

OPERATION-AUDIT-SET CHAR(3) 用于记录用户的审计设定,与

(1)的类似。

(SPECIAL-AUTHORITY) MLSLABEL[3][SECRET-LEVEL]

用于记录授予用户的特殊权限,如READ-DOWN、

WRITE-UP、WRITE-DOWN。

SYSTEM-AUDIT-SET CHAR(6) 用于记录系统中的审计操作的设置。

  USER-MLSLABELMLSLABEL 用于记录用户的敏感度标识。

说明:

SPECIAL-AUTHORITY机制有三种策略:

A.只指定单一级别;

B.指定多重级别;

C.同时指定密级和非分层范围。

  代价高

(4)内码与标识转换增加的

字典表LEVEL-TRANSLATE字段:

CODE CHAR(SECRET-LEVEL/8)

      DESCRIPT CHAR(30)

  字典表SCOPE-TRANSLATE字段:

      CODE CHAR(NON-SECRET-RANGE/8)

      DESCRIPT CHAR(30)

(5)建立新字典表

A.审计操作表SYSAUDIT-ACTION以实现审计操作的表达与内码之间的转换:

NAMENOT NULL CHAR(27)

      ACTION  NOT NULL NUMBER

B.审计结果表SYSAUDIT-TRAIL系统安装时创建的

      TIMESTAMPNOT NULL DATE

      USERIDNOT NULL CHAR(30)

      ACTION   NOT NULL NUMBER

    RETURNCODE NOT NULL NUMBER

      USERHOST CHAR(240)

      TERMINAL  CHAR(240)

      TABLENAME CHAR(30)

      OBJNAME CHAR(30)

      SECRETLABELMLSLABEL

3.SQL语句的执行

执行时必须保证对实体敏感度标识属性的完备支持。

(1)SQL语法及标识指派

扩充DDL与DCL中对数据库对象及用户的定义,至少扩充一个MLSLABEL列。

在DML操作时,LABEL对用户是透明的,用户不必也不能对LABEL作增删改操作,但可将敏感度标识作为查询的一判断条件或作为输出列。

(2)优化存取

增加MAC会影响单位效率(尤在进行审计后)

A.文件方式——将不同密级的元组存放到不同数据库之中;

B.索引方式——以密级标识为索引段;

C.聚集方式——将每表中具有相同密级数据聚集在一起,存取效率可最高,但聚集的建立与维护代价很大;

D.在语言层修改查询条件(COBASE中使用)——查询条件中增加密级筛选条件。

(3)执行时的元组标识

A.一元操作

如Insert(系统会自动插入LABEL列)、DELETE、Update(不允许更新LABEL列)。

MAC处理简单,只需对比主、客体的LABEL而决定是否接受存取要求。

B.二元操作

如Join操作:

取两关系中该连接元组的两个敏感度标识的最小上界LUB,即结果标记的分层密级为各标记分层密级的最大值,非分层范围为各标记的非分层范围的并集。

MAC处理复杂。

例:

关系模式Customer模式的Cust表:

LABELCUST-IDCUST-NAMECITYPHONE

S:

A,C1001李上海87621132

C:

C1003赵西安5267381

P:

A,D1004孙北京63941104

关系模式ORDFR模式的ORD表:

LABELorderIDpay-typeorderdateshipdateCUST-ID

C:

A9003cash97-02-0597-03-181003

C:

B9004credit96-10-1197-03-051004

假定分层密级S,C,P(S>C>P);非分层范围{A,B,C,D}的子集。

某用户USERA(LABEL为C:

A,C)提出一查询连结:

SELECTCUST-NAME,PAY-TYPE,ORDER-DATE

FROMCUSTOMERCUST,ORDERORD

WHEREORD·CUST-ID=CUST·CUST-ID;

则查询得临时表TEMPTAB:

LABELCUST-NAMEPAY-TYPEORDER-DATE

C:

A,C赵CASH97-02-05

C:

A,B,D孙CREDIT96-10-11

其中C:

A,C为C:

A与C:

C的最小上界;

C:

A,B,D为C:

B与P:

A,D的最小上界。

4.其他处理

(1)MAC特权

当DBMS中的主,客体加上敏感度标识之后,主体的读写能力将大大地受MAC限制,为实现在特殊情况下的特别存取(数据库Export/Import,联机备份等),系统为用户提供特权标识(WRITE-DOWN,WRITE-UP,READ-UP等)——系统特权,即赋MAC特权,授权者为可信用户。

(低级别用户接触高级别的数据;高级别用户向低级别传数据。

用户有了系统特权,就可适当地进行跨密级的存取操作。

(2)多重实例与隐蔽信道

采用简单主码处理——同一张表中的记录存在该主码处,则拒绝插入或修改为同值的元组。

5.发展

(1)数据加密;

(2)细化数据的标识粒度现仅支持行级,发展到列级

(3)扩充主码——实现多重实例。

第五节其他安全数据库产品

一.安全数据视图原型

DoD的A1级,斯坦福所SRJ·Gemini和Oracle公司合作完成。

1.结构

 

说明:

可信前端=MSQL处理器+资源管理+DBMS内核;

可信OS相当于GEMSOSTCB。

2.组成

(1)GEMSOSTCB由强制安全内核和非强制TCB(可信计算基)组成。

A1级

强制安全内核实现:

用户认证,可信路径,包含用户许可安全级的表管理、强制安全管理员接口。

8个保护环。

非强制TCB实现:

自主存取控制,提供一安全审计和组接口。

(2)资源管理器

一TCB之外的特殊目的的操作系统,支持ORACLEDBMS和安全数据视图模型所需的功能——建立文件系统,建立高级设备驱动器,将DBMS管理的高级对象映射为GEMSOS TCB管理的低级对象等。

(3)ORACLE强制原型

负责低级关系的管理,由ORACLE运行时的环境组成一预处理器。

(4)MSQL

为安全数据视图工程开发的,特殊的能处理多级关系的SQL。

(5)用户层

管理用户接口,此层可以是非可信的。

二.A1级安全DBMS——ASD

美,汤普森·拉莫·伍尔德里奇公司TRW多级关系DBMS,ADA语言开发

运行在UNIX环境,将来运行在A1SecureOS上。

1.主要特征

系统保证数据同时受自主存取控制+强制存取控制的保护,允许可信系统与非可信系统互连。

2.结构

 

ADS进程

 

说明:

不可信代码——不正确操作时,可能导致泄露保密信息的代码;

可信代码——不会导致泄露保密信息的代码。

3.说明

(1)三种模式

A.局域网的DBMS服务器;

B.宿主计算机(单级或多级),即后端DBMS;

C.作为A1级Secure操作系统多级宿主计算机的常住宿主DBMS。

(2)ASD中对每个DBMS用户,构造一不可信进程,它继承用户进程的安全级别。

非可信进程间的通信由TCB管理,它保证进程仅以自己的安全级发/收信息。

(3)可信接口支持用户与DBMS的交互。

(4)可信实用程序集合用于支持数据库的建立,维护功能,负责存取数据。

三.SybaseSecureServer

B1,B2两版本,B1版是建立在B1安全的UNIXOS上;而B2版是直接建立在裸机上的。

使用SQL;分权分级管理。

层次结构:

一层为注册、用户许可;二层为存取控制;三层为能限制数据存取的视图和存储过程。

B1级:

在原C2级上增加安全管理模块SMB。

功能:

强制访问控制;强化口令管理;三权分立;审计;SMS/DBMS自身安全。

指标:

安全;可用;兼容。

 

访问监督器

SMS/SYBASE

1.功能

(1)用户认证——验证用户角色,验证安全级别有效性;

(2)强制/自主存取控制;

(3)对与安全有关的事件作审计(存在Sysaudits的系统表中);

(4)区分数据库中不同用户角色的用户责任。

2.说明

(1)域

IO域

执行域 

TCB策略域它们各自有自己的硬件域,以防止旁路

用户域(不可信用户执行的)

(2)CRC校验作物理性完整性保护,网络加密设备实现安全的点-点传输(不可信网上)。

(3)客体

客体记录在数据字典中(仅可信软件TCB才可存取)。

主客体——表的行,分配安全标记的最小客体,强制安全标识

客体  

次客体——数据库和表,它们与ACLs自主存取列表相连系

ACLs自主存取列表包含:

可对此客体存取的用户标识及操作。

(4)支持多实例

四.WinNT

1.企业级中,基于域——设计和组织网络本身的构件。

安全管理的主体:

用户和组;

工作站和服务器层次都需作身份确认工作;

具备分布式安全机制:

能提供本地安全性,获本地资源保护不必与服务器连接(本地机中存有帐户,安全策略数据库的即时副本);

集中式安全管理机制:

对C/S提供可行安全方案,在对等体系中用WinNT不是最佳选择,因为对安全性和工作关系的管理会很快失控。

2.安全子系统作用于整个WinNT系统,其组成:

A.本地安全授权机制localsecurityauthority;

B.安全帐户管理securityaccountmanager;

C.安全访问监督securityreferencemonitor;

D.存取权标assesstoken;

 E.存取控制表accesscontrollist;

F.登录过程;

G.存取控制。

这些与本地

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2