- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统安全北邮
操作系统安全
周亚建
北京邮电大学信息安全中心
操作系统安全概述
操作系统控制用户程序的运行,是所有信息
系统最基本的平台之一。因此,操作系统的安全
性尤为重要。
国际上最流行的操作系统安全性等级评价标
准是美国国防部开发的计算机安全标准 (可信计
算机标准评价准则,即桔皮书)。
操作系统的安全漏洞
从理论上讲,现有的操作系统都有各自的安全
漏洞,她们的共同脆弱性主要表现在以下几个方面:
1.操作系统的体系结构带来操作系统本身的不安全,
这是系统不安全的根本原因。
2.操作系统支持在网络上传输文件,包括可执行的
文件映像,即支持在网络上加载程序。
3.操作系统可以创建进程,甚至支持在网络的节点
上进行远程进程的创建和激活,更重要的被创建的
进程可以继承其父进程的权力。
操作系统的安全漏洞 续
4.操作系统提供远程过程调用 (RPC ),RPC服务
本身也存在一些可能被非法用户利用的漏洞。
5.操作系统安排的无口令入口本来是为系统开发人
员提供的便捷入口,却可能变成黑客的通道。另外,
操作系统本身也可能留有多种隐蔽的通道。
接下来,我们以目前最具代表性的操作系统:UNIX
和Windows 2000为例,分析它们可能存在的漏洞及
如何去“忘羊补牢”。
UNIX操作系统的安全
对UNIX 操作系统的攻击可能来自两个方向:
ÿ 本地访问(local access):拥有一个真正的命令
shell即登录到目标系统。
ÿ 远程访问(remote access):通过网络或其他信道
获取访问权。
下面我们先分析UNIX操作系统对于远程访问可能存
在的漏洞及应对措施。
UNIX操作系统的安全
缓冲区溢出1
是否存在缓冲区溢出漏洞?
缓冲区溢出发生在某个用户或进程试图往一个
缓冲区(一般是固定长度的数组)中放置比原始分配
的空间还要多的数据的时候。这种行为与特定的C
函数相关联,例如strcpy() 、strcat()、sprintf()等。
缓冲区溢出通常会导致段越界异常的发生。
缓冲区溢出可能被精心地利用,达到访问目标
系统的目的。这种攻击已经被证明极为危险。
UNIX操作系统的安全
缓冲区溢出2
缓冲区溢出攻击的对策
1程序从一开始设计时就考虑到安全。
2考虑使用安全的编译器。
3从用户或其他程序接收输入时,必须验证参数的
有效性,包括对每个变量的边界检查,特别是环境
变量。这样很可能会减缓某些程序的速度,但是却
往往增强了每个应用程序的安全性。
UNIX操作系统的安全
缓冲区溢出3
4使用fget() 、strcpy() 、strcat()等系统调用时,注
意检查每个函数的返回值。
5最大程度减少使用用户ID到root的程序。这样即
使攻击者成功地执行了缓冲区溢出攻击,他们也不
得不继续把自己的特权升级到root 。
6最重要的是使用所有相关的由厂家提供的补丁。
检查每个函数的返回值。
UNIX操作系统的安全
输入验证漏洞1
是否可能发生输入验证攻击?
PHF是随早期版本的Apache Web服务器和NCSA
HTTPD标准提供的一个CGI脚本。不幸的是,这个程
序没有确切地分析并验证所收到输入的有效性。
从这个漏洞能获取用户的ID及经加密的密码(前
提是密码文件未做隐蔽处理)。这样,技能不足的攻击
者会尝试破解该密码文件,然后登录到脆弱的目标系
统上;而技能丰富的攻击者能够获取访问服务器程序
的用户ID 的特权,执行任意命令。
UNIX操作系统的安全
输入验证漏洞2
输入验证攻击对策
1加强编程行为的安全性是最佳的预防性安全措施
之一,编写完程序之后应该审计并测试所有的代码。
2确保程序和脚本只接受该接收的数据而忽略其他
任何数据,这一点非常关键。
UN
文档评论(0)