存档

文章标签 ‘风险管理’

10大方法减少内部人员安全风险

2009年8月24日 没有评论 57 views

如今内部人员给公司的安全造成的威胁非同小可。近来的一些报告指出,内部人员对公司的损害在 所有的危害事件中已从80%上升为86%,而且超过半数发生在雇员的终端。无疑,拥有访问公司系统权限的内部雇员极有可能被误导到那些欺诈性的或危险的链 接上。而在所有的雇员中,IT工作人员拥有的这种访问权限最多。因此,IT审核应关注从多个方面确认风险。下面我们给出实施有关控制和减少工作人员对管理 员欺诈的方法。

1.IT安全策略

管理人员应该审视那些能够管理特权账户(如域管理员账户、应用程序管理员账户、数据 库管理员)的IT安全策略,要保障安全策略的存在,还要清楚存取访问是如何被处理、验证、证明的,要确保对这些策略定期进行审查。否则,基本上就不存在管 理特权访问的基础了。在没有相关报告的情况下,管理特权账户的策略是不完整的。特权账户的口令审核报告经常要涉及到如下的问题:口令何时更新、更新失败有 哪些,以及在一个共享账户下,个别用户如何执行任务等等。

制定的策略应具有这样的目标:能够终止明显的不可防御的用户活动。要确保所有的雇员、订约人和其它用户清楚其责任,从而与IT的安全策略、方法以及与其角色相适应的相关指导等。

阅读全文...

分类: 技术文章 标签: ,

IT项目风险管理之道:小心使得万年船

2008年12月3日 没有评论 51 views

引言

  有一首诗歌能够很形象地描述风险的特征:“轻轻的我走了,正如我轻轻的来。”

  “风险”一词的由来,最为普遍的一种说法是,在远古时期,以打鱼捕捞为生的渔民们,每次出海前都要祈祷,祈求神灵保佑自己能够平安归来,其中主要的祈祷内容就是让神灵保佑自己在出海时能够风平浪静、满载而归;他们在长期的捕捞实践中,深深的体会到“风”给他们带来的无法预测无法确定的危险,他们认识到,在出海捕捞打鱼的生活中,“风 ”即意味着“险”,因此有了“风险”一词的由来。

  现代意义上的风险一词,已经大大超越了“遇到危险”的狭义含义,而是“遇到破坏或损失的机会或危险”,可以说,经过两百多年的演义,风险一词越来越被概念化,并随着人类活动的复杂性和深刻性而逐步深化,并被赋予了从哲学、经济学、社会学、统计学甚至文化艺术领域的更广泛更深层次的含义。无论如何定义风险一词的由来,但其基本的核心含义是“未来结果的不确定性或损失”,也有人进一步定义为“ 个人和群体在未来遇到伤害的可能性以及对这种可能性的判断与认知”。

  风险有两种定义:一种定义强调了风险表现为不确定性;而另一种定义则强调风险表现为损失的不确定性。

  若风险表现为不确定性,说明风险产生的结果可能带来损失、获利或是无损失也无获利,属于广义风险,金融风险属于此类。而风险表现为损失的不确定性,说明风险只能表现出损失,没有从风险中获利的可能性,属于狭义风险。 项目管理者联盟,项目管理问题。

  广义的风险展现出来的是机会,虽然这种机会可能让我们的项目变得颗粒无收,但是如果一旦机会有利于项目,则可以大赚一笔,风险投资家们心中的风险正是广义的风险,所以风险才会吸引他们投入巨大的资金。而作为项目管理者来说,风险对他们意味着失败的危险,因此必须将任何风险扼杀于摇篮之中。

  IT项目风险的特征

  由于软件本身的特点,而导致IT项目与传统项目有很大的差异,因此IT项目的风险管理难度要比传统项目大。

  1、 需求不稳定
