竞赛作品报告-USB存储设备监控系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2010年全国大学生信息安全竞赛
作品报告
作品名称: USB存储设备监控系统
参赛学校:哈尔滨工业大学(威海)
学院/系:计算机科学与技术学院
指导教师:
组长:
组员:
通信地址:
电话:
电子邮箱:
提交日期:
填写说明
1. 所有参赛项目必须为一个基本完整的设计。

作品报告书旨在能够清晰准确地阐述(或图示)该参赛队的参赛项目(或方案)。

2. 作品报告采用A4纸撰写。

除标题外,所有内容必需为宋体、小四号字、1.5倍行距。

3. 作品报告中各项目说明文字部分仅供参考,作品报告书撰写完毕后,请删除所有说明文字。

(本页不删除)
4. 作品报告模板里已经列的内容仅供参考,作者也可以多加内容。

目录
第一章摘要 (1)
第二章作品介绍 (2)
第三章实现方案 (5)
3.1 USB存储设备监控系统设计方案 (5)
3.1.1 系统DFD图 (5)
3.1.2 系统数据字典 (6)
3.1.3 系统设计说明 (7)
3.2 系统的功能及特点 (8)
3.3 系统总体架构设计 (9)
3.4 监控模块 (10)
3.4.1 USB存储设备监控 (10)
3.4.2文件监控 (14)
3.4.2.1文件过滤驱动的工作原理 (15)
3.4.2.2文件过滤驱动的重要控制码 (17)
3.4.2.3应用程序与驱动程序交互 (18)
3.4.2.4过滤驱动对用户等级和文件等级获取 (19)
3.4.2.6过滤驱动对IRP的处理 (20)
3.4.3 USB存储设备内部文件操作监控 (22)
3.5 管理模块 (23)
3.5.1 用户管理 (23)
3.5.2 文件管理 (24)
3.5.3 USB设备管理 (25)
3.5.3.1 USB存储设备注册 (25)
3.5.3.2 USB存储设备序列号提取 (26)
3.5.4 日志管理 (27)
3.6 系统配置模块 (29)
3.6.1 客户端进程隐藏 (29)
3.6.2 系统自启动 (31)
3.6 客户端模块 (32)
3.5 服务器端模块 (35)
第四章性能测试 (37)
4.1 设备与环境 (37)
4.2 测试方案及实施 (37)
4.2.1 测试用例 (37)
4.2.2 测试结果 (39)
4.3 测试小结 (46)
第五章创新性 (47)
第六章总结 (49)
参考文献 (51)
第一章摘要
随着信息时代的到来,绝大多数的企事业单位使用计算机来管理企业内外资源,大大提高企业的工作效率,而在企业内部USB移动存储设备的使用也越来越广泛。

采用USB接口的可移动存储设备(如U盘、移动硬盘等)具有即插即用、传输速率快、容量大、携带方便等优点,但USB存储设备在方便了人们工作和生活的同时,也成为了信息泄露的一种渠道,如何安全管理USB移动存储设备的问题也就凸显出来。

一方面部分企业的安全意识还有待提高,如何在安全管理和方便办公中寻求一个平衡点,是众多企业网络管理者急需考察的问题。

另一方面市面上众多厂家提供的各种企业信息安全相关产品的性能参差不齐,导致目前USB移动存储设备的安全管理仍旧持续不断的出现问题。

如何在保证不影响正常使用的前提下,用较少的投入实现全面的USB移动存储介质的管理是当前企业面临的重要问题。

为解决企业面临的问题,需要开发一个专门用于监控USB存储设备的软件系统,来防止企业内部有意或者无意的机密文件泄露。

本作品设计开发的USB存储设备监控系统实现了在企业局域网内,监控USB存储设备的使用,通过对企业内部计算机内的文件根据涉密程度划分等级和监控、记录局域网内用户的文件操作行为,并在系统服务器端保存详实的日志记录,为企业提供安全保障的同时,也为企业管理人员提供可疑行为发生时的详细信息记录,以便企业管理者及时做出有效的安全防护工作。

