软件开发安全PPT课件.pptx

上传人(卖家):三亚风情 文档编号:2739934 上传时间:2022-05-22 格式:PPTX 页数:62 大小:687.42KB
下载 相关 举报
软件开发安全PPT课件.pptx_第1页
第1页 / 共62页
软件开发安全PPT课件.pptx_第2页
第2页 / 共62页
软件开发安全PPT课件.pptx_第3页
第3页 / 共62页
软件开发安全PPT课件.pptx_第4页
第4页 / 共62页
软件开发安全PPT课件.pptx_第5页
第5页 / 共62页
点击查看更多>>
资源描述

1、软件开发安全Software Development SecurityCISSP培训PPT之九1.关键知识领域A. A. 理解安全的概念并将其应用于软件开发的生命周期A.1 软件开发的生命周期A.2 成熟度模型A.3 操作与维护A.4 变更管理B. B. 理解环境与安全控制B.1 软件环境的安全B.2 编程语言的安全问题B.3 源代码的安全问题(如缓存溢出、权限升级、后门程序)B.4 配置管理C. C. 软件安全的有效性评估C.1 认证与认可(即系统授权)C.2 审计与记录C.3 风险分析与风险减缓2.目录哪里需要安全?系统开发生命周期软件开发生命周期安全软件开发的最佳实践软件开发模型能力成熟

2、度模型集成变更控制编程语言和概念分布式计算移动代码Web安全数据库管理专家系统/基于知识的系统人工神经网络恶意软件(malware)3.哪里需要安全(1) 为打败竞争对手向市场发布带有缺陷的软件(2) 黑客发现新软件中的新脆弱性和弱点(3) 在网站上公布这些脆弱性和利用它们的方法(4) 供应商开发并发布补丁,以修复脆弱性(5) 新补丁添加到大量的软件补丁中,所有网络管理员都需要测试和安装它们4.哪里需要安全不同的环境需要不同的安全环境与应用程序软件控制主要通过操作系统、应用程序、数据库管理控制来实现功能的复杂性功能需求-安全需求-安全机制的平衡数据的类型、格式与长度处理数据输入时,长度不是唯一

