iocp服务器设计.docx
《iocp服务器设计.docx》由会员分享,可在线阅读,更多相关《iocp服务器设计.docx(52页珍藏版)》请在冰豆网上搜索。
![iocp服务器设计.docx](https://file1.bdocx.com/fileroot1/2022-11/27/50bf765b-fd1a-439e-a0cc-f37af4ce90e2/50bf765b-fd1a-439e-a0cc-f37af4ce90e21.gif)
iocp服务器设计
中原工学院信息商务学院
毕业设计(论文)
题目:
主控中心的设计与实现
专业:
计算机科学系
班级:
网络064班
学号:
200680012425
学生姓名:
XXX
指导教师:
XX
年月日
主控中心的设计与实现
DesignandImplementationofMainControlCenter
专业:
计算机科学系
班级:
网络064班
学号:
200680012425
学生姓名:
XXX
指导教师:
XX
2010年5月日
中文摘要
随着计算机网络的飞速发展,网络安全对我们来说已经不是一个陌生的词语,网络的开放性和共享性导致了网络的不安全性,导致新的系统漏洞层出不穷,网络安全问题变得越来越突出。
使得计算机安全成为人们讨论的热点,逐渐成为一个潜在的巨大问题。
本文在主机安全评估的基础上延伸到了整个企业网络的主机安全评估,对于一个企业全网来说,网络中主机的安全性严重影响到整个网络的稳定性,只有对整个网络上的主机进行安全评估,我们才能够及时的采取有效地措施来阻止危险的发生。
主控中心是分布式网络安全评估的控制中心,在网络中起到了领导作用,它能够制定一系列的策略,通过发送指令来控制网络中sensor的扫描,同时具有搜集senosr扫描信息,对扫描结果进行分析和评估的功能。
这需要主控中心具有较高的稳定性,能够接收大量sensor的服务请求。
本文从分布式网络安全评估的背景和意义着手,以国内外研究的现状作为参照,从整体上分析了分布式网络安全评估的需求,并对需求进行了概要设计和详细的设计,最后通过编写测试用例全面的测试了软件的功能,达到了预期的效果。
关键词:
网络安全分布式网络分析评估稳定性
Abstract
Withtherapiddevelopmentofcomputernetworks,networksecurityarenolongerastrangeword,thenetwork'sopennessandsharingofinsecurityledtothenetwork,leadingtoanendlessstreamofnewvulnerabilities,networksecurityissuesbecomeincreasinglymoreprominent.Makescomputersecuritybecomeahottopic,hasbecomeapotentiallyhugeproblem.Inthispaper,basedonhostsecurityassessmentextendstotheentireenterprisenetworkhostsecurityassessmentoftheentirenetworkforanenterprise,thenetworkhostsecurityseriouslyaffectthestabilityoftheentirenetwork,onlythehostsontheentirenetworkforsecurityassessment,wecantaketimelyandeffectivemeasurestopreventtheoccurrenceofdanger.
Distributednetworkcontrolcenterisasecurityassessmentofthecontrolcenter,thenetworkhasplayedaleadingrole,itcandeveloparangeofstrategies,bysendingcommandstocontrolthesensornetworkscanning,scanbothcollectsenosrinformationonscanresultsanalysisandassessmentfunctions.Thisrequireshighstabilityofthecontrolcenter,alargenumberofsensorcanreceiveservicerequests.
Thisdistributednetworksecurityassessmentfromthebackgroundandsignificancebegintostudythesituationathomeandabroadasareference,fromtheoverallanalysisoftheneedsofdistributednetworksecurityassessment,andrequirementsoftheoutlinedesignanddetaileddesign,andfinallybywritingcomprehensivetestingofthesoftwaretestcasefunction,achievedtheexpectedresults.
Keywords:
NetworkSecurityDistributednetworkAnalysisAssessStability
第1章引言
1.1分布式主机安全评估的研究背景与意义
1.1.1研究背景
随着计算机网络的发展,其开放性、共享性、互连程度扩大,网络的重要性和对社会的影响也越来越大,网络安全问题显得越来越重要。
网络由于其自身的脆弱性会受到一些威胁,建立安全防护体系对于加强网络的安全性意义重大。
安全评估是建立网络防护系统的一项基础性工作,安全评估的目的是通过合理步骤,以防止所有对网络安全构成威胁的事件发生。
在互联网高速发展的今天,安全事件越来越多,威胁程度越来越大。
近年安全漏洞数量不断增加,仍是信息系统的主要安全隐患。
据美国CERT/CC统计该组织2007年全年收到信息系统安全漏洞报告7236个,自1995年以来,漏洞报告总数已达38016个。
国内安全组织CNCERT/CC[1,2,3,4,5]给出了2005年至2008年上半年与我国用户密切相关的漏洞公告,如图1.1所示,从图中可以看出,近年来,与我国用户密切相关的漏洞数目越来越多。
随着各种安全漏洞的出现,别有用心的人借助漏洞进行的攻击事件也随之而来,而且这些攻击事件有着逐年递增的趋势。
CNCERT/CC给出了2007年至2008年上半年非扫描类安全事件的统计结果,如图1.2所示,仅统计其他组织或者个人向CNCERT/CC报告的非扫描类事件报告数量,不包含CNCERT/CC监测发现的事件。
同时,将漏洞报告也作为一种事件报告进行统计。
图1-1CNCERT/CC安全漏洞数目统计
图1-2CNCERT/CC网络安全事件统计
面对如此多的网络安全漏洞和网络安全事件的频繁发生,我们急需找出一种解决方案来提高网络的安全性,为了实现网络的安全运行,必须构建一个完整的安全体系,为此人们提出了PPDR[6]和PPDRR[7]等安全模型,而网络安全评估正是这些安全模型中的关键环节。
为了保证主机的安全,我们需要对影响主机的所有安全因素进行评估,而在每台主机都得到保证的情况下,为了保证整个企业网络的安全,我们有必要设计一套分布式主机安全评估系统。
1.1.2研究意义
评估主机的安全风险,提高主机操作员或管理员的风险意识。
研究新的评估技术,丰富和完善评估方法体系,给出合理的评估模型,研究效率高的评估算法。
分布式主机安全评估能够对整个企业或者全网进行全面、高效、准确的评估。
有利于企业网络管理员准确的掌握全网的安全风险,提高安全防范意识。
分布式主机安全评估能够对企业的网络状况做出预测,有效的防范大规模安全事件对企业网络造成的损失。
1.2分布式主机安全评估的国内外研究现状
1.2.1国内外的研究现状
安全评估[14]是依据有关信息安全技术与管理标准,对信息系统及由其处理、传输和存储的信息的保密性、完整性和可用性等安全属性进行评价的过程。
它要评估资产面临的威胁以及威胁利用脆弱性导致安全事件的可能性,并结合安全事件所涉及的资产价值来判断安全事件一旦发生对组织造成的影响。
主要包括管理方面的评估和技术方面的评估。
安全评估可以分为两种情况:
一种是基于主机安全评估,一种是基于网络安全评估,我们课题研究的是分布式主机安全评估。
信息技术安全评估涉及的领域广泛,研究的内容复杂而多变。
主要包括基于主机的安全评估和基于网络的安全评估,主机安全评估研究的内容如下:
1)信息技术安全功能、安全保证、安全性评估准则与评估规范的制定;
2)评估对象(TOE)、评估方式、评估强度及评估流程的确定;
3)主机安全指标的提取与量化;
4)计算机资产识别与资产价值的评定;
5)计算机脆弱性识别、分析与评估模型研究;
6)计算机威胁识别、分析与评估模型研究;
7)基于主机的安全评估工具的研发;
在整个评估流程中,信息技术安全评估准则起着指导性的作用,2)和3)是安全评估的前提和基础,4)、5)、6)和7)是安全评估的核心,决定了最终评估结果的准确性,是整个评估流程中的重中之重。
安全评估要按流程,如图1.3所示。
图1-3安全评估流程图
国外及国际性安全评估标准
美国的TCSEC
TCSEC[8],即“可信计算机系统评估准则”(TrustedComputerSystemEvaluationCriteria)。
1970年由美国国防科学委员会提出,1985年正式发布。
其安全级别从高到低分为A、B、C、D四类,各类又进行细分,总共有Al、B3、B2、B1、C2、C1、D七级。
分级分类主要依据四个原则:
安全政策、可控性、保证能力和文档的完善程度。
欧洲的ITSEC
ITSEC,即“信息技术安全评估准则”(InformationTechnologySecurityEvaluationCriteria)。
1.2版于1991年由欧洲委员会在结合法国、德国、荷兰和英国的开发成果后公开发表。
功能准则在测定上分F1-F10共10级,评估准则分E1、E2、E3、E4、E5、E6六级。
日本电子工业发展协会的JCSEC-FR
1992年8月,日本电子工业发展协会(JEIDA)公布了《日本计算机安全评估准则-功能要求》(JCSEC-FR)该文件与ITSEC的功能部分结合得非常紧密。
加拿大的评测标准(CTCPEC)
CTCPEC,即“加拿大可信计算机产品评估准则”(CanadianTrustedComputerEvaluationCriteria)。
1.0版于1989年公布,专为政府需求而设计,1993年公布了3.0版。
作为ITSEC和TCSEC的结合,将安全分为功能性要求和保证性要求两部分。
功能性要求分为机密性、完整性、可用性、可控性等四个大类。
美国联邦准则(FC)
美国信息技术安全联邦准则草案1.0版也于1993年公开发表,它是结合北美和欧洲有关评估准则概念的另一种标准。
在此标准中引入了“保护轮廓(ProtectionProfile)”这一重要概念,每个轮廓都包括功能部分、开发保证部分和评测部分。
分级方式与TCSEC不同。
通用准则(CC)
在1993年6月,由与CTCPEC、FC、TCSEC和ITSEC有关的六个国家中七个相关政府组织集中了他们的成果,并联合行动将各自独立的准则集合成一系列单一的、能被广泛接受的IT安全准则。
其目的是解决原标准中出现的概念和技术上的差异,并把结果作为对国际标准的贡献提交给了ISO。
1996年颁布了1.0版,1998年颁布了2.0[9]版,1999年6月ISO正式将CC2.0作为国际标准——ISO15408发布.在CC中充分突出“保护轮廓”,将评估过程分为“功能”和“保证”两部分。
通用准则是目前最全面的信息技术安全评估准则。
信息安全管理标准(BS7799)
BS7799由英国标准协会(BSI)于1995年2月首次公布,1995年5月又进行了修订,是目前国际上最知名的安全管理标准。
BS7799共分为两部分,第一部分是信息安全实务准则,提供了实现信息安全的全面指导,第二部分是信息安全管理体系(ISMS)规范,提供了一个组织建立、实施及文档化信息安全管理体系(ISMS)的规格说明。
国内评估标准
计算机信息系统安全保护等级划分准则
1999年9月国家质量技术监督局发布了国家标准GB17859-1999《计算机信息安全保护等级划分准则》[10],他是建立安全等级保护制度、实施安全等级管理的重要基础性标准。
它将信息系统划分为五个安全保护等级,等级从低到高分为用户自主保护级、系统审计保护级、安全标记保护级、结构化保护级、访问验证保护级。
信息技术安全评估准则
自从CC1.0版公布后,我国相关部门就一直密切关注着它的发展情况,并对该版本做了大量的研究工作。
2001年3月,国家质量技术监督局正式颁布了援引CC的国家标准GB/T18336-2001《信息技术安全技术信息技术安全性评估准则》[11]。
信息安全风险评估指南
我国信息安全风险评估国家标准《信息安全风险评估指南》[12]规定了信息安全风险评估的工作流程、评估内容、评估方法和风险判断准则,适用于信息系统的使用单位进行自我风险评估,以及风险评估机构对信息系统进行独立的风险评估。
信息安全风险管理指南
我国信息安全风险评估国家标准《信息安全风险管理指南》[13]规定了信息安全风险管理的内容和过程,适用于我国各类信息系统的主管、运营部门以及信息安全服务机构对信息系统的安全保护工作。
信息安全技术主机安全漏洞扫描产品检验规范
《信息安全技术主机安全漏洞扫描产品检验规范》[14]规定了主机安全漏洞扫描产品的安全功能要求和安全保证要求,适用于主机安全漏洞扫描产品的开发与检测。
1.2.2研究现状的分析
分布式主机评估是一个运用C/S架构实现的分布式漏洞扫描与安全评估系统,它通过在分布式网络的多个不同物理地点安装扫描代理,并在中央控制台进行集中管理的方式,实现了对大规模网络的实时及定时漏洞扫描和风险评估,是新一代的网络漏洞扫描产品。
该产品的推出填补了国内相关市场领域的空白。
与传统的单点式、工具化的漏洞扫描产品相比,分布式漏洞扫描与安全评估系统主要特点有:
1.分布式漏洞扫描与安全评估系统不受网络地域的局限,能够跨地域对多个网络同时进行扫描。
多点扫描代理的部署也大大降低了对扫描系统以及对网络带宽资源的占用;
2.分布式漏洞扫描与安全评估系统通过均衡扫描负载,提高了漏洞扫描的准确性以及扫描速度,并加强了扫描过程的安全性;
3.分布式漏洞扫描与安全评估系统是针对集中管理大型网络中的安全风险而设计的,系统建立了资产信息库,可对网络中的重要资产进行扫描,并对网络系统面临的风险和威胁进行综合分析,最终得出系统安全风险评估结果;
4.分布式漏洞扫描与安全评估系统可实现实时及定时漏洞扫描任务,通过设置定期自动执行扫描任务进行全面安全检查,从而辅助强化组织统一安全策略的落实;
5.分布式漏洞扫描与安全评估系统可以与启明星辰公司的天阗(tián)分布式入侵检测系统进行联动验证和关联分析,在大规模分布式网络环境中,二者的紧密配合将能够极大地提高对网络的安全保障能力。
1.2.3分布式的问题与总结
(l)分布式中心要求每个中心主机运行的分支行都设立较大的机房,要用双机并互为热备份配套的机房环境,如配备的电源、空调、消防设施等都要符合国家安全标准和系统技术标准,这显然需要各中心各白按标谁建设到位,各自的投人就较多。
(2)计算机本身更新快,使用周期短,各分布中心的主机和配套设备等都要随之更新,这样,更新的点数就多,投人的总数额就大。
(3)由于每个分布计算中心都要按系统要求配齐相关软件,造成同一系统内各中心重复购人软件,导致软件上多余的投人,软件开销增大。
(4)各分布中所覆盖的机构网点数量有限,业务总量不大,主机的吞吐量多数不足,而庞大的应用软件对主机基本配置和对系统软件的配套要求仍一样,并不能因点少量缺而省缺和降低,使得各中心都要达到同样的标谁来满足运行之需,自然投资不能降低,这就引起资源严重浪费。
有些亏损的行,要维持计算中心的运行,运行成本占经营成本的比例自然更高,使得盈利压力更加沉重。
1.3研究目标与内容
1.3.1研究目标
1)从安全评估的角度出发,通过分布式的Sensor,扫描被评估的全网主机,并对原始的扫描数据进行分析,依据分析结果从不同角度、不同范围进行安全评估,最终形成评估报告表。
2)从脆弱性扫描的角度出发,基于主机的脆弱性扫描,扫描内容(多元扫描,不仅仅是漏洞)更广泛、更准确,弥补了基于网络脆弱性扫描的不足。
从分布式的角度出发,实现通讯的高效性、信息的保密性和所有被评估主机的同步性。
3)建立科学的评估指标体系,研究性能高效的评估算法,使研究具有一定的理论水平和实用价值。
1.3.2研究内容
为了充分利用分布式系统的巨大处理能力,全面多元化的收集企业全网中的原始扫描信息,提出一种“主控-sensor-数据中心”的三层框架评估体系如图1.4所示。
图1-4分布式主机安全评估工作示意图
依照我们的评估体系,分布式主机安全评估研究内容概括起来主要有扫描、通讯、评估和统计分析四大块。
扫描模块主要是在Sensor(评估主机)上执行的,完成脆弱性扫描和扫描结果上传,通讯模块主要是完成指令信息和数据信息的传输,评估模块是在主控中心执行的,依据分析结果进行评估,得到安全评估报告表,论文拟研究内容有以下方面:
1)研究影响主机安全的综合要素,确定评估指标及其量化和规范化。
2)扫描引擎和扫描插件的设计。
3)分布式主机安全评估模型研究,根据分布式的特点,构建基于层次化和多因素的评估模型。
4)分布式主机安全评估中通讯协议和控制的研究,分为主控中心和Sensor通讯、Sensor之间通讯两种。
1.4论文的组织结构
全文共分三部分六章内容,组织如下:
第一部分是摘要及其译文:
摘要部分是对分布式主机安全评估系统和本论文的简单介绍和概括
第二部分是论文目录及其章节内容。
各章组织如下:
4第1章引言。
论述分布式主机安全评估的研究内容、意义、国内外的研究现状以及分布式存在的问题等。
4第2章主要介绍的是分布式主机安全评估的相关概念,分析了相关概念的原理和步骤,阐述了主控中心在课题中的地位以及需求。
4第3章详细介绍了总体的设计方案和框架,介绍了用到的技术难点,并进行了必要的分析。
4第4章提出系统方案,详细介绍系统各模块的实现,阐述了系统中模块与模块之间的接口。
4第5章分析系统运行情况和测试数据,得出测试结论。
4第6章结论,对主控中心的设计和实现做出总结,并做了进一步的展望。
第三部分是致谢、参考文献、附录。
它是对系统和本论文的补充说明。
1.5小结
本章主要介绍了分布式网络安全评估的背景与意义,并且列举了国内外安全评估的标准,对现状进行了分析,总结了存在的问题,明确了研究的目的和内容,最后对论文的结构作了简要的介绍。
第2章系统需求分析
2.1本文的相关概念与定义
2.1.1主控中心的定义
主控中心是整个企业网的控制中心,通过发送一系列的命令来控制企业网中sensor的扫描,同时它具有策略制定、任务调度、sensor存活性探测,以及与DS间通信、分析扫描结果、评估等功能。
2.1.2sensor的定义
Sensor是运行在整个企业网中存活主机上的代理软件,具有接收和解析主控中心发来的命令,同时从服务器上下载相关的扫描插件,执行本地主机扫描,将扫描结果上传到服务器并通告给主控等相关功能。
sensor选举过程具备以下性质;
1)定时性:
一旦加入通信组,sensor在固定时间间隔(如5m)内,在收集自身运行当前时间和IP地址后,利用选票Vote和通信组协议把信息告知组内其他sensor。
2)动态性:
一旦某个DS生命期死亡或感知自己环境安全状态较差,则可以发起选举过程。
2.1.3其他相关概念
1)扫描策略(SP):
是指达到扫描和原始信息收集功能,而对sensor制定的扫描对象、对象优先级和对象评估参考分值的一种方案(Schedule),具有静态属性。
SP:
:
={a,o,p,c|a∈ATTRIBUTE,o∈OBJECT,c∈CVSS,p∈PRIORITY,a∧o∧p∧c→S}
任务策略中的扫描主要对象是通过插件来实现的,因此任务、策略、插件之间的关系可以通过定义给出。
定义单个插件的执行为原子任务tp,用集合的方式可以表示为一个全任务T如下:
T={tp1,tp2,tp3,…,tpk},0Kmax个原子任务tp的组合可构成2max个任务子集(空集考虑在内),每一个子集都可以表示为一个策略,分别定义为SPi,0
用P(A)表示集合T所有的子集过程的集合,则P(A)={SP1,SP2,…,SPi},0
从上述集合之间的表示可以看出来,策略属于任务的一个子集。
子集间的集合操作可形成多样化的策略,策略之间的操作可以形成多样化的任务,在实现的时候表现为策略的合并、策略分离等操作。
2)任务(Task):
是指在一定范围内以策略为基础,在一定的时间内并在不同级别sensor上执行的基本工作单元(Job),具有动态特性。
形式化描述为:
T:
:
={a,sp,t,p,s|a∈ATTRIBUTE,sp∈SCAN_POLICY,t∈TIME,p∈PRIORITY,s∈SCOPE,a∧sp∧t∧p∧s→Job}
任务分配给sensor并在一定时空上执行,主要依靠对策略的解析以完成相关扫描和信息收集工作。
即策略就是为了实现某个目标,在事先或进行中根据当前或预计的不同形势而制定若干行动的方案,并根据当前形势发展选择某一更适合的方案。
3)DS(DesignateSensor),指定sensor,充当S与CC通信间的桥梁,一个网段一个DS。
4)BDS(BackupDesignateSensor),备份指定sensor,时刻监视DS,一旦DS死亡,即充当DS。
一个网段一个BDS。
5)TDS(TempDesignateSensor),临时DS,赋值给CC第一次存活性检测到的S,一个网段一个TDS。
2.2主控中心在分布式评估中的地位与需求
2.2.1主控中心在分布式评估中的地位
主控中心在分布式评估中起着核心的领导地位,一个企业网络存在多个网段,每一个网段都有一个村长来管理这个网段中的子民,而主控中心就是管理所有村长的头。
2.2.2主控中心在分布式评估中的需求分析
主控中心在分布式系统中作为服务器,控制着整个网络,需要有较高的稳定性行,更够快速的处理成百上千个sensor发起了连接请求,这需要在通讯方面采用有效地通讯模型,本文中主要采用了完成端口模型和线程池技术来处理。
主控中心除了作为服务器外,它还将策略、报表、用户和web等模块组合起来,组成一个完整的控制中心系统,同时它自身还具备分析和评估的功能。
2.3小结
本章主要对分布式网络中的成员作了相关的定义,方便后续章节的内容展开,简要的介绍了主控中心在分布式网络的地位和需求分析,从整体上概括了主控中心需要完成的功能模块,