OS安全、系统补丁
服务器管理漏洞(OS安全机制、管理员密码、远程访问等)
病毒防护能力
网络安全(网络类型、防火墙配置)
机房设备的安全
应用系统
系统登录(密码规则、复杂程度、大小写敏感、空密码检测、登录失败提示信息)
授权检测(注意信息的归属关系检测)
默认用户、过期用户、禁止用户、试用用户的认证和授权
用户访问区域限制
SQL注入
XSS漏洞
数据加密传输
敏感数据加密存储
服务器端数据合法性验证(客户端不可信、尤其是客户端正常操作不能修改的字段)
应用系统提供的目录列表、文件访问能力
上传接口数据上传的安全(篡改现有数据、上传木马、垃圾数据等)
大运算量模块的安全控制、恶意访问导致崩溃(类似拒绝服务)
操作日志(记录有效、日志保存、删除限制)
HTTPs协议、CA认证
系统实施
应用服务器漏洞、补丁
应用服务器控制台的安全、管理员的口令安全
应用服务器中的示例应用安全性和屏蔽
应用的目录列表
敏感目录、文件访问安全(要考虑服务器集成的后果)
数据库服务器安全、对应用系统数据库用户的适当授权
仿篡改防护
仿篡改系统安装、配置、检测
备份恢复
备份周期、备份数据存储(异地、安全保管)、可恢复能力。
运营管理
检查提警(系统安全、资源利用情况的定期检查、预警提示)
人的因素,制定完善的安全运行管理制度、安全管理培训、社会学知识。
没有绝对和永久的安全,制定安全有效的安全防护方案,真正落实执行,并定期安全评估和改进。
了解更多测试知识访问如下链接
https://edu.csdn.net/course/detail/22948
https://edu.csdn.net/lecturer/3215
https://edu.csdn.net/course/detail/30898
https://edu.csdn.net/course/detail/25768
软件安全性测试包括程序、数据库安全性测试。根据系统安全指标不同测试策略也不同。
用户认证安全的测试要考虑问题:
1.明确区分系统中不同用户权限
2.系统中会不会出现用户冲突
3.系统会不会因用户的权限的改变造成混乱
4.用户登陆密码是否是可见、可复制
5.是否可以通过绝对途径登陆系统(拷贝用户登陆后的链接直接进入系统)
6.用户推出系统后是否删除了所有鉴权标记,是否可以使用后退键而不通过输入口令进入系统
系统网络安全的测试要考虑问题 :
1.测试采取的防护措施是否正确装配好,有关系统的补丁是否打上
2.模拟非授权攻击,看防护系统是否坚固
3.采用成熟的网络漏洞检查工具检查系统相关漏洞(即用最专业的黑客攻击工具攻击试一下,现在最常用的是 NBSI 系列和 IPhacker IP )
4.采用各种木马检查工具检查系统木马情况
5.采用各种防外挂工具检查系统各组程序的客外挂漏洞
数据库安全考虑问题:
1.系统数据是否机密(比如对银行系统,这一点就特别重要,一般的网站就没有太高要求)
2.系统数据的完整性(我刚刚结束的企业实名核查服务系统中就曾存在数据的不完整,对于这个系统的功能实现有了障碍)
3.系统数据可管理性
4.系统数据的独立性
5.系统数据可备份和恢复能力(数据备份是否完整,可否恢复,恢复是否可以完整)
了解更多测试知识访问如下链接
https://edu.csdn.net/course/detail/22948
https://edu.csdn.net/lecturer/3215
https://edu.csdn.net/course/detail/30898