项目管理者联盟文章,深入探讨。
  软件项目的需求多变已经成为了软件业界的共识,正因为需求的多变,才让瀑布模型一直遭受到软件工程界的抨击,因此而诞生了原形模型。在IBM的RUP和众多的敏捷方法论中,一直将需求不确定列为软件项目的最大特点,因此而出现了拥抱变化一说。

  当一个IT项目已经开始在实施的时候,如果客户连他需要做什么,要实现一些什么功能都不能确定的话,那么做软件实施的工程师他们又如何能够知道自己要开发一个什么样的软件系统出来呢?所以他们只有在漫长的等待过程中,不断遭受到客户的“批评”,在经历了“九九八十一次磨难”之后,才恍然大悟,原来就是要做一个这样的系统啊!

  这有点像一个盲人走路一样,盲人根本就不知道前面是什么,因此他往前走一小步,如果不是路,则向左旋转一点点,再次用脚探探前面,如果是路的话,则可以往前迈一步。如果这个盲人运气不好的话,第一脚就在悬崖边上踏空,那么他将跌入万劫不复的深渊。我们的项目也如同这个盲人,稍有不慎就可能让自己走向失败,这是一个多么大的风险阿。

  2、 项目规模估计不准确

  当老师给我们布置作业的时候,如果他多布置了几个题目,下面的同学便会大声地嘘叹,开始私下的嘟噜:“又要做一个多小时了!”。学生们在很短的时间内就能够准确的估计作业量大不大,他们的估计凭借着他们每天一次的做作业的经验和那一瞬间对题目的印象,虽然他们并没有做过刚布置的这些题目,但是估计得仍然是那么的准确。
任何一个建筑工程的项目经理都能够对自己的项目进度掌握的很准,在他们的眼中,只要钱没有问题,则进度就完全是小儿科,可以轻易的得到保证。工地需要多少人,什么时候需要开始进行什么工序的施工,什么时候需要加班,这些都在他们的心中掌握着。钱就是他们最大的风险,只要钱到位了,一切工作都好开始了。

  而软件项目与之不同,在软件项目开始后,很少有缺钱的。只看到过资金没有到位的“烂尾楼”,但是从来就没有看过由于项目资金没有到位的问题而导致未完成的软件项目,就算是缺钱也是因为签合同的时候要少了。 项目管理者联盟,项目管理问题。

  就算是再优秀的软件项目经理,他也无法预计好自己的项目什么时候能够完成,因为在他进行估算的时候,客户的需求还没有搞清楚呢!再一个,建筑工程的可以通过预算很准确的计算整个建筑的工程造价,而软件项目却很难,因为不管是代码行估算法,还是功能点方法,都远不及“我猜,我猜,我猜猜猜”中猜得准确,这些方法很多时候甚至不如算命先生算得准。

  3、 人的因素对项目影响很大

  人可以说是整个软件项目的灵魂,软件项目不需要钢筋、水泥和沙石,也不需要任何的施工机械。软件项目的原材料就是人的思想和智慧,而计算机和CASE软件则是项目的施工工具。通过键盘和鼠标,无数的程序代码在程序员的手中诞生了。如果要问软件项目最大的成本在哪里,那么答案只有一个,就是人力成本。

  一个优秀的程序员的工作效率要远远大于一个蹩脚的程序员,一个程序新手甚至根本就不能够产生任何生产效率。不仅如此,新手的错误行为,将让熟练员工牺牲很多时间来帮助新手纠正他们的错误,最后下来,甚至可能导致降低软件开发的效率。

  虽然软件项目已经实施角色分工和管理,但是相对于其他工程的分工来说则分工比较单一。软件项目中,一般就分有,系统分析师、架构师、设计师、程序员、测试工程是及配置管理人员和项目经理等。这样的分工并不能有效的降低他们工作内容的复杂度。如果能像建筑工程中的砌墙、浇注混凝土、搭脚手架那样分工细致的话,则培训软件蓝领也不会需要费如此大的力气了。

  小心驶得万年船

  将意外全数来避免,能够全避免

  古语话唯有小心,小心驶得万年船
项目管理者联盟,项目管理问题。
  经常可以见到有人不小心,踩到或者碰到什么东西而摔倒的情况。相反,盲人却很少会因为自己的疏忽而摔倒。他们总是很小心的走着每半步路,对于前面的未知世界,他们总是要探了又探,在确认能够行走的情况下,才小心的迈出半步。

  由于软件项目的太多不可确定性,因此管理软件项目,犹如盲人走路一般。在未来还不确定的情况下面,可以将自己的经验列出来,如在什么时候最可能出现什么风险。盲人在听到汽车声音的时候,总是会更加小心,当软件项目中开始出现一些问题的时候,我们需要考虑这些问题背后所隐藏着的更深的威胁。发现危险总
是需要凭借自己的灵敏的直觉与丰富的经验。
  聪明的经营者,绝对不会是技术方面的专家,因为越是技术专家,就越不能容忍技术方面的缺陷。而经营者所需要考虑的不是技术是否无可挑剔,而是在乎项目是不是赚钱,让别人去承担风险,让自己来享受利润,是聪明的经营者的决策指南。

分类: 技术文章 标签:

软件开发项目的风险管理

2008年10月29日 没有评论 51 views

来源:IT 风险管理论坛

