2024年6月8日发(作者:)
维普资讯
第29卷第4期
计算机工程与设计
2008年2月
Vo1.29 NO.4
Computer Engineering and Design
Feb.2008
Windows Vista操作系统安全性技术研究
罗晓波, 李 波, 徐良华
(江南计算技术研究所,江苏无锡214083)
摘要:为提高操作系统的安全性,Windows Vista对早期版本的一些安全特性进行了增强,并增加了很多全新的安全特性
如:用户账户控制、最小权限策略、数据保护、安全启动、网络访问保护等。通过研究这些安全特性的机制原理和实现过程
对Visat操作系统的安全性做了一个整体的概括,并分析了一些安全机制可能存在的脆弱性。
关键词:操作系统;用户账户控制;安全启动;最小权限策略;网络访问保护
中图法分类号:TP316.7 文献标识码:A 文章编号:1000.7024(2008)04.0807—05
Research on secure technology of Windows Vista
LUo Xiao—bo.LI Bo.XU Liang—hua
(Jiangnan Institute ofComputing Technology,Ⅵ i 214083.China)
Abstract:In order to improve the operating system securitY,the security features ofearly edition Windows Vista are enhanced nad a lot
ofbrand—new security features are added.Such as user account control,least privileged user account,data protection,secure startup,
nad network access protection.The securiyt features of Vista are summarized overall by researching the rational and implementation,
nad the vulnerabilities of some securiyt features are analyzed.
Key words: operating system; user account control; secure startup;least privileged user account; network access protection
0引 言 1 Vista安全特性分析
随着2006年l1月底Windows Visat操作系统(以下简称 WindowsXP要比9x系列的操作系统安全和稳定得多,但
vis诅)的全面推出,关于此操作系统的商业宣传与技术讨论一
是安全漏洞依然不断地被发现和利用。微软为了改变这一被
时间成为IT产业的焦点。 动局面,经过数年的努力,开发出Visat操作系统。这次推出
使用了多年的WindOWS 2000/XP系统,发布之初,无论是
的Vista史无前例地强调了其安全特性,主要体现在以下这些
功能还是安全性都是值得肯定的,但是随着使用的普及,其安 方面:用户账户控制和最小权限策略,IE(intemetexplorer)的安
全缺陷不断被发现和利用,已经完成了一代操作系统的历史
全性改进,数据保护措施,可信计算模块和BitLocker的引入,
使命,将逐步退出历史舞台,取而代之的无疑将是这~“全新” 改进的Windows防火墙,全新的服务。所有这些特性都是针
的Visat操作系统。 对以前2000/XP的薄弱环节进行的改进,这将使得大多数的针
纵观近年来的计算机系统安全事故,绝大多数都是操作 对2000/XP系统的蠕虫、木马或病毒等恶意代码在Visat系统
系统的安全缺陷造成的。操作系统的设计和实现中存在的安 上难以奏效,从而实现微软的安全性目标。
全问题,随着使用的普及而不断暴露。操作系统的安全问题
1.1用户账户控制和最小权限策略
不仅影响着广大的普通用户,也给国家关键部门的信息安全 用户账户控制(user account control,uAc)“ 是微软为提高
带来了严重的威胁。操作系统的安全问题关系着国计民生的
操作系统安全而在Visat中引入的新技术,它要求所有用户在
各个方面。
标准账户模式下运行程序和任务,使用普通权限,阻止未授权
为提高操作系统的安全性,Visat对早期版本操作系统的 的程序安装,并阻止普通用户进行不当的系统设置。
一
些安全特性进行了增强,并增加了很多全新的安全特性。 Windows 2000以前的版本账户权限的层次少,管理员权
论文研究了这些安全特性的机制原理和实现过程,并分析了
限滥用,安全性十分薄弱。在Windows2000之后,微软才逐步
一
些安全机制可能存在的脆弱性。 在系统中引入用户权限的控制。但是为了操作的简便,相当
收稿日期:2007-04-02 E-mail:xbluo@163.com
基金项目:国家863高技术研究发展计划基金项目(2006AA01Z43 1)。
作者简介:罗晓波(1982一),男,湖北大悟人,硕士研究生,研究方向为信息安全; 李波0980--),男,陕西大荔人,硕士,研究方向为信息
安全; 徐良华(1963一),男,安徽无为人,博士,高级工程师,研究方向为脆弱性技术、信息安全。
-——
807-——
维普资讯
多的Windows用户日常使用的是对机器有绝对控制权的管理
员账号。虽然这样用户使用方便了,但也给木马和病毒提供
了方便。Vista为解决这些问题,要求一般的进程以普通用户
权限运行,并且限制管理员的权限 ,用以限制恶意代码对计
URL的分析进行了重新设计,减少了在URL上利用漏洞的攻
击【6I,防止URL欺骗。
l-3数据保护
数据保护措施主要包括:缓冲区溢出保护、内核保护技术
和BitLocker整卷加密”I。
算机系统所带来的损害。这样当用户希望安装新的软件,或
者更改系统设置,需要输入凭证并验证该进程。启用UAC的 多年来,利用缓冲区溢出技术发动的网络攻击是最广泛
Vista,仍然可以使用管理员账户登录系统。不过,这时的管理
员账户只是受限的管理员模式,程序运行时,所能得到的权限
将只是普通用户权限,不足以对关键的系统设置进行修改。这
样的机制类似于在操作系统与恶意代码之间加入了一个隔离
层保护,最终提高操作系统的安全。而安装新应用程序、更改
系统日期或时间以及大部分控制面板中的设置项都需要受到
和最有效的 。为应付这种情况,Vista特别设计和实现了缓冲
区溢出保护机制,如地址空间装载随机化(address space layout
randomization,ASLR)、不可运行区域设定NX等。并且在开发
实现这些保护机制时,使用了安全开发生命周期(SDL)、威胁
模型和代码审查等技术和手段 来进一步保证编码的安全性。
在缓冲区溢出攻击中,数据的存储超过了缓冲区的界限,多出
UAC的控制并提出询问0 ,得到管理员的授权后,操作才可以
继续。如果当前登录系统的账户不具有相应的权限,Vista首
先将会显示一个对话框,要求用户输入~个具有管理权限的
账户的用户名和密码,如果输入的信息是正确的,则可以完成
操作,否则将会被拒绝。
Vista采用UAC后,管理员特权不复存在,标准用户也是
最低权限用户,对硬件驱动和注册表只具有读权限,只能写入
自身的或指定的公共区域,不可以安装驱动,不能启动或停止
服务,不可更改防火墙或系统设置,阻止非授权的程序运行,从
根本上限制木马或病毒等恶意代码的行为,使其难以发挥作用。
vis协实现了一个最低特权的用户账户,这个账户只有很
有限的权限来应对日常的工作。同时,为了兼容以往的程序,
Vista还实现了文件和注册表虚拟技术,允许没有写权限的普
通用户能在~个被保护的系统区域中仍然能得到虚拟的视图 。
比如,如果一个为2000/XP开发的程序在vis协下需要写入c:\
ProgramFiles中的文件夹,Vista会为这个应用程序提供~个这
个文件夹的虚拟文件夹,使得该程序感觉自己写入到C:Wro—
gramFiles中了,而实际却是写入到了一个虚拟的目录下。因
此,当病毒或木马程序要攻击C:WrogramFiles ̄lntemetExplorer\
iexplore.exe这个文件时,由于文件虚拟技术,实际上真正的
iexplore.exe并未受到攻击,实现了一定的安全性。
1.2 IE的改进
vista中内置IE7.0,借助于UAC,IE不再具有过高的权限,
而是被限制在只有浏览WEB页面所需的足够的权限,这种权
限比普通用户的权限还低,称为“保护模式”的IE 。在这种状
态下,IE只对自身的临时文件夹有读和写的权力,而对于其它
文件夹最多只享有读的权力,从而杜绝了很大一部分的安全
问题。恶意代码无法自动下载和安装,系统设置也不会被IE
在后台改写。新的IE中,采用一键清除上网记录,并删除IE
的所有临时文件,一定程度上增加了对用户隐私的保护。反
钓鱼功能能够检测钓鱼攻击并向用户提出警告,对所有的网
页地址,通过地址栏旁边显示的颜色来区分安全的、可疑的和
钓鱼站点。对于具有高可靠性证书的网站,lE的地址栏将变
为绿色,以表示站点所有者已完成广泛的身份验证检查,对于
没有可靠性证书的站点,则归于可疑站点,用黄色标识,而对
于已知的钓鱼站点,则表示为红色。当然,IE必须经常更新钓
鱼站点的列表,以确保不受到钓鱼攻击。用户可以通过点击
安全状态栏看到证书和隐私的详细信息。另外,新的IE对
-——
808-——
的数据将覆盖掉邻近的内存地址。这种情况能够造成进程崩
溃,进而让系统运行恶意代码。而在Vista中,每当计算机启
动时,ASLR的功能会将关键的系统文件加载到不同的内存地
址,这样,利用这些系统文件进行攻击活动的恶意代码将无法
正确获取系统文件信息,从而提高了恶意代码运行的难度。这
种方法并不是根本措施,恶意代码的动作并没有全部受限,但
当与其它技术联合使用时,就是一种有用的安全技术,因为它
能够使Vista让恶意代码看起来有些“陌生”,提高了自动化攻
击的难度。ASLR能够将系统文件分散开来,使它们被存储在
不可预期的内存地址。在Beta 2版Windows Vista中,DLL或
EXE文件能够被加载到256个地址中的任何一个,黑客有
1/256的机会获得正确的地址。ASLR并非微软的首创。几种
开源操作系统已经在使用这种技术,如OpenBSD。而NX的
作用在于允许支持NX的CPU把某些内存区域标注为“不得
执行”,使得任何闯入这些区域的代码都不能运行,从而使缓
冲区溢出攻击代码失去了攻击能力。微软与处理器制造商展
开了合作,英特尔和AMD都在其新型处理器中提供对NX数
据执行保护技术的支持。采用了这些手段,过去的缓冲区溢
出攻击将变得相当困难。
内核保护技术是Visat新引入的技术,防止任何非授权软
件试图修改Visat的内核。它为Visat加入一个新安全操作层,
防止内核模式驱动改动或替换Visat内核的任何内容,第三方
软件将无法再给Vista内核添加任何“补丁”。这样,以往通过
改写操作系统内核来常驻系统的恶意代码将不能在Visat下
发挥作用。
BitLocker曾被称为Secure Startup,可以看出其原意是为
了确保系统的安全启动。在Vista中,BitLocker的作用不仅在
此,它还可以保护操作系统的完整性,确保系统不受非法篡
改,这体现在对Windows卷的离线保护上。BitLocker可以加
密整个Windows卷,包括页面文件、注册表、休眠文件和Dump
文件等。经过BitLocker加密后,即使硬盘被拿到其它计算机
上使用,也无法获取Windows卷中的数据,因为加密密钥被存
储在USB闪盘或可信平台模块里了。当然,密钥必须妥善保
管,如果丢失或被盗用,将带来巨大的损失。
1.4安全启动
在Visat的设计中,引入了可信平台模块(trusted platform
module,TPM)。TPM是一个含有密码运算部件和存储部件的
芯片,由自己的CPU、存储器、I/O、密码引擎、随机数发生器和
维普资讯
嵌入式操作系统等部件组成,主要完成多项安全功能和可信
计算功能,如加密、签名、认证、密钥生成等。Vista中并没有完
全按照NGSCB(next—generation secure computing base)的要求那
样对其体系结构做出全面的修改,只是实现了基于TPM的磁
盘数据保护工具BitLocker。硬件支持服务方面包括TPM驱
动和TPM Base Services(TBS)来提供对TPM资源的共享。
BitLocker加密的模式分为两种情况:TPM可用时和TPM
不可用时。
TPM可用时,又可分为TPM Only Mode和Startup Key
将及时更新恶意代码和非法软件的特征码,IE也将更新最新
的钓鱼网站,所有这些更新都涉及到认证的过程,因此能够阻
止一些伪造的补丁和其它更新。
在Visa域环境中采用了网络访问保护(tnetworkaccesspro—
tection,NAP)。NAP自身作为一个安全功能,采用客户IN.务器
模式。其工作原理是运行一个被称为“网络访问保护代理”的
服务,该服务检查当前计算机的安全状况。它能自动下载并
安装安全补丁、下载病毒库和安全设置等。在客户端链接到
网络之前(不论是经由本地局域网还是远程代理),网络访问保
护代理服务将向运行在远端服务器上的NAP服务提交一份
计算机安全状况报告。如果该计算机的安全项目不是最新的
Mode。采用TPM OnlyMode模式时,BitLocker会把系统主引
导记录(MBR)、NTFS引导扇区、NTFS引导代码和密钥等做一
个 陕照”,保存在TPM芯片中。每次系统启动时,会自动地
和原来的快照进行比较,这个过程称为一个“完整性度量”。
如果结果相同,表明系统未受到非法篡改,允许系统装载器开
始工作,解密系统卷,加载并启动系统;如果发现启动组件发
生了变化,则系统就拒绝从TPM芯片里释放磁盘的加密密钥。
如果文件已经被修改,则Vista会提示用户,并转入恢复模式,
用户提供恢复密钥后,允许访问引导卷进行恢复。而Startup
Key Mode是把TPM进行系统完整性度量时需要的口令交由
用户保管,TPM开始工作时,由用户交给TPM,然后进行后面
的度量工作。
TPM不可用时,采用USB Flash Mode。这种模式是将解
密磁盘所需要的相关密钥存放在USB闪盘里,开机时必须插
入USB闪盘,才能对Windows卷进行解密,之后才能正常访
问Vista系统。
由此可见,TPM模块和BitLocker技术的引入,保证了Vista
系统的完整性,提供了对Windows卷的离线保护,即使把硬盘
拿到其它计算机上进行破解,也是极为困难的。结合EFs(en.
crypting ifle systems),可以使得这种硬盘数据保护达到更好的
效果。EFS是一种在线加密,只要有解密所需的密钥,就可以
将被EFS加密过的文件放在其它任何~台计算机上进行解
密。而且,EFS只能够对非Windows卷进行加密,密钥保存在
系统卷中,这样,结合EFS,BitLocker不仅保护了Windows卷
的安全,同时保护了EFS的解密密钥,也就是可以保护整个硬
盘的数据不被非法读取或改写。
1.5全新的防火墙、系统更新、WindowsDefender和
网络访问保护
微软从Windows XP开始就已经加入了Windows防火墙
组件,但由于功能并不强大,大部分用户仍然使用第三方防火
墙。Vista中的防火墙有了较为完美的控制台,这一控制台基
于组策略,因此不仅可以配置单独的计算机,还可以管理多台
计算机。同第三方防火墙软件~样,Vista中的防火墙已经实
现通信的双向控制,也就是说不仅可以控制连入计算机的访
问,也可以控制向外发起的连接。此外,Vista中的防火墙整合
了IP安全策略“ ,进一步提高了操作系统的安全性,在这方面
超过了第三方防火墙。有了这些新特性,一旦Vista有了新漏
洞,通过设置适当的入站和出站策略,即可临时解决安全问
题,在补丁发布前确保计算机系统的安全性。
系统更新将自动地分配给Security Installer进行,它只对
拥有正确授权的更新补丁进行下载和安装。WindowsDefender
或者达不到服务器规定的网络访问标准,NAP将阻止其登陆
到网络或者关闭那些位于特定区域的计算机。可以通过配置
NAP服务的策略来自动升级客户端的补丁、病毒库、安全设置
等。并且域控制器还会不断检查内部机器的安全状态,未通
过系统安全状态检查的机器会被隔离到一个受控网络。NAP
有助于减少恶意代码如RootKit及病毒的影响。此功能要求
Windows Vista Server中的NAP基础结构。NAP客户端程序在
Visat中,NAP服务端程序则在Longhorn Server中,实现这样功
能需要配合使用Longhorn Server,并建立域环境。另外,Visat
的域策略得到了增强,通过AIS(application information service)
服务,可以定义域内不可以安装和不可以运行的软件。在这
种模式下,使用了NAP的主机在安装和运行软件前要通过策
略检验,否则被拒绝执行。
1.6服务增强
以前的Windows操作系统中,服务 ”基本上都以最高权
限运行,而且没有针对服务的限制机制来对各种服务进行管
理,容易出现某个核心服务被恶意代码利用的情况,众多的病
毒和木马也选择系统服务作为攻击或寄生的目标,从而获得
最高权限,达到攻击破坏或信息获取的目的。微软为了解决
这一问题,在Visat中所有系统关键服务都采用尽可能低的权
限运行,不能做越权操作,而且,Vista采用了服务隔离,即服务
运行于Session 0,而登录用户处于Session l、2等,不同的Ses.
sion之间不可交互,从而降低了被恶意代码利用的可能性。除
Windows系统服务以外,一些应用软件也会把自身的一部分
安装为服务的形式,以保证其可靠地运行。在以前的操作系
统中,这些服务都以LocalSystem用户运行“ ,从而导致系统非
常脆弱,并且没有办法对这些第三方服务进行有效管理,严重
地威胁到了系统的安全以及稳定性。Visat完全改变了这一模
式,它启用了每个服务的安全标识符(sin)“ ,该标识随后又通
过现有Windows访问控制模型(包括使用访问控制列表(ACL)
的所有对象和资源管理器)启用访问控制分区。这样用户就
可以查看ACL应用于该服务的专用资源,从而防止其它服务
和用户访问这些资源。此外,Vista不再使用LocalSystem用户
来运行服务,而是使用权限较低的LoaclService和NetworkSer-
vice用户,从而降低了服务的总体权限级别。Vista还对第三
方程序插入令牌到服务进行了限制,从而最大程度地保证了
操作系统中每一个服务的可靠性。最后,每个服务都具有单
独且惟一的SID,这样便可以利用Windows防火墙对每一个服
务进行规则限制。
——
809——
维普资讯
2 Vista脆弱性分析
以上从多个方面研究了Vista的安全特性:从硬件上的TPM
引入,到操作系统上的内核保护:从网络上的防火墙的加固,到
服务上的权限受限;从Ⅲ上对个人隐私的保护,到用户账户控
制对权限的细分。可以看出,微软确实在其操作系统的安全性
上做了很多改进,这些改进使得绝大多数运行于2000/XP的恶
2.4 BitLoeker技术的依赖性
BitLocker技术的引入在很大程度上保护了硬盘数据,能
够保护系统卷在离线状态不被非法读取,但不能抵挡在线的
攻击,即在计算机系统处于运行状态时,这些数据是无法保证
不被非法读取的。另外,来自管理员授权的攻击也是无法抗
拒的,无论是安全启动口令的泄漏还是USB闪盘数据的泄漏,
都将可能导致系统卷数据的泄漏。所以,如果安全启动所需
的USB闪盘或StartupKey的保管不当,会给攻击者方便,造成
不可挽回的损失,BitLocker技术的正常运行需要妥善保管这
些口令或者USB闪盘。
意代码不能在Vista下发挥作用,从而提高了Vista的安全性。
当然,Vista并不是无懈可击的,像这样一个高度复杂的操
作系统总会有它的不足或缺陷[14]0 2000/XP系统刚发布的时
候,也曾给一些攻击和破坏带来障碍,但随后针对2000/XP的
漏洞攻击不断出现,这也使得Vista脆弱性分析成为本文的重
2.5内核保护技术有争议 .
内核保护技术是微软为了保护系统内核完整性而设计
要研究内容。
2.1 UAC可能引发的安全问题
从表面上看,UAC限制了用户和程序的权限,在很大程度
上提高了Vista的安全性,但也极大增加了操作中的繁琐程度。
在很多用户看来,UAC在目前发布的Visia版本中的运行情况
很难称得上理想,频繁出现的验证提示给实用性带来极大的
影响。而在没有回答UAC提示的情况下禁止一切系统交互,
则更增加了客户的使用障碍。如果用户对频繁出现的UAC
对话框弄得麻木而放松警惕的时候,极有可能出现错误的决
断,让一些恶意代码得到执行的机会。
启动UAC功能会导致操作的繁复,给用户的使用带来极
大的不便,使得用户松懈从而发生安全事故;而禁用UAC功
能则无法体现Vista在这方面所作的工作,也会导致安全事故
的发生。另外,从最新的研究趋势来看,来自管理员权限的破
坏也可能导致UAC功能失效。具体过程是:如果管理员因故
运行了某段恶意代码,该恶意代码可以伪造用户的访问令牌
来替代系统生成的令牌,以后无论以何种用户身份登录此Vis—
ta系统,该恶意代码都可以使得用户权限提升到管理员权限,
从而绕过UAC。因此UAC功能并不是完美的,也有其脆弱性。
2.2 IE的改进并不能根本解决安全问题
虽然IE的保护模式和防钓鱼功能能够发挥一些作用,但
是想要借此来保护计算机系统和用户信息的绝对安全是不现
实的。IE的防钓鱼功能需要及时获取钓鱼网站的列表,如果
更新不及时,仍然不能有效过滤掉所有的钓鱼站点,所以用户
仍然需要自己判断可疑的站点的可信性,这样,将安全问题交
给了用户,也会导致用户信息的泄漏。
2.3 ASLR技术的局限性
地址空间装载随机化在开放源代码系统中的表现很好,
问题是微软如何实现ASLR和这种随机化是否是可以预测的。
如果这种随机化可以被预测,那么攻击者将可以直接开发出
利用工具,对系统文件进行破坏,从而控制计算机系统:如果
不可以预测,攻击者仍然可能会开发试图访问所有256个内
存地址的恶意代码,一旦获取到适合的信息,恶意代码将可以
顺利运行,即使没有找到适合的信息,这样在内存地址中的尝
试操作也可能导致系统运行的异常,甚至可能造成系统崩溃。
如果只想阻止恶意代码运行,这一技术的确可以实现此目标,
但它无法保障系统的正确运行,因为无论恶意代码是否顺利
运行,都将给系统的正常运行带来影响。
一
8lO一
的,它可以防止不明软件试图替换或修改Vista系统内核。在
之前的Windows操作系统中,第三方安全软件为了正确高效
的运行,也将自身进驻到系统内核级运行,从而获得最高的权
限,以便顺利执行各项操作。而在Vista中,微软重新设计了
内核保护技术,阻止任何非授权的程序修改系统内核,这样第
三方安全软件将无法像之前那样自由运行了。然而,行为检
测软件和入侵保护软件的某些高级特性需要修改部分系统内
核,从而常驻系统并稳定高效地运行。于是,PatchGuard也阻
止了这些高级安全特性的正常工作,这使得用户更为不安全。
在过去,已知的病毒是在传播过程中被拦截的,含有病毒的文
件被扫描并获得其特征信号,如果已知病毒的比特模式与所
检测文件中的模式吻合,则该文件将被隔离或删除。然而,一
种新的病毒由于不具有针对它的特征信号,因此该病毒的攻
击不会被基于特征码检测的传统病毒检测软件发现。而现代
的反病毒软件,除了包括特征码扫描功能之外,还包括了一种
被称为启发式行为检测的技术,即通过监测病毒在系统中的
行为来发现其存在并进行查杀。反病毒软件通过监视特定的
API调用和调用顺序、频率确定该病毒正在系统中活动,于是
向内核发送程序中止信号杀掉病毒,从而再次保护用户安全。
而正是PatchGuard,阻止了这类基于行为的检测正常工作。
所以,Patch Guard虽然保护了Vista的系统内核,但同样
把第三方安全软件拒之门外,这也给系统安全留下隐患,毕竟
微软在安全上不能保证无懈可击。虽然安全厂商和微软的交
涉使得其安全软件顺利进驻内核,但其功能将受到很多限制,
从而让恶意代码有机可乘。
3结束语
Vista的全面推出,必然会引起计算机系统安全界的广泛
关注,无论是普通用户还是企业单位,甚至国家各重要部门,
都会对Vista的安全性做全面的了解,对这一系统的安全特性
进行分析和评估,因此,对Vista的这些安全特性的研究和归
纳就显得尤为重要。
以上探讨了WindowsVista操作系统在安全方面的一些重
要特性,这些特性中有的是对以前操作系统的增强,有的是全
新引入的。无论何种方式,都使得针对2000/XP的攻击技术对
Vista ̄难奏效,保护了用户的系统正常运行,保护了用户的敏
感信息,提高了操作系统的安全性。从近期来看,Vista的这些
安全特性能够较好地保护计算机系统,但是随着使用的普及,
维普资讯
Vista的脆弱性可能会逐步显露出来。所以我们要正确认识
Vista的安全性,结合多种途径来保护计算机系统的安全。
【7】 Aaron Powell,Christopher Vincent.A view of bitlocker in Win—
dows Vista beta 2[DB].http://sewpsc.sewp.nasa.gov/documents/
bitlocke pdC2OO6.
参考文献:
【l】 Microsoft Corporation.Microsoft Windows Vista Security Ad—
vancements【EB/OL].http://download.microsoft.corn/down—
load/c/2/9/c2935f83一lal0—4e4a—al37.Cldb829637f5/Windo—
【8] 褚诚云.Windows Visa安全特性分析:t改进和局限【J】.程序员,
2007(2):ll l—ll3.
【9】Rafal Lukawiecki.Windows Vista securiy[tEB/0 L】.http://
WW'W.getready.ie/ppt/Windows%20Visa%20Securitt3 %20Tech.
ppt,2006.
wsVistaSecuriyWEdoc,t2006.
【2】 Bob McCoy.Security overview for Windows Vista【DB/OL】.
http://www.certconf.org/presentations/2006/files/TB3.pd ̄2005.
【3】Dean Lacovelli,Steve Deming.Windows Vista security and com—
plince【EB/OL】.ahttp://www.vascan.org# webdocs/06confdocs/
Dayl—TechnicalTrack-DONE/lacovelliDean—VistaVAS-
CAN2.pdf,2006.
【lO】高爱乃.浅析Windows Sever2003安全策略【rJ】.网络安全技术
与应用,2006(10):71.73.
【ll】Mark E Russinovich,David A Solomon.Microsoft Windows in—
temals[M].4th Ed.USA:Microsoft Press,2004:21 1-236.
【12】John Lambert.Securiy tengineering in Windows Vista【EB/OL】.
http://www.blackhat.com/presentations/bh—usa-06/BH・US-06一
Lambert.pdf.Black Hat,2006.
【4】 Matthew Conover.Analysis ofthe Windows Vista securiy tmodel
【EB/OL】.http://www.symantec.com/avcenter/reference/Win—
a
Securit
ysis.pdf,2006.
dows
Vist
y
ModelAnal
____
【1 3】Universiy of tMichigan.Theory and practice of campus com—
puter securiy,Witndows Vista securiy overtview[DB/OL].http://
【5】 Robert Nottoli.Windows Vista securiy。tand complince[EB/aOL].
http://www.it.northwestem.edu/bin/docs/Nottoli072606Vista
_
www.citi.umich.edu/projects/itss/lectures/lecture一02A.pdf,2006.
【14】Tim Newsham,Jim Hoaglnd.Wiandows Vista network attack
surface analysis:A broad overview[EB/OL].http://www.syma—
ntec.com/avcenter/reference/ATR・VistaAttackSurface.pdf,
2006
Securiy
Comp.
t
pd ̄2006.
_
【6】 许治坤,王伟,郭添森,等.网络渗透技术【M】.北京:电子工业出版
社.2005:635.676.146一l67.
(上接第793页)
3结束语
本文提出了一种分类方法,从逻辑设计的角度,将面向对
象系统的设计的各个演化阶段进行分类。该分类方法是基于
UML区分算法,一种启发式的结构化区分算法,能够识别出
系统从一个版本演化到后一个版本的过程中所经历的设计层
面上的变化。基于UML区分算法的结果,我们采用该分类方
法对每个类的演化过程进行分类,以更好地了解系统的演化。
本文从以下几个方面体现出所研究的方法对于研究系统
的演化分析的优越性:
(1)对于整个开发过程,不需要任何的假设,仅仅要求系统
是受到一个版本管理系统的控制。只要满足这个条件,主要
的数据输入就能够被提供了。如系统本身的源代码,它是用
于得到一致且详细的文档的依据,诸如变化记录,开发者的注
释等。一个因子提取器将系统的各版本作为输入,通过逆向
软件工程就可得到与代码相关的设计模型,即为UML区分算
法的分析输入。
(2)UML区分算法是一种新颖的算法,采用面向对象的
UML语法。该算法能够准确的检测出一个系统从一个版本演
化到下一个版本的过程中所经历的变化,如包、类、接口及其域
的类演化过程。
参考文献:
【1】Lanza M.The evolution matix:Recoverirng software evolution
using software visualization techniques[C].Proc Int’1 Workshop
Principles of Software Evolution,200 1:37・42.
【2】BarryE J,KemererCF,Slaughter SA.Ontheuniformiy of tsoft—
ware evolution pattems[C].Proc 25th Int’1 Conf Software Eng,
2003:lO6一ll3.
【3】 Zhenchang Xing,Eleni Stroulia.UMLDif:An algorithm for ob・
ject—oriented design diferencing[C].ASE’05,2005:54—65.
【4】Xing Zhenchang,Eleni Stroulia.Analyzing the evolutionary his・
tory of the logical desin gof object-oriented software【J].IEEE
Transactions O1"1 Software Engineering,2005,3 1:850—867.
【5】 German D M,Hindle A.Visualizing the evolution of software
using softchange【C】.Proc 16th Int’1 Conf Software Eng and
Knowledge Eng,2004:336—341.
【6】 Godfrey M,Zou L.Using origin analysis to detect merging and
splitting of source code entities【J].IEEE Trans Software Eng,
2005,3l(2):166—181.
【7】Hassan A E,Holt R C.Studying the chaos of code development
【C】.Proc 10th Working ConfReverse Eng,2003:123-133.
【8】 Stroulia E,Kapoor R.Metrics of refactoring—based development:
和方法的添加、删除、更名和移动等。这种高层次的抽象与代码
层次的量度相比是更直观的,并且直接与软件开发过程相联系。
(3)我们的分类方法是建立的每一个独立的类的演化雏形
上的,通过我们的分类方法我们可以了解到每一个系统中的
类都是如何被创建、开发、甚至从系统中删除的这样一个整个
An experience report[C].Proc Seventh Int'l Conf Object-Often-
ted Information Systems.2001:1l3一l22.
发布评论