USB存储设备监控系统基于对用户和文件同时划分等级的思想,将企业内部计算机用户划分为若干等级,同时将企业内部文件根据涉密程度也划分为若干等级,不同等级的用户拥有不同等级的文件操作权限和USB接口使用权限。

本作品采用C/S技术架构,对企业内部计算机的USB接口和企业涉密文件操作进行监控,采用企业内部用户USB存储设备和用户名绑定的措施,大大增强了企业重要文件的安全性。

此外,本系统还着重研究了如何增强系统本身的安全性和可用性,增加了系统自启动、系统进程隐藏等功能,可以有效地防止用户无意或恶意关闭监控程序。

从技术方面看,本作品完全可以替代同类性质的硬件产品,通过注册管理、身份鉴别、认证授权、文件分级、访问控制和行为监控等多种技术手段的综合使用,为企业提供完善的USB移动存储设备的安全管理解决方案。

第二章作品介绍
近年来,随着计算机的应用越来越广泛,由此出现的计算机信息泄露和计算机犯罪问题也逐渐增多。

美国联邦调查局(FBI)和计算机安全机构(CSI)等权威机构的研究证明:超过80%的信息安全隐患是来自组织内部。

尽管许多机构安装了防火墙等用于保护计算机信息安全的软件,但是这些信息保护措施很难防御内部人员的攻击。

目前,企业计算机除了面临来自于网络黑客、病毒威胁之外,近年来流行的通用串行总线接口——USB接口,也成为了不法分子获取机密信息的一个渠道。

USB接口是目前在打印机,数字存储设备,输入/输出设备,数码像机,MP3播放器等其他周边设备中得到广泛应用的连接方式。

USB设备具有使用方便,速度快,连接灵活,即插即用等优点。

目前市场上的基于USB接口的大容量存储设备(USB Mass Storage)主要有:USB移动硬盘,USB 外置光驱,USB 外置软驱,USB闪存盘(闪盘),USB CompactFlash / SmartMedia卡读卡器等。

值得关注的问题的是:USB存储设备虽然使得企业中信息交换方便化,但也使企业内部计算机信息的安全性直线下降。

不法人员可以在几乎不留下任何痕迹的情况下,通过USB存储设备从计算机中拷贝企业机密信息。

一旦企业、研究中心或者政府部门的机密数据被内部不法人员通过USB设备窃取,将会给企业甚至国家造成难以预计的损失。

USB接口的安全控制已经广泛引起人们的关注,国内外也出现了很多相关的研究方案和产品。

当前,针对USB移动存储设备的安全性问题,主要有三种技术解决方案。

第一种是对计算机的USB物理端口进行人工上锁,使其无法接入任何USB设备。

这是一种最早使用的技术方案,由于该方案将导致所有USB设备都无法在计算机上使用,已逐渐被用户所淘汰。

第二种采用专用的加密USB移动存储介质,属于硬件方案,配合软件使得普通USB移动存储介质无法识别,只能使用专门配发的加密存储设备。

第三种是采用完备的移动存储设备管理系统,利用软件解决方案的形式,在针对非特殊性用户的时候具有较高的性价比。

目前,封闭USB物理端口的方法已经较少采用,而专用硬件移动存储介质解决方案由于其成本过高、针对性过强,国内目前仅在政府和大型企业的特殊网络内有所
应用。

而广大非特殊网络用户虽然同样面临USB移动存储设备管理和信息防泄密的问题,但基于总体成本和工作方便性的整体考虑,此类方案并不适用。

综合当前国内外的软件产品对USB存储设备,仅仅对USB存储设备进行控制还不能够有效防止数据泄露。

因为,一旦一个USB存储设备拥有了USB接口的使用权限,就可以任意拷贝计算机内的文件,这将是一个很大的安全漏洞。

因此,除了对USB存储设备本身进行监控之外,还需要对计算机内的文件进行保护。

综合当前国内外的理论技术研究,研究方案基本是从驱动入手,可靠性高且难以被用户破解。