众所周知,软件开发过程可分为:需求分析、设计、编码、测试、安装及维护等几个过程(在RUP方法中:业务建模、需求、分析设计、实施、测试、部署),实际上一个完整的软件项目前后还有其它过程,在这里列出的只是和软件开发相关的核心过程。 软件项目的生命周期可以分为四个阶段(不同行业的项目生命周期不同),即初始阶段、设计阶段、实施阶段、收尾阶段。软件开发过程在软件项目的这四个阶段中的分布情况如下(括弧里面表示RUP方法中的过程):

  初始阶段:大部分需求分析,少部分设计(大部分业务建模和需求,少部分分析设计)
  设计阶段:大部分设计,少部分编码(大部分分析设计,部分实施及测试,开始考虑部署)
  实施阶段:大部分编码和测试,少部分设计(大部分实施及测试,部分部署)
  收尾阶段:安装及维护(大部分部署)

  而项目管理则贯穿在整个生命周期的每个阶段。
  根据PMBOK,项目管理可以从范围管理、时间管理、费用管理、质量管理、人力资源管理、沟通管理、风险管理、采购管理和整体管理等9个方面考虑,对于软件项目管理来讲软件配置管理(属于整体管理)、软件质量管理、软件风险管理及开发人员管理(属于人力资源管理)等四个方面的管理尤为重要,软件开发的每个阶段、每个过程都要重视这几方面的管理。
  下面就以软件项目的风险管理为主题展开讨论。
  软件项目管理的四个阶段中,在初始阶段项目成功的可能性最小,风险发生的概率也就最高,但是这时候一旦预计的风险发生了,损失是最小的,比如:在这个阶段如果某种原因突然资金来源断了(这在需求阶段是很有可能的),以至于不能继续进行项目,不得不终止项目,那么这时候的损失只是需求分析阶段的投入。随着项目的进展项目成功的可能性变大,风险发生的概率逐渐变小,风险对项目的损失逐渐变大,快到收尾阶段的时候风险对项目的损失最大,随着收尾阶段的进行风险又逐渐变小。
  风险管理是对项目风险进行识别、分析和应对的过程。我们先看看项目风险可以怎么分类,然后再对风险管理的这三个过程逐一进行讨论。

  1.风险的分类
  按内容分
  范围风险:与范围变更有关的风险
  质量风险:没有按照要求的技术性能和质量水平完成任务
  进度风险:没有在预算的时间范围内完成任务
  成本风险:没有在预算的成本范围内完成任务
  技术风险:技术变化
  法律风险:许可权、专利、合同失效、诉讼、不可抗力
  外部可预测风险:市场风险(原材料可利用性、需求)、日常运作(维修需求)、环境影响、社会影响、货币变动、通货膨胀、税收
  外部可预测风险:规章(不可预测的政府干预)、自然灾害
  内部非技术风险:战略风险(公司的经营战略发生了变化)、管理风险(公司管理人员是否成熟等)

  未知-未知风险(Unknown-unknowns):不可预知风险
  2.风险识别
  风险的识别就是确定何种风险事件可能影响项目。在项目开始、每个项目阶段中间、主要范围变更批准之前都要进行风险识别,实际上它在整个项目生命周期内都是一个连续的过程。
  要识别风险,首先我们应该了解在软件开发的各个阶段都有可能发生哪些风险(风险事件或风险来源)。
  初始阶段
  在这个阶段进行大部分需求分析、少部分设计(大部分业务建模和需求、少部分分析设计)。
  可能的风险事件:
  1、 项目目标不清
  2、 项目范围不明确(范围太大太小都不可以)
  3、 用户参与少或和用户沟通少
  4、 对业务了解不够
  5、 对需求了解不够
  6、 没有进行可行性研究

