欢迎来到 广东科鉴检测工程技术有限公司
全国咨询热线: 400-108-9880
联系我们

地址:广州科学城玉树工业园J栋103房 105房 107房

电话:400-108-9880

传真:020-3170 7367

邮箱:kj-mark@svtest.cn

行业动态
软件产品的信息安全性

软件产品的信息安全性受到越来越多的重视。

软件产品的信息安全性(图1)

目前,针对软件开发、软件测评主要依照的标准是《GB/T 25000.51-2016系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第51部分:就绪可用软件产品(RUSP)的质量要求和测试细则》以及《GB/T 25000.10-2016系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第10部分:系统与软件质量模型》。标准将软件产品的质量特性分为了八个特性(功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性)。

(一)信息安全性的定义:
软件产品质量的信息安全性是指产品或者系统保护信息和数据的程度,以使用户、其他产品或系统具有与其授权类型和授权级别一致的数据访问度。
在《GB/T 25000.51-2016系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第51部分:就绪可用软件产品(RUSP)的质量要求和测试细则》信息安全性要求为:
1)软件应按照用户文档集中定义的信息安全性特征来运行。
2) 软件应能防止对程序和数据的未授权访问(不管是无意的还是故意的)。
3) 软件应能识别出对结构数据库或文件完整性产生损害的事件,且能阻止该事件,并通报给授权用户。
4) 软件应能按照信息安全要求,对访问权限进行管理。
5) 软件应能对保密数据进行保护,只允许授权用户访问。

(二)信息安全性的解析
依据《GB/T 25000.10-2016系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第10部分:系统与软件质量模型》中的要求,信息安全性被划分为6个子特性:保密性、完整性、抗抵赖性、可核查性、真实性、信息安全性的依从性。

1)保密性:产品或系统确保数据只有在被授权时才能被访问的程度。
测试的主要内容:
验证软件产品是否具有对系统正常访问的控制能力。依据安全策略和用户角色设置访问控制矩阵,用户权限应遵循“最小权限原则”。
测试系统是否进行用户身份鉴别,并在每次用户登录系统时进行鉴别。
测试软件鉴别信息是否为不可见,且具有相应的抗攻击能力,并在存储或传输时用加密方法或具有相同安全强度的其他方法进行安全保护。
验证数据在传输过程中不被窃听,对整个通信过程中的整个报文或会话过程进行加密,如采用3DES(三重数据加密算法)、AES(高级加密标准)和IDEA(国际数据加密算法)等加密处理。
明确区分系统中不同用户权限,系统不会因用户权限的改变造成混乱。
合适的身份认证方式,用户登密码是否可见、可复制,密码的存储和传输安全,密码策略保证密码安全。
测试系统是否对不成功的鉴别尝试的值(包括尝试次数和时间的阈值)进行预先定义,并明确规定达到该值时是否采取了具有规范性和安全性的措施来实现鉴别失败的处理。
软件应能防止对程序和数据的未授权访问(不管是无意的还是故意的)。

测试用例参考:
明确区分系统中不同的用户权限。
系统不会因用户权限的改变造成混乱,把原来高权限用户改为低权限用户,登录后系统是否异常。
系统中存在用户登录鉴别模块,并且每次登录需要鉴别。
是否存在登录验证码,登录失败次数限制等抗攻击能力。
用户登录密码是否可见、可复制,密码是否加密存储和传输。
网站是否为HTTPS协议传输。
是否可以通过绝对路径登录系统(访问用户登录后的链接直接进入系统)。

2)完整性:系统、产品或组件防止未授权访问、篡改计算机程序或数据的程度。
测试的主要内容:
验证软件产品是否具有对未授权用户非法访间的控制能力。
采用专业测试工具开展“渗透测试”、“漏洞扫描”等手段,在模拟非法入侵攻击事件的条件下,验证软件产品是否有控制和处理能力。
验证软件产品对非授权人创建、删除或修改信息是否有控制和处理能力。
软件应能识别出对结构数据库或文件完整性产生损害的事件,且能阻止该事件,并通报给授权人。
系统数据的完整性、可管理性,可备份和可恢复能力,数据传输、数据使用、数据存储的完整性。