但是只是实现了USB存储设备的身份认证及读写控制,并没有对计算机中的文件进行分级和监控,功能还不算完善,安全漏洞仍然很大,不能够有效的防止信息泄露。

因此,我们设计开发了USB存储设备监控系统。

将USB存储设备与用户进行绑定,对局域网内部用户和文件分别进行等级划分,对不同等级的用户赋予不同的文件操作权限和USB接口使用权限;在对USB存储设备进行监控的同时,对文件操作进行严格的控制,能够更加有效的防止通过USB存储设备造成的信息泄露;同时在服务器端记录详细日志,方便企业管理人员查看企业涉密文件操作记录以及USB存储设备的使用记录。

USB存储设备监控系统目的是在局域网内USB接口处设立一道防线,防止不法人员通过USB接口窃取机密信息,增强计算机系统的安全性。

针对非特殊性政府、企业内部信息保密和信息防护的要求,提供完整的移动存储设备安全管理和信息保密的解决方案。

首先,USB存储设备监控系统通过用户注册管理,对企业局域网中的合法用户进行注册和等级划分,确保内网计算机中的非注册用户不可访问企业涉密文件和使用USB接口。

其次,USB移动存储介质注册管理,对进入内网的移动存储介质进行注册,确保在内网中的非注册USB移动存储介质不可使用。

而对已注册的USB移动存储设备,通过设备授权和访问控制确保该设备只能具有其绑定用户的读写权限,并对注册设备的使用过程进行完备的日志审计记录。

最后,为适应目前企业管理形式,系统具备对合法用户和注册的USB移动存储设备集中管理能力,根据企业情况制定全网统一的安全策略,规范的USB移动存储设备使用策略非常适合于大中型企业用户。

在前期调研中我们发现,一般用户在使用功能相似的软件产品时比较关注如下两个问题:第一是用户是否需要改变使用习惯;第二是日常维护工作量大不大。

USB存
储设备监控系统圆满解决了这两个问题。

针对使用者来说,采用本系统后USB移动存储设备的使用方法完全不变。

而对于企业内部网络维护和管理者来说,批量操作和分级管理可将管理工作分给不同的管理员分担完成。

管理员不需要将每个用户手中的设备收集后统一注册,相关USB设备在普通用户的客户端提交注册申请,由管理员验证授予权限即可,极大的减轻了企业管理者的工作量。

第三章实现方案
USB存储设备具有体积小、容量大、传输速度快等优点,它们被广泛的用于人们的工作和生活。

然而,USB存储设备在为人们带来便捷的同时,也带来极大的安全隐患。

因为任何人只要把USB存储设备通过USB接口接入到计算机中,就可以轻易的拷贝大量文件。

而目前使用最多的微软Windows操作系统中没有提供能够有效地管理和控制这类设备的工具。

可想而知,USB存储设备对于企业、政府和保密机构的信息安全造成了极大的威胁。

目前的防火墙、入侵检测系统和杀毒软件等都没有对USB存储设备管理和控制的功能,而市场上已经存在的一些USB存储设备监控系统功能还不够完善。

因此非常有必要设计一套专门用于监控USB存储设备且功能完善的系统,来防止USB存储设备造成对个人隐私或机密信息的泄露。

本作品针对USB存储设备可能造成信息泄露这一问题,设计了一套专门用于局域网的防止USB存储设备泄露信息的USB存储设备监控系统。

将USB存储设备与用户进行绑定,对用户和企业内部涉密文件分别进行等级划分,给不同等级的用户赋予不同的文件操作权限和USB接口使用权限。

在对USB存储设备进行监控的同时,对文件操作进行严格的控制,同时记录监控日志传至服务器端数据库保存,能够更加有效的防止和处理局域网内部通过USB存储设备造成的信息泄露事件。

3.1 USB存储设备监控系统设计方案
USB存储设备监控系统采用结构化分析(SA,Structured Analysis)方法对系统进行需求分析。