设计阶段
  在这个阶段进行大部分设计、少部分编码(大部分分析设计,部分实施及测试,开始考虑部署)
  可能的风险事件
  1、 项目队伍缺乏经验,如缺乏有经验的系统分析员
  2、 没有变更控制计划,以至于变更没有依据,该变更的不变,不该变的也变,这样得来的设计势必会失败或者偏离用户需求
  3、 仓促计划,可能带来进度方面的风险
  4、 漏项,由于设计人员的疏忽某个功能没有考虑进去
  实施阶段
  在这个阶段进行大部分编码和测试,也涉及少部分设计(大部分实施及测试,部分部署),如:设计变更或补充设计。
  可能的风险事件
  1、 开发环境没有具备好
  2、 设计错误带来的实施困难
  3、 程序员开发能力差,或程序员对开发工具不熟
  4、 项目范围改变(突然要增加或修改一些功能,需要重新考虑设计)
  5、 项目进度改变(要求提前完成任务等)
  6、 人员离开,在一个项目内软件开发工作有一定的连续性,需要移交和交接,有时人员离开对项目的影响会很大

  7、 开发团队内部沟通不够,导致程序员对系统设计的理解上有偏差
  8、 没有有效的备份方案
  9、 没有切实可行的测试计划
  10、 测试人员经验不足
  收尾阶段
  在这个阶段进行安装及维护(大部分部署)。
  可能的风险事件
  1、 质量差
  2、 客户不满意
  3、 设备没有按时到货
  4、 资金不能回收
  以上只是例具了常见的风险事件,对不同项目可能发生的风险事件不同,应该对具体项目识别出真正有可能发生在该项目的风险事件。而且还要对这些风险事件进行描述,如:可能性、可能后果范围、预计发生时间、发生频率等。
  风险识别的有效方法有很多,如:建立风险项目检查表、因果分析图、采访各种项目干系人等。
  软件项目的风险可以从以下几方面检查:
  产品规模风险
  业务影响风险检
  与客户相关的风险
  过程风险
  技术风险
  开发环境风险
  与人员的模式和经验有关的风险
  以上我们讨论了在软件项目各个阶段中可能发生的风险事件和识别方法。下面我们看看如何对这些风险事件进行分析。

 3.风险分析
  风险分析就是对以上识别出来的风险事件做风险影响分析。
  和风险相关的有四个因素:
  风险事件,破坏或影响项目的事件
  风险概率(%),事件发生的可能性
  风险得失量(金额),说明可能造成的损失
  风险影响(金额),等于 风险概率 × 风险得失量
  通过对风险及风险的相互作用的估算来评价项目可能结果的范围,从成本、进度及性能三个方面对风险进行评价,确定哪些风险事件或来源可以避免,哪些可以忽略不考虑(包括可以承受),哪些要采取应对措施。

  4.风险应对
  1

分类: 技术文章 标签:

企业网络安全与风险评估

