信息技术安全系统的风险评估问题hydt.docx
信息技术安全系统的风险评估问题计算机:焦世斗 物理:宋世巍 电子:张弘 摘要本文把信息技术安全系统的风险评估问题归为一类优化问题。是学校在以用户效率、机会成本为约束条件下,寻找能使总成本最小的措施的优化组合模型。通过对数据的分析和题中所给条件,我们认为、影响机会成本,并存在一个经验初始值(均在0到1之间),每项措施会对、产生影响,进而会对机会成本(和它发生的概率)、总成本产生影响,。在以用户效率、机会成本为约束条件下,求总成本的最小值。因此我们建立这样的模型:和 通过对结果的分析,根据事件的独立性,我们把公式(6)、(7)、(8)换成概率并联公式并对用户效率加一考虑,得到一个优化模型。再进一步分析,我们把各个小项独立开来研究它们对系统的影响,首先通过程序剔除了一些明显不符合要求的措施。然后,我们为每一个小项,按其对总成本影响的大小, 赋予不同的优先级,进而通过优先选择的方法来求解最佳的组合。模型的公式概括如下:最后,我们将简单讨论此模型的通用性。一、问题重述一台计算机如果受到黑客或者病毒攻击,其中重要的个人信息和软件就有可能丢失。为减少黑客或病毒造成的损失,需建立相应的信息术安全系统。通过对一个大学的相关IT系统安全措施(包括技术和政策两方面)分析,我们的任务是:1、建立一个模型,该模型可以用来确定一所大学的IT安全系统所采取的政策和技术是否适当。通过计算机会成本、采购及维护设备费用以及培训系统管理员等各项费用总和,评估一个IT安全系统的优劣,从而得到防御措施(政策和技术两方面)的最佳组合。2、试讨论所给模型的通用性。二、基本假设与符号说明1、基本假设:假设1:每一项措施都是独立的,相互之间没有影响;假设2:、之间是独立的,相互之间没有影响;假设3:、自身效果可以积累,但不是简单的线性关系;假设4:生产效率对其它的影响我们暂时可以忽略;假设5:由于人员薪金固定,故在评估系统时可以只考虑变动因素(机会成本、措施费用等),而不考虑薪金的因素。2、符号说明:-总成本(包括机会成本和总费用,不包括雇佣管理员等固定花费);-某一项风险事件可能产生的最大机会成本;-某一项风险事件发生的概率;-采用各项措施的总费用;-采用项措施等价为一个措施后对系统的累计影响值;-采用项措施等价为一个措施后对系统的累计影响值;-采用项措施等价为一个措施后对系统的累计影响值;,-分别为第n项措施的、值;-第项措施的总费用(包括维修费,培训费等);-所采取的措施集;-某一项措施。各项措施明细表:(见下页表(一)M1Host-based FirewallM2Network-based FirewallM3Host-based Anti-VirusM4Network-based Anti-VirusM5Network-based Intrusion Detection SystemM6Network-based SPAM FilterM7Network-based Vulnerability ScanningM8Data RedundancyM9Service RedundancyM10Strong PasswordsM11No Password PolicyM12Formal Security AuditsM13Disallow WirelessM14Allow WirelessM15Restrict Removable MediaM16Unmonitored Personal UseM17Restricted Personal Use/ Detailed User TrackingM18User Training RequiredM19Sys Admi Training Required 表(一)三、模型的建立(反正切模型)在未采取措施时, C、I、A对机会成本损失的概率有影响,此时C、I、A应存在一个经验初始值、,从而产生初始的机会成本。每个大项措施中都包含几个小项措施,每个小项措施的采用又都会对系统的C、I、A作用,使它们发生改变,进而影响机会成本损失的发生概率Pi,改变机会成本值。同时,措施也将增加费用,影响用户的效率。把19大项看成是固定的,以机会成本、费用和效率为约束条件,求总成本最小值。图: 图(一)根据以上分析,我们初步建立起一个模型: 和 在(9)式中选取适当的C0、I0、A0,由(5)(8)式分别得k项措施确定的C、I、A值,再由(2)(4)式分别得k项措施引起机会成本概率、措施总费用和总机会成本,由(1)式总成本函数得总成本。其关系可以用下面的框图表示:C,I,A,Cost,F(x,p),Y 图(二)四数据的处理数据分析与选取:对于表中的各个improvement概率分布,可以假设用一个密度函数来表示。由于在Mean处取得最大值,并且数据集中于Mean处,则密度函数的概率分布大致如下图所示: 图(三)因而大致应该在Mean处附近,故而在取用数据时取Mean中的数据。五、模型的求解在最初的反正切模型中,我们假设所有的措施是由19项不变的向量组成的;即表中所列的19个大项;因此我们通过“反正切模型”求出其中每一大项的等价项,得出对系统一影响的各项指标;进而通过反正切模型可求k项措施同时作用下的等价的措施,基于此:我们就可以通过穷举的方法来得出最优组合的解;算法设计如下:1:申请一个19个元素的数组,并把各个元素置零;录入19项措施的各个指标,是数组的每个元素与一项措施相对应;2:把数组看成一个二进制数,对其加1,然后进行二进制加发运算;得到一个组合,然后求组合的对应措施组合的总成本,并将其放到另一个数组里;3:重复第二项措施知道01数组的所有元素都为为止;此时放总成本的数组已有了219个元素;4:遍历总成本数组,取其最小值;然后计算最小值对应的措施组合,即得到最佳的措施组合;以此为基础,我们假定C0=0.4、I0=0.4、A0=0.5,以C+为程序设计语言实现算法并对结果进行输出:P10.036605机会成本(元)365957P20.0350023P30.0475497总成本(元)918942P40.0424815P50.0424815最优组合M1,M3, M10,M18,M19P60.0642795 表(二)为了使结果更加真实地反映客观现实;我们在多种不同的状态初值下得到了相应的最佳组合: 初始值无防御成本机会成本总成本最佳组合C0I0A00.20.30.267855002294591090430M1,M3,M40.30.30.362510001730511034020M1,M3,M40.40.40.45358000384952937937M1,M3,M10,M18,M190.50.50.54465000308251861236M1,M3,M10,M18,M190.30.40.45788000358970980955M1,M3,M10,M12,M18,M190.40.30.352810003895421011530M1,M3,M10,M18,M190.40.50.35104000385854938839M1,M3,M10,M18,M190.40.50.64790500322828875813M1,M3,M10,M18,M19 表(三)从数据中我们发现在不同的初始状态下,会得到不同的优化组合。因此,我们认为在进行措施优化评定的同时,须预先给在无防御状态下的初值进行客观的定量的评定。有于时间的关系,我们在这里并未给出具体的解决方案,但我们认为,定量的评定应保证所的值是在0和1区间的数。六、模型的分析首先,通过对模型的求解,我们发现所得结果是比较可行的;因为:一,通过措施的优化组合,使总成本有了很大的降低;二,在一定的初值下,优化的结果可以让人接受。比如,M1,M3,M10,M18,M19的措施组合也是切实可行的。其次,我们预先设的初值对优化结果不仅对无防御下的机会成本,采取后的机会成本、总成本有影响 ,而且对措施的组合也有影响。对总成本的影响主要表现在,总成本是、的函数,应存在一个关系,况且随着、的提高而降低。其实际意义是很显然的。而对组合的影响也是有一定规律的,但是并不是特敏感的。比如,初始值微小()的差别基本不会带来组合措施的变化。第三,问题的出现。我们对所得表(二)进行分析,发现这个最优组合和现实中我们所认可的有些出入,比如,我们所得到的最小总成本小的有些不可思议;这说明我们的模型还存在一些问题,有待于进一步的改进。我们认为一起这样结果的原因是:1:反正切公式只是通过定性分析得出的,并不准确;2:把一大项看成一个固定向量的也并不一定可行;由以上分析,我们对公式进行了进一步的优化。1:依据假设中措施间相互的独立性,并根据系统可靠性理论,提出了基于系统并联的优化模型。2:通过合适的方法,手工剔除了一些明显不符合要求的小项(从83项中选出62项);避免了把大项看成固定向量的简单性和不客观性,去求剩余小项的最优组合。 对于小项,我们进一步引如了系统并联的模型。七、模型的优化方案一:基于系统并联的优化模型一、 模型的重建:为了防止反正切模型的问题的发生,我们引进了系统并联的模型,如下图所示;在一个系统中个元件对系统的影响可分为串联和并联两种。而在我们的系统中,每一项措施对系统的影响不能被看做是串联的,因为他们并不是相互依赖的;那么,我们不防把起看成并联的。 图(四)依据系统并联原理,我们得到优化模型为: 二:模型的求解:同样我们还是在措施为19项的前提下;但与之不同的是这次我们把每一大项中的措施也按照并联的方法来等价成一个措施;基于此,同样可通过穷举的方法的得出最优解:我们在初始值C0=0.4,I0=0.4,A0=0.5的情况下:P10.154787机会成本1361230P20.153682P30.148563总成本2589220P40.15884P50.15884最优组合M1,M3,M4,M10,M12,M17,M18,M19P60.141738 表(四)方案二:基于试探法的逐步回代模型一、模型的建立从前两个模型中我们会发现这样一个问题。那就是我们把一项大的措施看成了一个不变的向量,这虽然在简化模型求解中行之有效。但它确不能代表客观的现实,显然,我们可能会采用host-based firewall 中的几项而不去选择所有。因此,我们需要一个更加完善的模型;它可以对所有的小项进行分析,进而求出最有效,最符合事实的措施组合。我们首先可以先那来一项措施,如,那么我们就可以对把此项加到系统中的结果去分析,这显然是很简单的,我们也回很快的算出采取此项措施之后的总成本A1;那它去和无防御下的系统的总成本(亦即总机会成本,因为 cost为0)A0去比较,如果A1A0,那么,毫无疑问,这想措施是永远不会被采用的。因此,我们就可以把它从83项小的措施中将其剔除。由此,我们可以剔除原来措施中的21项,我们将剔除剩余的措施那来。在初始值C0=0.4,I0=0.4, A0=0.5的状态下,计算剩下每一项单独作用于系统时的总成本,计算出每一项对系统的贡献为,然后把他们按降幂排列。那么,排在最前面的肯定回被采用,因为它对系统优化成本的贡献最大。在基于并联的模型下,我们按从大到小的顺序逐步把剩余的贡献最大的措施加到当前系统中。根据并联模型,可以以同样的方法求出k项措施加入系统后的总成本。则在开始情况下,应有;而当k的数值达到一定程度后,肯定回出现的情况;此时,先前加入的k项措施即是最佳的组合。由此,模型可进一步有化为:若为系统优化的最佳组合,则有;二、 模型的求解算法模型求解算法如下:1:求出剩余63项的每一个,放入一个63项的一维数组array_m63l里;2:对数组进行排序,另设一个相同大小的数组存放排序后新数组每一项和原来的对应关系;3:逐步加入剩余数组元素的第一项,按并联原理求出;4:判断是否满足条件,如果满足,则停机;否则,继续进行第三步,知道求解满足为止,因为不可能是在所用的措施都加上后是最优化的。由于时间的有限,我们在这里并未给出真正的求解,但我们坚信这是肯定能够求出最优解的。八、模型的通用性的讨论我们通过对模型的一步步优化,最后得出了一个基于试探法的逐步回代模型。因为其数据处理的方便,模型的简洁,数据计算的量小等优点,所以具有较大通用性。我们可以和前两个模型进行比较;首先,模型一,二的求解是用穷举法来解的,所以一旦措施加大的话,计算量是成指数性增长的,其时间复杂度为,如果k在六十以上的话,那么在我们有生之年,是看不到不同计算机求出最优解的;而模型三的时间复杂度应为,其优越性可见一斑。通过对安全措施费用占总投入的比重计算,发现其基本在10%-20%之间,这比较符合目前国际上企业安全投入比例,因此该模型具有一定的通用性。但是,三个模型的建立都没有太过考虑到各项措施的内部联系,这也是模型的不足之处。另一个不足之处就是我们并未考虑user productivity对系统的影响;因为一般情况下措施对user productivity的影响可以忽略,只有在政策措施下影响较显著,但user productivity又不对c,I,a产生影响。我们并未考虑这个问题。当然,由于时间和知识的限度,这个模型一定还有很多纰漏与不足,需继续许完善。参考文献:1:姜启源,谢金星,叶俊 数学模型(第三版)北京:高等教育出版社,2003;2;盛骤,谢式千,潘承毅 概率论与数理统计北京:高等教育出版社,2003;3:钱刚,达庆利 基于系统安全工程能力成熟模型的信息系统风险评估, 管理工程学报,2001年第4期;10