SA方法是目前最成熟、应用最广泛的信息系统开发方法之一,其优点是有一套严格的开发程序,国内外也已经有许多成功开发的例子[1]。

结构化分析的基本步骤是:由顶向下对系统进行功能分解,画出分层数据流(DFD, Data Flow Diagram)图;由后向前定义系统的数据和加工,编制数据字典(DD,Data dictionary);最终写出需求规格说明书(RS,Requirements Specification)。

3.1.1 系统DFD图
首先确定系统应当具备的功能,然后收集系统的输入输出数据,以及相关数据存
储,最终确定系统的逻辑模型。

系统的顶层DFD图如图3-1所示,第二层DFD图如图3-2所示。

图3-1 USB存储设备监控系统顶层DFD图
图3-2 USB存储设备监控系统第二层DFD图
3.1.2 系统数据字典
数据字典(DD)是对软件中每个数据规定一个定义条码,以保持数据在系统中的一致性。

本系统的数据字典记录了USB存储设备注册信息、用户账号信息和日志信息,其中日志信息包含两部分。

数据文件的字典条目如表3-1(a),表3-1(b)、表3-1(c)和表3-1(d)所示。

表3-1(a) “USB存储设备注册表”的字典条目
名称:USB存储设备注册表
组成:{{用户名+用户密码}+USB存储设备序列号}
存储方式:按照用户的注册时间排列
备注:每个USB存储设备只能注册一次
表3-1(b) “用户账号信息注册表”的字典条目
名称:用户账号信息注册表
组成:{用户名+用户密码+用户等级}
存储方式:按照用户账号的分配时间排列
备注:用户名不可以重复
表3-1(c) “USB存储设备的使用日志”的字典条目
名称:USB存储设备的使用日志
组成:{时间+用户名+动作+USB存储设备序列号}
存储方式:按照时间顺序排列
备注:
表3-1(d) “USB存储设备的文件操作日志”的字典条目
名称:USB存储设备的文件操作日志
组成:{时间+{用户等级+用户名+USB存储设备序列号}+文件操作类型+文件等级+文件名} 存储方式:按照时间顺序排列
备注:
3.1.3 系统设计说明
本作品对企业内部用户和企业内部文件分别划分等级。

首先,将所有用户分为两大类:合法用户和非法用户。

合法用户被允许使用USB 接口,而非法用户被禁止使用USB接口。

对于合法用户,系统将其分为系统管理员和普通用户两大类。

普通用户,按等级由高到低划分为高级用户、中级用户和低级用户。

对系统管理员,分为用户管理员和安全管理员。

用户管理员负责管理普通用户注册、信息维护等;安全管理员负责注册USB存储设备和对文件进行等级划分。

各用户具体职能如表3-2所示。

其次,对于企业内部文件,根据中华人民共和国《信息安全等级保护管理办法》第二十五条“涉密信息系统按照所处理的信息的最高密级,由低到高分为秘密、机密、绝密三个等级。

”将企业内部所有文件分为两大类,涉密文件和非涉密文件。

对于涉密文件,系统将其划分为3个等级,按等级高到低依次为绝密文件(1级)、机密文件
(2级)和秘密文件(3级)。

具体如表3-3所示。

表3-3 文件等级设置
3.2 系统的功能及特点
本作品设计并实现了用户管理功能、文件管理功能、USB存储设备管理功能和系统管理功能,各项功能说明具体如下。

(1)用户管理功能:
用户管理只要是对用户进行等级划分,将企业内部所有用户分为合法用户和非法用户。

合法用户分为普通用户和系统管理员。

普通用户分为三个等级,由高到低分别是高级用户、中级用户和低级用户。

系统管理员分为用户管理员和系统管理员。

用户管理员对普通用户进行管理,具有增加和删除高级用户、中级用户和低级用户的权限;不同等级的用户拥有不同的文件操作和USB接口使用权限。

(2)文件管理功能:
包括文件分级管理和文件监控管理两个部分。

文件分级管理中,根据文件涉密程度,将企业内所有的文件分为两大类,即涉密文件和非涉密文件。

