课程学习 · 2022年11月19日

信息系统安全学习整理(三)

1、试简述操作系统对一般对象常用的访问控制方法,分析这些方法的特点并比较之。

操作系统对一般对象的访问控制方法有:访问目录、访问控制列表和访问控制矩阵。

  • 访问目录,每个用户有一个访问目录,这个目录的每一个项记录了文件名、访问权限、文件的指针。特点是易于实现但又诸多问题:对于所有用户都可访问的共享对象,如果数量较多则目录列表会很长;如果要撤消某一个共享对象的访问权限,要更新很多目录,带来的开销很大;此外,文件别名也会造成访问目录法的可能带来的冲突。

  • 访问控制列表,每个文件对象都有一个列表,列表中包含可以访问该对象的所有用户,以及用户具有的访问权限。特点是可以在列表包含默认用户以及相应的访问权限,对于特殊用户可以在列表上说明其访问权限,而其他用户则是默认的访问权限,于是节省了很多开销。

  • 访问控制矩阵,每一行代表一个用户,每一列代表一个文件对象,对应的表中的每个格子表示一个用户对某一个对象的访问权限,即<主体,对象,权限>的三元组。特点是访问控制矩阵是一个稀疏矩阵,许多主体对大多数对象没有访问权。就造成了许多空间的浪费,并且查找时会有很多的空白内容,效率低下。

2、试简述unix系统中Suid访问许可的特点以及应用。

SuidSet User ID。在unix系统中,对一个可执行文件设置Suid位,其他用户在运行该程序时获得文件主的访问权限,可以对该文件主的其他文件也有完全的访问权限,直到退出该程序就恢复其原来的权限。

应用如利用Suid访问许可修改unix系统的口令。用户只能通过运行代理程序来修改自己的口令,用户临时获得该程序文件主root的权限,可以访问口令文件,而用户自己不能直接修改口令,使系统口令的修改得到了安全保证。

3、何为salt口令?其作用是什么?采用salt口令时的用户鉴别过程。

salt口令的作用是防止在针对加密口令的撞库攻击,即密文口令系统中通过查找相同的口令密文来猜测口令。在原来的口令中加上扩展信息salt,即使口令相同但机上不同的salt,密文也不同,避免了相同的口令密文推测口令的情况。salt可以是口令创建时间或用户唯一标识这种不同的东西,创建用户的同时在口令表中要登记相应的salt,以后每次登录时,找到这个用户的salt附加在用户输入的口令上,求得相应的口令密文,跟口令表中的口令密文做比对即可。

4、试简述数据库的两阶段更新方案。

两阶段更新的过程可分为两个阶段:意向阶段和永久更新。原因是防止修改数据的途中系统崩掉了,数据库的完整性一致性有可能被破坏,所以采用两阶段更新方案。

  • 意向阶段。首先检查数据库中COMMIT_FLAG值以决定是否可以执行意向阶段。在这个阶段计算结果,并将其保存于一些临时变量中,不会对数据库做任何修改,所以即使系统故障,对数据库中的内容不会造成损坏。第一阶段的最后事件是设置提交标记,系统进入第二阶段。

  • 永久更新阶段(提交阶段)。在数据库中设置COMMIT_FLAG,复制TCLIPS到数据库中的CLIPS,复制TBUDGET到数据库中的BUDGET,复制TREORDER到数据库中的REORDER,在日志中标明事务结束,清除COMMIT_FLAG。如果在这个阶段系统出现故障,则系统恢复后只需这一阶段的操作。

5、举例说明数据库统计推理攻击的原理以及常用的对策。

数据库统计推理攻击是一种通过非敏感数据(如一些敏感数据的统计结果,比如平均值,或者中值)推断或推导敏感数据的方法。例如基于平均值的攻击:如果攻击者能够操纵对象组,则通过修改一些数组中的数据,看平均值的变化就可以精确地泄露个体数据。再如l基于中值的攻击:中值即为一个有序数列的中间值,如果所选择的数据中有一个是数据刚好在中值的交集中,则可以根据中值得出个别值。

常用的对策有查询控制和数据项控制,其中数据项控制包括有限响应禁止、组合结果、随机样本和随机数据扰乱、查询分析等。