信息化应用系统开发平安标准.docx
- 文档编号:22809607
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:18
- 大小:26.61KB
信息化应用系统开发平安标准.docx
《信息化应用系统开发平安标准.docx》由会员分享,可在线阅读,更多相关《信息化应用系统开发平安标准.docx(18页珍藏版)》请在冰豆网上搜索。
信息化应用系统开发平安标准
信息化应用系统开发平安标准
1 概述
软件不平安的因素要紧来源于两个方面,一是软件自身存在错误和缺点引发的平安漏洞,二是来自外部的解决。
良好的软件开发进程治理能够专门好地减少软件自身缺点,并有效抗击外部的解决。
本标准要紧规定了集团信息化应用系统在系统开发的各个时期所应遵守的各类平安标准,将在不同时期中所需要注意的平安问题和相关的平安标准进行进一步的描述和规定,以提高集团信息化应用系统的平安性和抗击外部解决的能力。
2 可行性打算
可行性打算是对项目所要解决的问题进行整体概念和描述,包括了解用户的要求及现实环境,从技术、经济和需求3个方面研究并论证项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供利用的资源(如、软件、人力等)本钱,可取得的效益和进度作出估量,制订完成开发任务的实施打算。
2.1 时期性功效
可行性研究报告。
2.2 可行性研究报告重点
如下4个方面:
1、设计方案
可行性研究报告的需对预先设计的方案进行论证,设计研究方案,明确研究对象。
2、内容真实
可行性研究报告涉及的内容和反映情形的数据,必需绝对真实靠得住,不准有任何误差及失误。
可行性研究报告中所运用资料、数据,都要通过反复核实,以确保内容的真实性。
3、预测准确
可行性研究是投资决策前的活动,对可能碰到的问题和结果的估量,具有预测性。
因此,必需进行深切地调查研究,充分地占有资料,运用符合实际的预测方式,科学地预测以后前景。
4、论证周密
论证性是可行性研究报告的一个显著特点。
要使其有论证性,必需做到运用系统的分析方式,围绕阻碍项目的各类因素进行全面、系统的分析,既要作宏观的分析,又要作微观的分析。
3 需求分析
确实是对开发什么样的软件的一个系统的分析与假想,它是一个对用户的需求进行去粗取精、去伪存真、正确明白得,然后把它用工程开发语言表达出来的进程。
需求分析时期要紧工作是完成需求对业务的表达,这体此刻对需求规格说明书中,包括业务流程,子系统划分,状态图,数据流图等,最终通过用户用例完成业务分析测试。
需求分析时期最大的隐患即需求未能准确地描述表达对用户需求的真正正确明白得,因此,需求分析时期的平安工作,应要紧在对用户需求真正准确的明白得上。
需求分析时期需深切描述软件的功能和性能,确信的约束和软件同其他系统元素的接口细节,软件的其他有效性需求,借助于当前系统的逻辑模型导出目标系统逻辑模型,解决目标系统“做什么”的问题。
需求分析时期需形成的文档包括《需求分析说明书》、《业务分析测试报告》、《用户利用手册初稿》。
可分为需求提出、需求描述及需求评审三个时期。
3.1 需求提出
需求要紧集中于描述系统目的。
开发人员和用户确信一个问题领域,并一个描述该问题的系统,形成系统规格说明。
3.2 需求描述
在需求分析时期分析人员的要紧任务是:
对用户的需求进行辨别、综合和建模,清除用户需求的模糊性、歧义性和不一致性,分析系统的数据要求,为原始问题及目标软件成立逻辑模型。
分析人员应发觉并提出哪些要求是由于用户的片面性或短时间行为所致使的不合理要求,哪些是用户尚未提出但具有真正价值的潜在需求。
3.3 需求评审
在需求评审时期,分析人员要在用户和人员的配合下对自己生成的需求规格说明和初步的用户手册进行复核,以确保的完整、准确、清楚、具体,并利用户和软件设计人员对需求规格说明和初步的用户手册的明白得达到一致。
一旦发觉遗漏或模糊点,必需尽快更正,再行检查。
需求评审内容需至少包括以下内容:
1、需求分析进度日程实施打算
进行时,应注意一切信息与需求都是站在用户的角度上。
要幸免分析员的主观想象,并
将分析进度提交给用户,以确保需求分析进程及时与用户沟通交流,让用户进行检查与评判,从而达到的准确性。
2、描述软件的功能和性能
确信的限制和软件同其它系统元素的接口细节。
3、需求评审的目的
通过,慢慢细化对软件的要求,描述软件要处置的数据域,并给提供一种可转
化为数据设计、和进程设计的数据和功能表示。
在软件开发完成后,制定的需求分析说明书还要为评判提供依据。
3.4 需求分析的大体原那么:
1、开发平安需求分析打算应由项目开发单位、信息化主管部门、业务主管部门一起商议决定。
2、应用系统平安需求应能够达到业务所期望的平安水平。
3、所有关于应用系统的业务更新或改良原那么上都必需基于业务需求,并有业务事件支持。
4业务需求是系统更新和改动的基础,因此必需清楚明确地概念业务的需求,禁止在业务需求未经业务部门和要紧负责人员认可的情形下,盲目地进行开发工作。
5、系统的每一次更新或改良都必需从头对平安需求进行概念、分析和测试评估,以保证可不能对业务造成阻碍。
6、系统设计前,需成立开发平安需求分析报告,并通过信息化主管部门审核。
7、应用系统开发需符合相关法律法规上的要求,符合相关的行业标准和治理制度。
4 设计
通常分为和详细设计两个时期,要紧任务确实是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的。
确实是结构设计,其要紧目标确实是给出的模块结构,用表示。
详细设计的首要任务确实是设计模块的程序流程、算法和,和设计。
系统的设计需达到一个从来没有接触过的人一看就能够从方方面面都对系统的作用,功能,实现方面有一个可能了解,并为以后的各类详细设计文档提供一个指引和方向。
设计析时期需形成的文档包括《概要设计说明书》、《详细设计说明书》。
设计时期的要紧平安工作包括:
4.1 功能划分
设计时期的功能划分不合理,难以发觉,且不行处置。
因此功能模块设计需详细描述系统有那些要紧功能,这些功能应该用何种技术,大致是如何实现的,以便发觉问题。
4.2 模块协作
描述模块间如何协同运作的,以便发觉问题。
4.3 系统定级
平安设计描述系统应该具有的平安级别,和达到此平安品级的所采纳的技术。
4.4 隐通道
本来受平安策略限制不能进行通信的实体,利用可执行的操作的副作用而实现通信。
4.5 认证不充分
只有分派有足够权限访问的操作进程才能够访问和操作相应的进程,解决者同城会采取一些解决获权限而执行一些非法操作,使得系统不靠得住。
在设计中,需增强访问孔子,确保操作都通过相应的授权认证许诺。
4.6 缓冲区溢出
缓冲区是分派的一段大小确信的内存空间,是内存顶用来寄存数据的地址。
发生缓冲区溢出时,会覆盖相邻内存块,从而引发程序平安问题。
因此在设计时期,就需做好缓冲区溢出防范工作。
4.7 并发操纵策略
并发作为一种提高运算机系统运行效率的重要手腕,在取得普遍应用的同时,其机制本身容易引发以下问题
(1)竞争
(2)活锁
(3)死锁
设计时期需考虑到并发带来的上述问题,并做处置。
4.8 TOCTTOU错误
是一种利用公用可写文件,解决者能够创建同名连接到其访问的文件,来达到非法访问的目的。
因
此,系统设计时,需有相应的防护策略。
4.9 数据库重要信息的爱惜
数据库中的重要信息需加密存储,并有相应的防控方法。
4.10 配置治理:
对治理界面进行XX的访问、具有更新配置数据的能力和对用户帐户和帐户配置文件进行未
经授权的访问。
4.11 身份验证
口令长度不低于8位;口令至少需数字和字符串组合;口令需加密存储;口令验证通信信道需加密,以爱惜身份验证;利用强密码,支持密码有效期和帐户禁用。
4.12 访问操纵
任何用户若是希望访问应用系统中的某一部份,那么必需通过唯一的认证授权方式。
4.13 授权
利用最少超级治理帐户,每一个系统不得多于2个;不得采纳集中授权,凡是授权,均进行单独授权(初始化授权可批量,但初始化权限分派必需通过信息化主管部门审核);限制用户访问最小权限资源。
4.14 收权
用户离职或其它缘故不需再访问系统,需要及时有关系统的权限
4.15 灵敏数据
对网络上传输的灵敏数据进行加密;确保通信通道的平安;对灵敏数据存储提供强访问操纵。
4.16 Cookie治理
不要在cookie中永久性存储灵敏数据;不要利用HTTP-GET协议传递灵敏数据;不要通过HTTP连接传递身份验证cookie。
在授权cookie内设置平安的cookie属性,以便指示阅读器只通过HTTPS连接向效劳器传回cookie。
4.17 远程保护治理
在治理界面上利用身份验证后授权;远程治理时要确保通信通道的平安。
1.1 会话治理
限制会话时常,具体时长由业务系统决定,闲置会话原那么上不超过15分钟。
爱惜会话状态,以避免XX的访问。
1.2 加密
考虑到集团公司会代表国家荣誉,加密算法,需采纳我国的算法或我国改造的算法。
SM1-SM9算法,SSF33算法,祖冲之对称秘钥算法等,密钥最低不得低于32位。
按期回收治理密钥。
1.3 异样治理
设计好异样处置机制。
1.4 审核和记录
在所有应用中审核和记录活动,确保日记文件访问的平安,按期备份日记文件。
1.5 5.1.12后门预防操纵
系统须有机制,避免歹意解决绕过平安性操纵而获取对系统资源访问和操纵。
1.6 平安设计评审
应用系统设计方案需要由信息化主管部门进行组织平安评审。
1.7 确保日记治理机制健全
成立可依照情形自由设置的日记治理机制,日记记录的范围和详细程度能够依照需求自行定制,且能够实此刻应用系统的利用进程中进行日记的定制和记录。
保留所有与系统开发相关的程序库的更新审核记录。
日记信息不可删除和修改,日记信息需是自动记录,不许诺存在手工参与情形。
4.18 审计平安标准
(1)应包括每一个用户的平安审计功能,对应用系统的重要平安事件进行审计。
(2)应保证无法单独中断审计进程,审计记录无法删除、修改或覆盖。
(3)审计内容应包括事件要紧信息:
日期、时刻、操作人、类型、事件信息和结果等。
(4)应提供审计记录数据统计、查询。
4.19 数据及通信有效性治理标准
(1)应提供校验码技术,保证通信进程的数据完整性。
(2)应具有在请求的情形下为数据原发者或接收者提供数据原发和接收数据的功能。
(3)提供有效性验证功能,保证人机接口或通过通信接口输入的数据格式或长度符合系统设定要求。
(4)提供自动爱惜功能,当故障发生时自动爱惜当前状态,保证系统能够恢复。
(5)当应用系统的通信两边中的一方在一段时刻内未作任何响应,另一方应能够自动终止会话。
(6)应能够对系统的最大并发会话连接数进行限制。
(7)应能够对单个帐户的多重并发会话进行限制。
(8)应能够对一个时刻段内可能的并发会话连接数进行限制。
(9)应能够对一个访问帐户或一个请求进程占用的资源分派最大限额和最小限额。
(10)、应能够对系统效劳水平降低到预先规定的最小值进行检测和报警。
(11)应提供效劳优先级设定功能,并在安装后依照平安策略设定访问帐户或请求进程的优先级,依照优先级分派系统资源。
5 编码
是指把转换成能够同意的程序,即写成以某一程序设计语言表示的“源程序清单”。
5.1 编码时期的要紧工作:
1、基于软件产品开发质量要求,充分了解开发语言、工具的特性和风格,选取适合的编程语言。
2、编码。
3、提供源程序清单。
5.2 编码时期需要考虑的平安问题包括:
1、内存平安的实现
编程进程中内存数据显现的常见平安问题,如缓冲区溢出、整数溢出、字符串格式化等。
2、线程/进程平安
如线程同步、线程死锁等
3、科学地处置异样
异样是程序设计中必需处置的,要紧解决如何处置异样能够保证系统的平安性。
4、输入输出的平安保障
如对输入的合法性检测。
5、权限操纵的处置
系统中涉及授权和限制访问,需要有完善的权限操纵机制。
6、数据的爱惜
数据窜改和抵赖的防护和查验
除加密解密外,还需要对对信息来源的辨别、对信息的完整和不可否定等功能进行保障。
7、代码的优化处置
所有的程序,都需通过代码优化,代码性能的好坏有时候不仅关系到系统的运行效率,也关系到系统的平安。
8、Web编程平安。
Web编程中平安问题多种多样,但至少应有应付跨站脚本、SQL注入、Web认证解决、URL操作解决等平安问题。
9、参数变量处置
若是需要设置变量,不能利用缺失的默许值,如需设置PATH为一个已知的值,而不能利用启动时的缺省值。
10、SQL标准
(1)系统须有完善的避免sql注入处置机制。
(2)SQL语句的参数应以变量形式传入。
11、页面请求处置应校验参数的长度
WEB效劳器在同意页面请求时,应校验参数的最大长度,截断超出最大长度的范围。
12、登录失败信息错误提示
WEB效劳器在同意用户登录请求时,不该区分登录失败的提示信息(如:
用户名不存在、密码错误、密码已过时等),应采纳统一的失败提示信息(如:
错误的用户名或密码)。
13、错误提示信息标准
所有对用户显示的错误信息都不该暴露任何关于系统、网络或应用程序的灵敏信息。
若是需要的话,应利用包括编号的一样的错误信息,这种信息只有开发者或支持小组才能明白得。
14、开源软件治理
(1)开源的产品、平台及实现的功能应符合项目的需求。
(2)开源License需适用于产品,假设无License或License不友好的,需进行开源产品利用的风险评估。
(3)开源软件的代码需整洁、注释完善。
(4)选取的开源产品的文档说明需齐全。
15、开发版本治理
(1)在应用系统开发进程中利用配置及版本治理工具治理开发进程中的权限操纵、源代码和相关文档的版本操纵、变更治理。
(2)保证开发、测试、正式运营环境的隔离,操纵开发代码的平安传输。
(3)不能利用正式运营环境的数据作为测试数据,如必需利用,需要进行数据处置。
(4)应用系统软件版本审批。
对应用系统的版本的升级,应确认当前的版本为最新的版本,旧的版本应进行归档,不得随意抛弃或删除。
16、应用系统版本升级打算
(1)制定相关的升级打算,确保将系统升级对业务的阻碍降至最低。
(2)应用系统软件版本升级后需进行测试,确认系统的各类平安特性。
(3)应利用软件加锁技术避免不同版本彼此覆盖的情形。
(4)当版本变更时应在更新的版本中记录变更的详细描述。
(5)应提供版本的归并功能。
(6)版本的更改应只许诺指定的人员进行操作。
(7)应记录所有的版本变更的日记,其中包括更改日期、更改前版本号、更改后版本号、更改人、审批人等信息。
17、开发日记管标准
(1)系统开发中的相关日记文件应依照开发周期按期审核。
(2)开发人员权限按期(3个月)审核一次。
18、外包的治理标准
应付外包开发进行治理,保证软件代码的准确性、操纵歹意代码、逻辑炸弹等,能够采纳代码抽查、签署合一样模式来实现。
19、开发环境平安治理标准
(1)软件开发环境由开发效劳器、开发用户终端、网络操纵域与端口、其他配套输入输出和存储设备组成;
(2)软件开发环境应与正式运营环境在物理上隔离;
(3)软件开发环境与测试环境在逻辑上分开;
(4)规定软件开发环境的配置标准和实际配置保护日记;
(5)软件开发环境幸免无关软件和数据文件的安装复制,避免有害代码植入和传播;
20、其它
(1)应从正规的软件供给商那里购买相关的软件或程序或中间件。
(2)应查验和验证源程序和源代码。
(3)在系统正式投入利用之前应进行评估,如一些行业的标准认证评估。
(4)在系统正式投入利用后,应严格治理源代码的访问、升级和修改。
(5)应利用有资质的开发人员操作密钥系统。
(6)不得随意安装他人给的软件,专门是不得随意打开电子邮件中的附件,一些可执行文件必需先进行病毒及歹意代码的扫描。
6 测试
的目的是以较小的代价发觉尽可能多的错误,软件测试的关键在于一套超卓的测试用例(测试数据与功能和预期的输出结果组成了)。
一般的功能测试的要紧目的是:
(1)确保软件可不能去完成没有预先设计的功能
(2)确保软件能够完成预先设计的功能
平安测试的要紧目的是:
要抢在解决者之前尽可能多地找到软件中的漏洞。
以减少软件受到解决的可能性。
平安性测试至少至少应考虑的问题:
6.1 用户认证平安的测试要考虑问题
(1)明确区分系统中不同用户权限
(2)系统中会可不能显现用户冲突
(3)系统会可不能因用户的权限的改变造成混乱
(4)用户登岸密码是不是是可见、可复制
(5)是不是能够通过绝对途径登岸系统(拷贝用户登岸后的链接直接进入系统)
(6)用户推出系统后是不是删除所有鉴权标记,是不是能够利用后退键而不通过输入口令进入系统
1.1 数据库平安考虑问题
(1)系统重要数据是不是机密
(2)系统数据的完整性
(3)系统数据可治理性
(4)系统数据的独立性
(5)系统数据可备份和恢复能力
1.2 平安测试的内容案例和参考方式
1、输入验证测试,包括如下方面
(1)数据类型(字符串,整型,实数,等)
(2)许诺的字符集的最小和最大的长度
(3)是不是许诺空输入
(4)参数是不是是必需的
(5)重复是不是许诺
(6)数值范围
(7)特定的值(列举型)
(8)特定的模式(正那么表达式)
2、问题访问操纵测试
要紧用于需要验证用户身份和权限的页面,复制该页面的url地址,关闭该页面以后,查看是不是能够直接进入该复制好的地址
从一个页面链到另一个页面的间隙能够看到URL地址或
直接输入该地址,能够看到自己没有权限的页面信息
3、会话治理测试
系统的某些功能不许诺用户阅读,若是必需要一个用户列表,并对列表中和未有在列表中的用户进行权限测试。
4、跨站脚本(XSS)测试
解决者利用跨站脚本来发送歹意代码给没有觉察的用户,窃取他机械上的任意资料。
测试参考方式:
HTML标签:
<…>…;
转义参考字符:
&(&);<(<);>(>);(空格)。
脚本参考语言:
特殊字符、最小和最大的长度、是不是许诺空输入。
5、缓冲区溢出测试
用户利用缓冲区溢出来破坏web应用程序的栈,通过发送专门编写的代码到web程序中,解决者能够让web应用程序来执行任意代码。
6、注入式漏洞测试
例:
一个验证用户登岸的页面,若是利用的sql语句为:
Select*fromtableAwhereusername=’’+username+’’andpassword=’+password+’。
Sql输入‘or1=1就能够够不输入任何password进行解决。
7、不适当的异样处置
程序在抛出异样的时候给出了比较详细的内部错误信息,暴露了不该该显示的执行细节,网站存在潜在漏洞。
8、不平安的存储,没有加密关键数据测试
例:
view-source:
http地址能够查看源代码
在页面输入密码,页面显示的是*****,右键,查看源文件就能够够看见适才输入的密码。
9、拒绝效劳测试
解决者能够从一个主机产生足够多的流量来耗尽狠多应用程序,最终使程序陷入瘫痪。
10、不平安的配置治理测试
Config中的链接字符串和用户信息,邮件,数据存储信息都需要加以爱惜。
至少应配置所有的平安机制,关掉所有不利用的效劳,设置角色权限帐号,利用日记和警报。
11、漏洞测试
负责平安测试工作的人员应通过工具或人工方式,对软件执行漏洞识别测试,尽可能识别软件漏洞、后门等隐患,常见的隐患包括堆SQL注入漏洞、跨站脚本漏洞、缓冲区溢露马脚、拒绝效劳漏洞等。
负责平安测试工作的人员应付软件执行渗透测试,确信所识别漏洞被利用的难度及造成的后果。
12、测试用例爱惜
关于涉及公司及员工灵敏数据或隐私数据的测试用例,测试人员应采取插入冗余数据和访问授权等爱惜方法,测试终止后,测试人员应及时删除这些测试数据。
13、测试进程中的平安
测试数据应选择、爱惜和操纵;应幸免利用包括涉密信息的运行数据库用于测试。
若是测试利用了涉密信息,那么在利用之前应去除或修改所有的灵敏细节和内容。
在应用系统测试中,利用正式运行系统数据进行测试应由数据所有人授权,利用灵敏的正式运行数据测试应进行变形处置。
1.1 平安测试人员要求
1、平安测试工作既可由项目组成员、技术治理部人员执行,还可由第三方测评机构执行。
2、测试人员需具有相应的软件测试资质。
3、针对平安需求的跟踪,制定单独的测试打算
4、平安性测试宜结合专门的源代码平安测试工具和应用测试工具。
1.2 漏洞响应和产品的保护
在软件开发的进程中,即便在设计、代码编写和测试进程中考虑了平安因素。
最终的软件产品仍可能存在漏洞。
漏洞一样在用户利用的进程中被发觉,现在应迅速确认、响应、修复漏洞。
漏洞响应分为以下四个时期:
(1)发觉漏洞通知厂商。
第一由用户报告给实施方,实施方进行确认,若是确认是一个漏洞,实施方向报者确认已经收到漏洞报告。
(2)确认漏洞和风险评估。
实施方进行讨论,为漏洞定一个要挟品级。
(3)修复漏洞。
实施方制定解决方案,并确信响应工作的时刻表。
开始修复漏洞,修复完成。
(4)从头进行严格的测试。
1.1 测试报告标准
1、测试报告需对测试打算做完整准确的反映。
2、软件测试报告应该包括所有平安测试的内容和评判结论。
2 系统培训及上线时期平安标准
2.1 培训的大体要求
1、依照项目需要,应针对最终用户和系统治理人员制定培训打算,包括平安培训。
2、若是涉及到多单位培训,需注意有关企业信息的保密,不得利用正式运营中的数据做培训。
3、试运行期间系统发生的问题未处置完不得进行系统验收。
4、应用系统上线后,需设置专门机构,保护系统平平稳固运行。
2.2 新系统的培训
对所有的用户和技术人员提供关于新系统功能和操作方面的培训。
必需保证所有的技术和业务用户同意足够的关于新系统或系统改良的培训。
2.3 应用系统验收和上线平安要求
1、应用系统验收前,需要提供完整的系统平安需求分析、设计、开发和测试文档,并提供信息化主管部门认可的系统运行平安报告和数据平安测试报告;
2、应用系统上线前,进行系统平安检查和应用平安检查,发觉问题进行处置,完成平安整改;
3、对有品级爱惜要求的应用系统,需要通过信息平安品级测评机构对已经完成品级爱惜建设的信息系统按期进行品级测评,确保信息系统的平安爱惜方法符合相应品级的平安要求。
并在应用系统上线后,按期进行品级测评。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息化 应用 系统 开发 平安 标准