3、需要考虑的对象实现和默认配置问题理想的默认配置是默认拒绝,由于用户的友好配置往往实现的是最低安全防护5.系统开发生命周期启动(Initiation)需要一个新的系统被定义采购/开发(Acquisition/Development)新系统创建或购买实施(Implementation)新系统安装到生产环境运行/维护(Operations/Maintenance)系统的使用和关注处置(Disposal)系统从生产环境中删除6.启动(Initiation)确定安全需求(确定安全需求(Identify Security NeedsIdentify Security Needs),包括信息/应用的安全级别

4、和关键程度、基本安全目标、安全控制工作量;评估备选方案(Evaluate Alternatives)初始风险分析(初始风险分析(Initial Risk AnalysisInitial Risk Analysis),包括威胁/缺陷/风险、安全备选方案的技术、操作、经济可行性分析、安全相关成本效益评价;方案的选择/批准(Select/Approve Approach)确定安全框架(确定安全框架(Identify Security FrameworkIdentify Security Framework),包括基本安全问题和风险、确定服务水平协议。7.采购/开发(Acquisition/Devel

5、opment)需求分析(Requirements analysis)正式的风险评估(Formal risk assessment)安全功能需求分析(Security functional requirements analysis )安全保障需求分析(Security assurance requirements analysis )第三方评估(Third-party evaluations )安全计划(Security plan )安全测试和评估计划(Security test and evaluation plan)8.实施(Implementation)实施阶段着重于如何使用和操作开发好

6、的系统或应用程序。产品需要配置到一个正确的保护级别。应当执行功能性和性能测试,同时应当分析结果并将其与公司的安全需求进行比较认证(certification)一个检查和评估安全控制的过程,通常由外部独立检查机构执行认可(accreditation)管理层对系统的正式认可,也是对风险的明确接受。9.运行/维护(Operations/Maintenance)运行和维护阶段开始部分的工作包括配置新系统并将其正确地接入网络和工作环境通过持续进行脆弱性测试,监控系统活动和审计事件,就可以实现运作保证如果系统、产品或环境产生重大变化,那么就可能需要执行一次新的风险分析与一个新的认证和认可过程10.处置(D

7、isposal)当系统过期或报废时,可能需要采取一些步骤来保证以安全的方式进行过渡。根据系统中保存的数据的敏感度级别,应该采取不同的处理方式信息可能需要归档、备份至另一个系统、舍弃或者销毁如果数据是敏感的,并且需要被销毁,那么可能需要通过重写、消磁或者物理破坏存储介质进行清除。11.NIST所提供的SDLC模型分解启启 动动购置购置/开发开发实实 现现运作运作/维护维护处处 置置SDLC决定需求:认识需求任务与性能目标之间的联系评估备用资本资产准备资本审查和预算功能需求声明市场调查可靠性研究需求分析备用方案分析成本/收益分析软件转换研究成本分析风险管理计划购置规划安装检查验收测试初步的培训文档

8、资料性能评估合约修改运行维护处理的适当性交流与销售内部组织机构筛选转让与捐献终止合约安全注安全注意事项意事项安全分类初始风险评估风险评估安全功能需求分析安全保证需求分析成本注意事项与报告安全规划安全控制开发开发安全测试与评估其他规划组件检查与验收系统集成安全认证安全鉴定配置管理与控制持续监控信息保存介质净化硬件和软件处理12.软件开发生命周期项目管理(Project Management)需求收集阶段(Requirements Gathering Phase)设计阶段(Design Phase)开发阶段(Development Phase)测试/验证阶段(Testing/Validation

9、Phase)测试类型(Testing Types)发布维护阶段(Release/Maintenance Phase)13.项目管理(Project Management)项目管理流程应到位,以确保软件开发项目的正常执行每一个生命周期阶段。项目管理是产品开发的一个重要组成部分,安全管理是项目管理的一个重要组成部分。一个安全计划应该制定在开发项目的开始并融入功能性计划,以确保安全都是不容忽视的。第一个计划是广泛的,涵盖广泛的基础,为更详细的信息记录引用。任务分解(WBS)是一种用于以有组织的方式定义和组项目的各个工作元素的项目管理工具。SDLC的应以WBS格式被示出,以使各相的妥善处理。14.需求

10、收集阶段(Requirements Gathering Phase)安全需求安全风险评估隐私风险评估风险级别验收需求活动%设计活动%实现活动%需求活动中发现的一定比例的脆弱性将在需求分析、威胁建模和开发滥用案例过程中修复在需求和设计活动中发现的一定比例的脆弱性将在设计审查和验证过程中修复在需求、设计和编码活动中发现的一定比例的脆弱性将在代码审查、静态分析和安全测试过程中修复目标是将导致脆弱性的剩余缺陷最小化15.设计阶段(Design Phase)信息模型规定被处理信息的类型以及处理方式功能模型概括应用程序需要执行的任务和功能行为模型说明应用程序在特定事务处理发生过程中和发生之后的状态设计编码

11、测试功能模型功能模型行为模型行为模型信息模型信息模型数据设计数据设计体系结构体系结构设计设计过程设计过程设计程序模块程序模块已确证软件已确证软件16.设计阶段威胁建模攻击面分析17.开发阶段(Development Phase)根据详细设计规格说明构建源代码(Construct Source Code From Detailed Design Specification)编写或采购并安装安全相关代码(Write or Procure and Install Security-related Code),包括对代码的访问控制、标识和标识/记录;执行和评估单元测试(Perform and Eval

12、uate Unit Tests)执行单元测试并评估安全代码;在最终系统中实施详细设计(Implement Detailed Design into Final System)确保加入正式基线中包含并经过批准的安全部件。18.测试/验证阶段(Testing/Validation Phase)职责分离不同类型的环境(开发,测试和生产)应该适当分开,功能与操作不应重叠。开发人员不应该有机会获得在生产中使用的代码。代码应测试,提交给一个库,然后发送到生产环境。19.测试类型(Testing Types)单元测试(Unit testing )个体组件位于一个受控的环境中,编程人员在这里确证数据结构、逻辑

13、和边界条件集成测试(Integration testing)验证组建是否按设计规范中概述的那样协同工作验收测试(Acceptance testing)确保代码满足客户的需求回归测试(Regression testing )进行系统变更后重新测试,以确保功能性、性能和保护级别20.发布维护阶段(Release/Maintenance Phase)系统部署阶段的相关安全活动包括:活动安全方面的认可(Accreditation);用户安全相关培训;系统安装和数据迁移(Data Conversion)等;系统维护阶段的相关安全活动包括:对系统的监视、评估、审计、修补,确保安全控制有效运行;确保系统连续

14、运行、服务水平以及安全事件响应和更改控制等;系统更新阶段的相关安全活动包括:对更新内容开发和部署过程的安全控制等;21.安全软件开发最佳实践OWASP Top 10 2013注入 失效的身份认证和会话管理跨站脚本不安全的直接对象引用安全配置错误敏感信息泄露功能级访问控制缺失跨站请求伪造(CSRF)使用含有已知漏洞的组件未验证的重定向和转发22.软件开发模型构造修改模式基本上,没有架构设计是在生成修改模型。瀑布式瀑布式开发模型于1970年代提出,是一种早期的系统开发模型,虽然它对于大型和复杂的开发项目显得不够灵活和高效,但仍然得到广泛采用。可行性分析设计实施测试维护23.软件开发模型V型模型原型

15、法(Prototyping)为了克服瀑布模型的缺点而于1980年代提出的系统开发方法,其特征是首先建立一个应用程序的简化版本(原型),用于检查、分析和收集用户意见,在此基础上开发出更好的版本,再重复上述步骤直到开发出最终版本。需求系统测试计划系统测试高层设计集成测试计划集成测试底层设计单元测试计划单元测试实施24.软件开发模型增量模型系统/信息工程化分析设计编码测试增量1第一次增量交付分析设计编码测试第二次增量交付分析设计编码测试第三次增量交付分析设计编码测试第四次增量交付增量2增量3增量425.软件开发模型螺旋模型(Spiral Model)一种结合了瀑布和迭代开发技术的混合模型,类似于原型

16、法,不过每个迭代过程都使用瀑布模型加以规范,应用系统通过一次次瀑布式开发得以不断细化和完善,并且在每个周期进行一次项目风险分析以确定是否继续下一个开发周期;快速应用开发原型周期论证改进构建分析和快速设计测试实施26.能力成熟度模型软件能力成熟度模型(Capability Maturity Model for Software,CMM)是卡耐基美隆大学软件工程研究所(CEI)于1991年提出的软件质量管理方法,它将软件开发商的开发能力分为五个级别:初始型(初始型(InitialInitial),开发过程处于即兴和混乱状态,软件从成功依赖于个人的能力;重复型(重复型(RepeatableRepea

17、table),采用了项目管理的方法对开发费用、进度和产品功能进行跟踪,可以重复以前有效的开发过程;定义型(定义型(DefinedDefined),使用书面方式定义一整套标准化的管理和工程方法,以便用于机构的不同项目;量化管理型(量化管理型(Quantitatively ManagedQuantitatively Managed),对软件开发过程和软件质量进行量化考核以确保开发过程得到良好执行;持续优化型(持续优化型(OptimizingOptimizing),在量化考核的基础上使开发过程得以持续改善;27.能力成熟度模型第1级初始第2级可重复第3级定义第4级管理第5级优化流程无法预测,管理不良

18、,是反应式的针对项目特征的流程,并且是可重复的针对组织机构特征的流程,并且是前瞻性的对流程进行量化评估和控制专注于持续的流程改善28.变更控制1.为变更提出正式申请。2.分析需求。A.制定实施战略。B.计算实现的成本。C.审查任何安全问题。3.记录变更请求。4.提交变更请求审批。5.开发变更。A.重新编码产品程序段,并添加或删减功能。B.链接这些变更的代码到正式的变更控制申请。C.提交软件测试和质量认证。D.重复过程直到能够保障质量。E.记录变更版本。6.报告结果管理层。29.编程语言和概念计算机编程语言分为五代:第一代:机器(Machine)语言,CPU能直接执行的语言,每种类型的计算机都有

19、自己的机器语言;第二代:汇编(Assembly)语言,使用符号代表执行重要指令的一组二进制代码,简化了程序编写过程,属于过程(Procedural)语言;第三代:高级(High-level)语言,也被认为是过程语言,因为也需要它告诉机器怎样做,但语言风格更接近于自然语言,如COBOL、FORTRAN、BASIC、C语言;第四代:非常高级(Very High-level)语言,不是过程语言,因为它只要告诉机器做什么,而无需告诉怎么做,所以编程更简单,如查询(Query)语言、报表生成器;第五代:自然(Natural)语言,非常接近于人类语言,无需程序员学习特定的编程语法,使编程过程更接近于使用人

20、类语言与机器对话,如专家系统、人工智能语言;越高级的编程语言与人类的语言越相近,越简单,编程速度越快,标准化程度越高,也就越安全。30.语言翻译器汇编器(Assembler),用于将汇编语言代码转换为机器语言代码;编译器(Compiler),用于将高级语言代码一次性转换为机器语言结果代码(Object Code),以后可以在相同类型的计算机上直接运行;解释器(Interpreter),用于在程序执行过程中将高级语言代码依执行顺序逐一转换为机器指令,以后每次执行时都要重复这一过程;反编译器(Decompiler),将机器代码转换为高级语言;反汇编器(Deassembler),将机器代码转换为汇编

21、语言,反编译和反汇编都是反向工程(Reverse-Engineering)技术,被大多数结果代码提供商所禁止;31.面向对象编程类(Classes),将属性(即数据)及相关方法(即操作)结合构成类,类的实例(Instance)被称为对象(Object);封装(Encapsulation),外部不能直接访问对象的数据,只能通过对象的方法进行,以防止外界对内部的干扰和误操作,是一种重要的数据隐藏(Data Hiding)技术;多态(Polymorphism),对象可在确保类型安全的前提下,根据输入参数类型的不同进行不同的操作,使一个对象在不同条件下呈现不同的特征;继承(Inheritance),相

22、关的对象类具有类似的特征,子类(Subclass)可以继承父类(Superclass)特征,并在此基础上增加新的特征;将所有预定类型和用户定义类型都表现为类,所有操作都是通过向对象发送消息(Message)的方式进行;32.内聚和耦合内聚(cohesion)反映某个模块能够执行多少种不同类型的任务的术语耦合(coupling)一种度量,表示一个模块完成其任务需要进行多少交互低(松散)耦合:模块在执行其任务时不需要与太多的其他模块通信高耦合:一个模块在执行其任务时需要依赖其他许多模块33.分布式计算Distributed Computing Environment(DCE分布式计算环境) 分布式

23、计算环境(DCE)是设计用来作为现有的硬件、操作系统、网络与分布式应用程序之间的中间抽象层来执行的。DCE核心由以下部分组成:(1)DCE线程:提供进程内多线程的创建、管理及同步的手段。(2)DCE远程过程调用:包括开发工具、开发应用程语言和编辑工具。(3)DCE的目录服务:维护分布式资源,基于RPC监听资源统一的命名机制和位置无关性。(4)DCE分布式时间服务:提供不同计算机之间的时间同步机制。(5)DCE安全服务:提供DCE中安全通信及资源访问控制。(6)DCE分布式文件系统:使用户可以访问或共享位于网上的文件服务器上的任意一个文件,而不需要知道器物理地址。它包括缓存管理器、文件发布器、令

24、牌管理器、DCE本地文件系统和复制服务器。34.CORBA与ORBOMG:在环境中使用不同服务而开发的模型ORB:建立对象间客户端/服务器关系的中间件35.COM与DCOMCOM-组件对象模型一种允许某个应用程序内或相同计算机系统上不同应用程序之间实现进程间通信的机制DCOM-分布式组件对象模型支持分布式IPC36.SaaSSaaS是Software-as-a-Service(软件即服务)的简称,随着互联网技术的发展和应用软件的成熟, 在21世纪开始兴起的一种完全创新的软件应用模式。SaaS:提供给客户的服务是运营商运行在云计算基础设施上的应用程序,用户可以在各种设备上通过瘦客户端界面访问,如

25、浏览器。消费者不需要管理或控制任何云计算基础设施,包括网络、服务器、操作系统、存储等等;PaaS:提供给消费者的服务是把客户采用提供的开发语言和工具(例如Java,python, .Net等)开发的或收购的应用程序部署到供应商的云计算基础设施上去。客户不需要管理或控制底层的云基础设施,包括网络、服务器、操作系统、存储等,但客户能控制部署的应用程序,也可能控制运行应用程序的托管环境配置;IaaS: 提供给消费者的服务是对所有设施的利用,包括处理器、存储、网络和其它基本的计算资源,用户能够部署和运行任意软件,包括操作系统和应用程序。消费者不管理或控制任何云计算基础设施,但能控制操作系统的选择、储存

26、空间、部署的应用,也有可能获得有限制的网络组件(例如,防火墙,负载均衡器等)的控制。37.分布式计算移动代码能够通过网络传送并由另一端的一个系统或设备执行的代码Java Applet面向对象的、与平台无关的编程语言编程人员创建Java applet并在编译器上运行Java编译器将源代码转换为字节码用户下载Java AppletJVM将字节码转换为机器语言(针对具体处理器)Java applet在调用时运行ActiveX控件基于COM和DCOM的OOP技术与工具构成Java为代码运行建立一个沙盒,并且限制代码访问ActiveX使用依赖于数字签名和信任认证授权的身份验证技术38.Web安全针对We

27、b环境的特定威胁39.针对Web环境的特定威协信息收集管理界面身份验证和访问控制输入验证参数验证会话管理40.数据库管理基于角色的数据库管理41.数据库管理软件这个软件被称作一个数据库管理系统(DBMS),通常是由一个数据库管理员控制。它不是将数据保存在网络中的几台不同服务器上,从而方便进行集中管理。它可以更容易备份。它提供了事务持久性。它允许全面的一致性,因为所有的数据都在一个中心位置保存和维护。它提供了恢复和容错能力。它允许与多个用户的数据的共享。它提供了实现完整性检查,访问控制和保密的必要水平的安全控制。42.数据库模型层次(hierarchical)数据库,一种早期数据库模型,其代表是

28、IBM公司1969年推出的信息管理系统(Information Management System,IMS),目前只有少数遗留系统(Legacy System)还使用这种数据库,其特征是记录型之间的树状层次结构关系;网状(Network)数据库,也是一种早期的数据库模型,它是由1971年美国数据系统委员会(CODASYL)的数据库任务组(DBTG)提出,它克服了层次数据库只能表示单树结构关系的弱点,对于层次和非层次结构的事物都能比较自然的模拟,所以在关系数据库出现以前较为常见;43.数据库模型关系(Relational)数据库,当前的主流数据库模型,基于集合论(Theory Set)和谓词逻辑

29、(Predicate Logic),抽象级别比较高;对关系数据库的操作是高度非过程化的,用户不需要指出特殊的存取路径,路径的选择由DBMS的优化机制来完成;面向对象(Object-Oriented)数据库,一种新兴的数据库模型,它将所存储的数据视为对象,这种模型通常是在关系数据库的基础上增加了面向对象的接口;终端用户(End-User)数据库,如Dbase、Access等文件型数据库;电子表格(Spreadsheets),如Excel。44.数据库编程接口开放数据库连接(Open Databases Connectivity,ODBC)为数据库查找到执行翻译的、针对具体数据库的必要驱动程序,进

30、而将请求翻译为特定数据库能够理解的数据库命令对象连接和嵌入数据库(Object Linking and Embedding Database,OLE DB)作为中间件运行在客户端或者服务器上替代ODBC,可支持非关系数据库基于COM接口与OLE无关开发人员通过ActiveX数据对象(ADO)访问允许不同的应用程序访问不同类型和来源的数据45.数据库编程接口活动数据对象(Active Data Objects,ADO)允许应用程序访问后端数据库系统的API,使用OLE DB接口连接数据库针对底层数据访问技术的高级数据访问编程接口用于访问数据来源、而不只是用于数据库访问的CPM对象允许开放人员编写

31、程序来访问数据使用ADO时,SQL命令不需要访问数据库Java数据库连接(Java Database Connectivity,JDBC)允许Java应用程序与数据通信的API一个与ODBC相同的功能的API,专门为Java数据库应用程序设计使用独立于数据库的连接使Java程序能够执行SQL语句的Java API46.关系数据库组件数据定义语言(DDL)定义数据库的结构和模式定义数据库的结构、访问操作和完整性过程数据库操作语言(DML)包含了使用户能够查看、操作和使用数据库的所有命令(view、add、modify、sort和delete命令)查询语言(SQL)使用户可以对数据库提出查询请求报

32、表生成器以用户定义的方式生成数据打印输出47.关系数据库组件字典(字典(Data DictionaryData Dictionary)数据字典是数据元素定义、模式对象和引用键的集中式集合。主键(主键(Primary KeyPrimary Key)唯一标识条目中具体实例(Instance)的属性或属性集,一个表必须有一个主键,可以成为主键的属性被称为候选候选键(键(Candidate KeyCandidate Key),主键是候选键的一个子集,主键以外的候选键被称为备用键(备用键(Alternate KeyAlternate Key);外键(外键(Foreign KeyForeign Key)在

33、其它表中是主键的本表属性被称为本表的外键,外键的值表示与其它表条目的联系,关系数据库通过主键和外键的这种联系体现数据之间的基本关系。48.完整性并发(Concurrency),多个事务同时访问数据库中某数据对象的情况,如果不采取适当的控制措施,就可能危害到数据对象的完整性,数据库主要采取锁(Lock)机制保护并发环境下的数据完整性;原子化(Atomic),为了防止事务过程中断造成数据对象的不一致,事务过程应该实现原子化,即要么完成了事务处理,要么对数据对象不产生影响;完整性规则(Integrity Rules),对表中的值及其关系进行约束,可分为;实体(Entity)完整性,主键值不能为空(N

34、ull);参照(Referential)完整性,外键值必须有对应的主键值;49.数据库安全问题聚合(Aggregation),将来自不同信息源的非敏感信息组合获知敏感信息的数据库攻击方法;并行(Concurrency),对某一数据的并行访问可能引起访问过时数据、数据不一致或死锁等问题;推论(Inference),通过可访问信息推论出非受权信息,如通过查看病人的处方推论出病人的病情,是最难防范的数据库威胁;多实例(Polyinstantiation),数据库中有多个位置存储同一信息,这种情况下实现信息的同步更新确保其完整性将会比较困难;查询攻击(Query Attacks),使用查询工具直接访问

35、数据库服务绕开应用程序控制的攻击方式;50.数据仓库和数据挖掘数据仓库(Data Warehousing)集中存储来自机构各个数据源的历史数据,以便通过对数据的分析支持机构的管理决策;数据集市(Data Marts)与数据仓库不同,它只集中了机构中某部门或某专题的数据;构建数据仓库的步骤包括:将所有信息汇集到一个大型数据库中;规格化(Normalize)数据,包括统一数据格式,清除重复数据项;挖掘(Mine)数据的关联性(Correlation),生成元数据(Metadata);净化(Sanitize)元数据并将其输出给相关用户;将新的数据和元数据汇集到数据仓库。51.数据挖掘数据挖掘(Dat

36、a Mining),另一种从数据仓库发现信息的方法,其特点是揭示数据之间的隐含关系、模式和趋势,以便为管理决策提供信息,如对安全日志的深入分析;使用数据挖掘技术时应关注敏感信息,特别是隐私信息的泄漏问题,另外数据的完整性也是很重要的,因为数据的错误可能导致分析结果失真影响管理决策的效果。在线分析处理(Online Analytical Processing,OLAP),该技术可以协助分析人员构造查询请求,并根据查询结果改进查询请求,为了能够有效地提取数据仓库的信息,要求分析人员充分了解机构的运行细节及其对管理数据的需求;52.数据仓库和数据挖掘做出决策数据的表示(可视化技术)数据挖掘(知识的发

37、现)数据的利用(统计分析、数据分析、报告)数据仓库、数据集市数据源(文件、记录、数据库、信息提供商等)管理层数据分析员编程人员数据库管理人员53.基于功能的各种系统基于数据的系统基于数据的系统基于规则的系统基于规则的系统基于知识的系统基于知识的系统能处理能处理数据数据规则数据规则知识能输出能输出信息信息决策实时决策信息决策答案专家建议推荐常用于常用于硬编码规则企业规则部门规则最适合于最适合于IT/系统规则简单的业务规则复杂的业务规则最适合于这些类型最适合于这些类型的应用程序的应用程序传统的信息系统决策合规性建议产品选择推荐故障解决方案域范围域范围广泛逻辑深层逻辑54.专家系统/基于知识的系统专

38、家系统,也称为基于知识的系统,利用人工智能(AI)来解决问题。55.专家系统专家系统(Expert System),收集和存储相关领域专家的知识,以推论计算模型模拟专家分析处理问题,得出和人类专家一样的结论,其主要部件包括:知识库(Knowledge Base),用于收集和存储相关知识域(Knowledge Domain)的数据和知识,知识库通常以如果则(If then)的模式对专家的知识加以归纳;推理机(Inference Engine),根据用户的输入对知识库数据进行分析导出结果的算法或规则,包括逻辑推理(Logical Reasoning)和模糊逻辑(Fuzzy Logic)等运算方式。

39、56.知识管理企业记忆(Corporate Memory),由机构中所有的数据、信息和知识,包括客户、产品、供应商信息、员工的知识、各种文件资料构成;基于知识的系统(Knowledge-based System),将企业记忆中的数据转换为用于解决机构问题、促进机构发展的有用知识的自动化系统,其中的主要方法包括:可能性方法(Probabilistic Approach);统计方法(Statistical Approach);分类方法(Classification Approach);趋势分析(Deviation Trend Analysis);神经网络(Neutral Networks);专家系

40、统(Expert System)57.人工神经网络人工神经网络(ANN)是一种基于大脑的神经结构的数学或计算模型。第一,具有自学习功能。例如实现图像识别时,只在先把许多不同的图像样板和对应的应识别的结果输入人工神经网络,网络就会通过自学习功能,慢慢学会识别类似的图像。自学习功能对于预测有特别重要的意义。预期未来的人工神经网络计算机将为人类提供经济预测、市场预测、效益预测,其应用前途是很远大的。第二,具有联想存储功能。用人工神经网络的反馈网络就可以实现这种联想。第三,具有高速寻找优化解的能力。寻找一个复杂问题的优化解,往往需要很大的计算量,利用一个针对某问题而设计的反馈型人工神经网络,发挥计算机

41、的高速运算能力,可能很快找到优化解。58.恶意代码(Malware)病毒查找其他程序并将自身副本嵌入其中进行感染的程序,当执行被感染的程序时,嵌入的病毒会执行,从而扩大感染范围僵尸网络(bot)黑客发送以僵尸程序软件为负载的恶意代码僵尸程序登入指定的IRC或Web服务器执行指令蠕虫不需要宿主程序进行自我复制,通过电子邮件、Web站点下载等方式进行自我传播逻辑炸弹特定事件发生时,逻辑炸弹会执行某个程序或者一段代码特洛伊木马伪装成另外一个程序的程序59.恶意代码(Malware)Rootkit当系统被成功攻破,攻击者可能会试图提升自己的权限来获得系统管理员用户或超级用户级访问。一旦获取高级别的访问权限,攻击者便可以上载的工具包,统称一个rootkit。间谍软件和广告软件间谍软件是暗中安装在目标计算机上收集有关受害人的敏感信息类型的恶意软件。广告软件是软件自动生成(呈现)的广告。60.防病毒软件61.交流与讨论2022年5月22日星期日62.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(软件开发安全PPT课件.pptx)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|