其中涉密文件又分为3个等级,按等级由高到低依次是绝密文件(1级)、机密文件(2级)和秘密文件(3级);文件等级划分工作由系统安全管理员负责。

文件监控管理中,系统对企业内部计算机的文件操作进行监控,阻止用户非法操作涉密文件;对USB存储设备内的文件操作也进行监控。

(3)USB存储设备管理功能:
包括USB存储设备的注册管理和USB存储设备的监控管理两个部分。

对企业内部合法用户的USB存储设备进行注册管理,每个合法用户的USB存储设备只有通过系统注册认证后才能使用,注册认证工作由安全管理员负责。

系统客户端实时监控计算机USB存储设备的使用情况,对每一个接入到计算机内的USB存储设备进行身份认证,只有认证通过才可以继续使用,否则设备将被强制弹出。

(4)系统管理功能:
包括系统日志管理和系统配置管理两个部分。

系统客户端对企业局域网内部涉密文件的操作行为记录详细日志、对USB存储设备的使用信息和USB存储设备内的文件操作信息记录详细日志保存在服务器端数据库中,便于企业管理人员需要时查看。

作为安全监控系统,为了达到更加有效的监控效果,本系统设置有进程隐藏和开机自启动的功能,退出系统时需要进行用户身份验证,普通用户不具有退出客户端应用程序的权限。

通过对目前已经存在的关于USB存储设备安全类软件产品的分析,我们可以发现很多不足。

这些产品只做到了对USB接口的开启/禁止,或者对USB存储设备的读写权限控制,并没有对计算机内的文件进行保护。

总体来说,监控粒度非常粗,安全漏洞很大。

本系统的设计则弥补了现有软件产品中存在的安全漏洞。

与目前已经存在的软件产品相比较,本系统的最主要的特点如下:
(1)本系统提出了文件分级的思想,依据国家相关法律规定对文件分级。

(2)本系统对用户划分不同等级,对不同用户赋予不同的文件操作权限。

(3)本系统把USB存储设备与用户进行注册绑定,这样不仅规范了USB存储设备的使用,且一旦发生信息泄露,可根据USB存储设备绑定信息追查责任人。

(4)系统有详细的日志记录,不仅记录企业内部USB存储设备的使用情况,还会记录在企业内部计算机中使用的USB存储设备里发生的文件操作。

这样,不仅在日常管理中可以通过查看日志记录预防信息泄露事件发生,而且一旦发生涉密事件,可通过查看日志记录信息迅速找到事件责任人。

(5)系统有进程隐藏和自启动功能,可防止用户无意或恶意关闭程序。

3.3 系统总体架构设计
本作品主要分为服务器端和客户端两部分,功能上又可分为监控模块、管理模块、系统设置模块。

客户端主要负责监控计算机内的等级文件操作、计算机USB接口动作、与用户的交互及与服务器端传递交互信息。

服务器端主要负责用户信息注册、登陆验证,拒绝系统非法用户登陆系统访问涉密文件,同时,负责系统文件和USB接口动作的监控日志记录和日志管理等。

作品的总体系统架构如图3-3所示。

图3-3作品总体架构图
监控模块是整个系统的核心部分,包括USB存储设备监控和文件操作监控。

USB 存储设备监控在USB接口处设立了第一道防线,而文件操作监控在计算机内部设立了第二道防线,两道防线配合作用,大大减少了USB存储设备窃取信息的风险。

管理模块包括用户管理、文件管理和USB存储设备注册管理。

管理模块也是系统非常重要的一部分,因为在管理模块设置的信息,比如用户和文件的等级信息还有USB存储设备的注册信息,将会是监控模块对特定动作的合法性进行判定的依据。

日志管理部分对于预防和处理信息泄露事件,提供可查看的有效证据。

系统配置模块为系统有效的运行提供保障,作为监控类系统,必须始终处于运行状态,且要能够防止用户无意或恶意关闭。

因此,系统需要具有自启动和进程隐藏这两个功能。

下面分别就各模块及其实现技术进行介绍。