2008年3月4日 没有评论 139 views

  随着Internet 网的发展,企业上网在我国也成了一种趋势,虽然企业上网的原因各种各样,有的是政府行为,有的是企业自发的行为,但是不可否认的是几年来企业上网的层次也有所变化。在 Internet发展的初期阶段,企业上网的含义指的是企业有自己的主页,但很快人们发现这种层次对企业深层次的环节如生产、销售、营销并没有什么太大的促进作用,于是企业慢慢地过渡到比较高的层次,建立自己的网站与局域网,并且与 Internet连接,使企业的上下游伙伴及驻地机构、办事处都能实时了解企业的信息,即过渡到了电子商务的初级阶段。企业内部网也打开了通往 Internet的一个窗口,企业在享受 Internet带来的好处的同时,也面临着一定程序的风险,因为 Internet上存在很多的危险。
  互联网上的危险
  互联网上存在着各种各样的危险,这种危险要能是恶意的,也可能是非恶意的,如因失误而造成的事故;恶意的危险又分为理智型的 ( 如故意偷取企业机密) 和非理智型的( 如毁坏企业的数据) 。总的说来,比较典型的危险主要包括如下几个方面:
  1、 软硬件设计故障导致网络瘫痪。
  如防火墙意外瘫痪而导致失效,以致安全设置形同虚设;由于内外部人员同时访问导致服务器负载过大以致死机、严重者导致数据丢失等等;
  2、 黑客入侵。
  一些不坏好意的人强行闯入企业网实施破坏;冒充合法的用户进行企业网内部,偷盗企业机密信息和破坏企业形象等等;
  3、 敏感信息泄露。
  企业内部的敏感信息被入侵者偷看,导致这种状况的有几种原因,如寻径错误的电子邮件、配置错误的访问控制列表,没有严格地设置好不同用户的访问权限等等;
  4、 信息删除。
  有时网管员对安全权限设置不当,导致某些怀有恶意的人故意破坏企业商业机密的完整性以及向竞争对手故意泄露商业机密等等。
  也就说互联网上的危险不仅来自于外面,而且有时也来自于内部。虽然在互联网上存在不同程度的危险,但为了企业的业务发展,很多企业不得不把企业的内部网联入互联网,向雇员提供互联网的访问。
  美国可以说是比较注重网络安全的国家之一,但是根据 IDG 公司的调查报告表明,在所有被调查的公司中,进行常规性安全检查的公司还不到一半,只有 30% 的公司具有跟踪用户访问的能力, 1/3 的公司使用加密技术,其中有60 家左右的公司在三个月内遭受到142 次入侵。美国尚且如此,我们国家的企业网安全现状如何呢?笔者今年年初在北京参加一次安全会议时,有一安全专家对我国企业网的安全状况用“确实应该引起我们警觉”来概括。
  危险产生的原因
  互联网之所以存在危险的因素,这主要因为互联网本身存在安全漏洞。互联网在设计之初,根本就没想到会发展到今天这个地步,当时认为互联网只是在比较小的范围内使用,在设计互联网 TCP/IP 协议时,主要考虑的是数据的共享,把数据安全忽略掉了。这就如盖一座楼房地基都没有打好,自然而然危险在当初就种下了,对于危险产生的原因主要有下面几条:
  1、 不同厂商不同标准的产品集成在网络中引起配置的复杂性。具体说来就是网络安全控制由于各种各样的硬件产品与软件产品的加入使安全配置变得异常复杂, 很容易出现配置错误或失误,以致会导致未经授权的访问;
  2、 缺乏相应的总体考虑。有些网络在进行系统配置时,无意识地扩大了互联网的访问范围,没有意识到某些互联网服务会被滥用,许多企业网所允许的访问服务类型过多,不能对一些可能会对入侵者有所帮助的网络信息加以访问限制;
  3、 TCP/IP 协议本身固有的缺陷。如前所述, TCP/IP 本身具有一些缺陷,在设计之初就不是太安全,一些有经验的黑客很容易利用 TCP/IP 的缺陷攻击企业网;
  4、 大部分的数据没有加密。企业数据在传递的过程中很少有加密的,现在有很多现成的软件都能对此进行半路拦截。
  上面的四条是主要的四个原因,当然还有其它的原因。知道了不安全的原因,那么我们在考虑企业网安全方案时就有了一个目标,有意识地针对产生危险的原因来设计企业网安全方案。
  当然在设计企业网安全方案时,不能只从纯技术的角度去考虑,也要考虑到现实情况。今年 8 月份全国召开了一个全融行业网络安全会议,一位曾到德国访问的国内某省行行长讲了这样一件事:他到德国某家银行访问考察他们的网络安全时,发现了有一个漏洞,这个漏洞不是容易发现,他就问这个德国银行的行长为什么不想办法堵住这个漏洞,这个德国银行行长说的话让我们深思不已:这只是一个小小的漏洞,即使别人利用这个漏洞,银行损失也不过几百马克,但是要堵住这个漏洞我们可能要化几百万马克,我有必要堵住这个漏洞吗?所以在考虑设计企业网络安全方案时,要以实际情况而定,不能形而上学。 设计企业网安全方案时要考虑到的问题
  在设计企业网安全方案之前,需要制定一套完整有效的安全策略。一般情况下,制订安全策略从以下两个方面考虑:网络服务访问策略、防火墙设计策略。
  所谓网络服务访问策略,就是根据企业的具体业务,明确确定哪些互联网服务要被禁止,哪些互联网服务可以开放。
  在考虑网络服务访问策略时,要考虑非常细致,否则的话稍不注意,就会留下后患。如我们不想让某个企业网用户使用 Telnet 服务访问互联网,虽然在防火墙上进行了设置,但是有些用户还是可以采用拨号连接获得这项服务。
  网络服务访问策略不但应该是一个站点安全策略的延伸,而且对于机构内部资源的保护也应起到全局的作用,从文件安全到病毒扫描程序,从远程访问到移动存储介质的跟踪等都要考虑到,也就是说网络服务策略一定要具有现实性与完整性,现实性保证在降低网络风险和为用户提供合理的网络资源之间做出一个大家都能接收的平衡,否则的话可能会遭到企业内部用户的抵制,这样以来可能会导致达不到应有的效果。
  对于防火墙设计策略的制订,在制订之前要充分知道上面的列出的一些危险以及产生危险的原因。从当前来看防火墙的安全策略有以下两种极端情况:
  1、 除非明确禁止,否则允许。这是一种比较宽松的防火墙安全策略;
  2、 除非明确允许,否则禁止。这是一种极其严格的防火墙安全策略;
  当前现实中的防火墙安全策略都以此作为两个极限点,作了不同程度的折衷。至于依据什么进行折衷,下面风险评估会对此有一个详细的说明。总而言之,防火墙是否满足企业网的安全需要,取决于网络安全设计人员能否恰如其分地把握好这个平衡。
  如何评估风险
  在制订企业网的安全策略之前,要对企业的实际风险做一个尽可能准确的评估,否则的话就会出现或者本来企业网需要的安全级别高,结果为了省钱,选了一个安全性能不是很高的防火墙;或者本来企业网需要的安全级别不是很高,结果花了相当多的钱买了一个安全性能极高的防火墙,浪费了投资,所以一定要