测试用例参考:
未授权访问,低权限用户访问高权限用户数据。
未授权修改,无修改权限用户修改系统数据(包括创建、删除、修改)。
漏洞扫描或渗透测试中,系统是否存在告警机制、是否存在自动限制账号、IP访问等控制处理功能。
数据库、文件篡改、破坏是否具备防止和恢复功能。
漏洞扫描测试未发现存在已知漏洞。

3)抗抵赖性:活动或事件发生后可以被证实且不可被否认的程度。
测试的主要内容:
测试软件是否具有在请求的情况下为数据原发者提供数据原发证据的功能。
测试软件是否具有在请求的情况下为数据接收者提供数据接收证据的功能。
测试软件是否使用数字证书等方式保证用户的身份认证,在收到请求的情况下为数据原发者或接受者提供数据原发和接收的证据。
测试软件是否具备完整且无法篡改的审计记录,确保用户操作可经过审计及追踪。系统操作日志/审计、异常日志、告警日志,审计日志的完整性、保密性。
验证审计日志的管理,日志不能被任何人修改和删除,能够形成完整的证据链。

测试用例参考:
用户操作是否存在审计日志。
用户操作审计日志是否可以删除。
软件是否使用数字证书加密。
软件的系统操作日志、异常日志、告警日志,审计日志完整性,并只有授权用户能访问。

4)可核查性:实体的活动可以被唯一地追溯到该实体的程度。
测试的主要内容:
测试系统是否将用户进程与所有者用户相关联,使用户进程行为可以追溯到进程所有者。
测试系统是否将系统进程动态地与当前服务要求者用户相关联,使系统进程的行为可以追溯。
测试系统或软件的审计模块、检查模块是否具有完善的安全审计功能;考察启用安全审计功能后,覆盖用户的多少和安全事件的程度,覆盖到每个用户活动,日志记录内容至少应包括事件日期、事件、发起者信息、类型、描述和结果等,审计跟踪设置是否定义了审计跟踪极限的阀值,当存储空间被耗尽时,能否采取必要的保护措施。
账户管理,包括账户唯一性、登录机制、密码管理策略。
会话管理,设计登录成功使用新的会话;设计会话数据的存储安全;设计会话数据的传输安全;设计会话的安全终止;设计合理的会话存活时间;设计避免跨站请求伪造。

测试用例参考:
审计模块是否具有安全审计功能,功能是否合理完善有效。
身份标识具有唯一性,无法注册相同用户名。
多因素登录保证用户登录的一致性,且其中一种至少应使用密码技术实现。
是否存在避免跨站请求伪造漏洞,关键数据操作是否验证请求来源。
用户退出登录后是否删除所有鉴权信息,退出登录系统后使用浏览器的后退功能是否可以不通过输入口令进入系统。
是否存在登录连接超时自动退出功能。

5)真实性:对象或资源的身份标识能够被证实符合其声明的程度。
测试的主要内容:
验证软件是否具有当前使用系统的用户列表和配置表。
验证软件在系统的访问历史数据库中记录的访问登录记录是否完整。
检查软件是否具有用户使用系统的历史日志及日志管理功能。
在模拟攻击事件的入侵的情况下,验证软件的日志内容是否有相关记录。
检查软件中的“用户访问系统和数据”的记录内是否包括防止病毒的“病毒检测记录”。

测试用例参考:
软件是否存在用户管理模块,是否具有用户列表和配置表功能。
查看数据库日志、访问登录日志是否完整并真实记录。
查看审计日志是否有用户登录使用日志。
查看审计日志是否有攻击防护日志。
软件中的"用户访问系统和数据”的记录内是否包括防止病毒的“病毒检测记录”。

6)信息安全性的依从性:产品或系统遵循与信息安全性相关的标准、约定或法规以及类似规定的程度。
测试的主要内容:
检查软件产品的信息安全性是否遵循了所实施法规、标准和约定。

测试用例参考:
软件是否遵循了所实施法规、标准和约定,行业标准、验收标准、等级保护标准等,若提及并提供证明材料,则认可;否则,应验证软件与提及的文件(需求文档)要求是否相符。

软件产品的信息安全性(图2)
软件产品的信息安全性(图3)



联系我们

地址:广州黄埔区科学城玉树工业园 敬业三街2号J栋103房,105房.107房

传真:020-3170-7367

400热线:400-108-9880

邮箱:kj-mark@svtest.cn

粤ICP备2021012026号-2

扫一扫关注我们
Copyright ©  2017 广东科鉴检测工程技术有限公司®  版权所有