3.4 监控模块
3.4.1 USB存储设备监控
为了防止计算机内的重要信息通过USB接口被窃取,系统需要对所有接入到计算机中的USB存储设备(例如移动硬盘、U盘、MP3、SM卡等)进行监控。

USB大容量存储设备的基本硬件结构有所不同,但通常使用一个带有USB接口
引擎的MPU(又可称为USB微控制器)用于处理主机发送的命令以及对存储设备进行操作。

一个USB大容量存储设备通常采用的硬件结构如图3-4所示。

ROM和RAM 用于存储数据和程序,EEPROM用来存放厂商代码/产品代码(VID/PID)等基本信息。

由于存储介质的接口不同(如图3-4虚线外部所示),USB微控制器与它们的连接也略有不同。

图3-4 USB大容量存储设备通常采用的硬件结构
光驱,硬盘和CompactFlash(CF)提供的是ATAPI或IDE接口,所以USB微控制器实际上是完成USB到ATAPI/IDE的桥接功能,它把主机的SCSI/IDE命令和数据转发到存储设备上,并将存储设备返回的状态和数据发送回主机。

有些厂商则推出专用ASIC完成USB到ATAPI/IDE桥接功能,使设备开发更加简单。

另一类常见的USB大容量存储设备是基于闪存设备(Flash Device),如SmartMedia 卡(SMC),MultiMedia卡(SMC),Memory Stick(MS),NAND结构的闪存器件等。

闪盘(USB Flash Disk) 就是采用NAND结构的闪存器件作为存储介质。

这类闪存设备有特殊的接口总线,因此,USB微控制器通过微控制器的系统总线或通用I/O线与闪存设备连接。

微控制器除了实现与主机之间的数据/命令传输外,还需要根据主机的命令对闪存器件进行读/写/格式化,实现逻辑扇区与物理扇区之间的转换,数据错误校正等操作。

本系统主要监控的USB存储设备主要可分为两类:硬盘类和闪存类。

硬盘类即为USB移动硬盘,闪存类主要有广泛使用的U盘、MP3、存储卡等。

系统采用了扫描计算机内所有磁盘并判断其类型的方法来识别USB存储设备。

在系统内设定了一个计时器,每隔一段时间,会把计算机内所有磁盘扫描一遍。

定义描述磁盘的数据结构:
struct disk{
char laufwerksname; //盘符,A-Z
int exist; //是否原来存在,0否,1是
int real; //该盘符是否在电脑中存在,0否,1是
int flag1; //硬盘,0不是,1是
int flag2; //光驱,0不是,1是
int flag3; //可移动磁盘,0不是,1是
int flag4; //网络磁盘,0不是,1是
int flag5; //虚拟RAM磁盘,0不是,1是
int flag6; //未知设备,0不是,1是
float totalspace; //总容量
int test; //0为未被测试到,1为已被测试到
};
由于计算机内至多有26个分区,所以定义数组大小为26即可:disk Disk[26]。

利用函数GetDriveType可以获取磁盘类型,根据其返回值的不同可以判定其类型。

由于闪盘和硬盘构造不同,计算机对于它们的识别原理不同,因此系统需要分别识别可移动磁盘和移动硬盘。

初始化磁盘信息所做的工作如下:
(1)初始化结构体数组,其盘符为A-Z;
(2)将所有标记位置零;
(3)检测实际存在的逻辑盘,将其exist和real位置1;
(4)根据磁盘类型,将相应flag位置1;
获取每个实际存在磁盘的容量,记录在totalspace中。

USB存储设备的监控过程具体可分为对USB存储设备插入的监控和对USB存储设备拔出的监控。

系统采用了一个计时器程序来调用USB存储设备的监控过程,通过每隔一段时间调用一次USB存储设备的监控程序,系统可以实时监测到USB存储设备的插入和拔出情况,检测USB存储设备接入情况的流程图如图3-5所示。

为了对USB存储设备的注册工作不产生干扰,系统规定在用户注册USB存储设备时,暂。

相关文档
最新文档