安全功能测试

安全功能测试

1.标识与认证

(1)用户账号应具有唯一性,保证应用系统中不存在重复用户账户。

首先分别创建特定的管理员及普通用户账号并保存,再次创建同名且不同角色的账号,检查是否能够成功创建。

(2)账号活动异常时(单个IP在1分钟内尝试登录50次以上,3个月从未登录)锁定用户账号,应支持管理员后台锁定用户账号。

在注册,创建账号与重置密码等功能页面,检查是否有账号锁定机制。
授权管理员能够锁定账号,锁定后,该账户不能再进行登录。
管理员及普通用户账号超过锁定次数后账号变为锁定状态。
管理员及普通用户账号超过3个月未登录状态时变为锁定状态。
针对锁定账号后台可正常解锁或通过手机或邮箱验证可自行解锁成功。

(3)密码要求:不能包含用户信息,至少8个字符以上,至少每6个月更换一次,禁止使用前两次的密码,包含数字、大小写字母、特殊符合,禁止使用弱密码。

在注册,创建账号与重置密码等功能页面,检查是否有密码限定规则,并输入密码进行验证。

(4)对互联接入的展业系统(除了微信、支付宝以外的应用),应采用两种或两种以上的方式进行身份认证:用户名口令,动态密码,USB证书。

检查是否采用了两种认证方式:如短信密码+USB证书等。

(5)身份验证的失败提示信息采用模糊处理,比如可以使用“用户名或密码错误”,而不要使用“用户名错误”或者“密码错误”。

账号密码,手机号等信息输错后查看提示信息是否做模糊处理。

(6)用于登录验证的口令和用于交易的口令不能一致,图形验证码不得作为独立的身份验证要素。

检验登录验证的口令和用于交易的口令是否一致,图形验证码不作为独立的身份验证要素。

(7)手势密码应至少设置连续不间断的4个点

在APP端对手势密码进行不间断性连接测试,确保手势密码满足连续不间断4个点的认证需求。

(8)密码口令框应默认屏蔽显示,屏蔽显示时应使用同一特殊字符(如*或.),不应明文显示银行卡密码和网络支付交易密码。

密码口令框输入字符或数字时,显示为特殊字符

(9)若设置初始密码,应强制用户在首次登录后修改初始密码(修改密码不能与初始密码相同)。初始密码应符合强密码要求,并且不能多用户相同,如多用户使用相同初始密码应对账户初始绑定的用户个人身份进行校验(手机,邮箱等)。

检查设置了初始密码的用户首次登录时是否需要进行修改密码,并且新密码不应与初始密码相同。若多个用户使用相同初始密码,修改初始密码时应对用户个人身份进行校验。

(10)应采取有效措施提醒客户避免设置与常用软件、网站相同或相似的用户名和密码组合,并采取有效措施引导客户设置独立的支付密码(注册页面,修改密码页面设置提示可有效避免)。

访问系统查看是否有提醒和引导相关功能。

(11)不应默认保存用户上次的账号及口令信息

用已注册的账号与密码登录本地后,退出,重新登录,若在下拉框选中上次登录的用户名自动带出密码说明存在次漏洞。

(12)涉及交易功能,账号重要关联信息(密码,身份证号,关联的手机号/邮箱)修改时应对用户再次进行身份认证。

检查交易钱是否需要再次进行身份认证;尝试修改账户口令,及其关联的重要敏感信息(如身份证,手机号,邮箱等),检查是否需要再次进行身份认证。

(13)若支持密码重置功能,需通过账户绑定的手机或邮箱发送随机验证码进行二次认证。

修改密码或密码重置时采用两种或两种以上要素进行身份认证。

(14)在进行修改密码或密码重置时,应采用两种或两种以上要素进行身份认证,如:数字证书,生物特征信息等。

在进行修改密码或密码重置时,查看是否采用两种或两种以上要素进行身份认证,例如原密码+短信验证。

(15)至少对以下页面采用图形验证码:登录注册页面,短信及邮箱认证页面,限时抢购类等。

检查系统是否具有注册页面,短信及邮箱认证页面,限时抢购类,等其他可通过电脑自动操作并会带来危害的页面,若存在,是否采用了图形验证码。

(16)图形验证码应采取一定的干扰措施且不可预测,如字体倾斜,加背景噪点,横线等。

多次刷新验证码,检查其是否采取干扰措施,防止自动识别,结果是否可预测。

(17)短信验证码发送频率控制(建议60s获取一次),且应由服务端控制发送频率,避免客户端绕过形成短信炸弹。

在有短信验证码的地方,查看验证码最小发送频率,且发送频率为后端控制。

(18)短信验证码复杂度,建议至少6位数字或字母数字组合

查看验证码复杂度,是否符合要求。

(19)短信验证码必须通过服务端校验,只有正常值才能通过校验,异常值或空值不能通过校验。

抓包查看验证码验证机制,判断是否在前端校验,且只有正常值才能通过校验。

(20)短信验证码应只以短信方式发送到指定手机号,不应将短信验证码内容返回到客户端

对发送短信验证码的数据包进行分析,查看短信验证码是否直接返回在响应数据包中。

(21)验证码不可以复用,使用正确验证码成功登录后需使其失效,防止被重用。

使用正确的短信验证码登录后,退出再次使用,查看验证码是否失效。

(22)验证码提交验证次数控制,验证5次失败后,需重新获取验证码,验证码应具有有效期,建议不超过5分钟。

账号使用错误验证码5次后,查看使用正确验证码是否提示过期,收到验证码5分钟后再做验证,查看验证码是否过期。

(23)短信验证码所在的短信内容中,告知用户短信验证码的用途

获取短信验证码,查看内容是否告知用途

(24)认证数据加密存储:1.用户名及密码尽可能不在客户端存储,若有必要,如cookie中暂存,应以加密方式存储;2.密码在服务器或数据库中以摘要值方式存储;等保三级系统使用国密算法,等保二级及以下系统使用《IT安全技术标准》中推荐算法。

确认密码在服务器或数据库中以摘要值方式存储,等保三级系统须使用国密算法,等保二级及以下系统使用《IT安全技术标准》。

(25)在设备绑定,密码重置,手机修改,大额转账,额度提升,挂失解绑等高风险业务场景,不应将人脸特征作为唯一的交易验证因素。如使用人脸识别技术,应满足如下安全要求:
1.采取交易密码,短信验证码,USB-key等认证手段组合的多因素认证方式,必要时采取人工客服视频审核,语音验证等措施。且人脸识别活体检测原则上应使用不少于2个随机动作组合(至少包含局部面部动作及全脸动作)。
2.在配置人脸识别误识率,通过率等参数时,应以严格控制风险(人脸辨识性能,识别准确率,人脸识别图像质量,活体检测能力,对抗样本检测能力,防攻击能力)为前提,适当兼顾客户体验。
3.建立全视图人脸识别错误次数管控策略,从用户和设备两个维度对不同渠道的错误次数进行限制,当达到错误次数上限时,应暂停人脸识别功能。
4.加强对人脸识别系统引擎,SDK补丁程序,防攻击算法模型等的及时更新。

(26)互联网传输的CS架构应用应采用加密方式传输(如采用HTTPS,应使用TLS1.2及1.2以上版本加密)

检查系统当前的服务器配置情况,若存在1.0与1.1支持配置,说明存在该漏洞。

(27)对涉及资金交易的传输内容应采用数字签名等抗抵赖措施

确认对涉及资金交易的传输内容应采用数字签名等抗抵赖措施

(28)敏感信息(如身份认证数据)的内容应在数据库中加密存储,应将生物识别信息与银行账号或支付账号,身份证号等用户个人隐私信息进行隔离存储,(—身份认证数据:包括但不限于密码,指纹,人脸,虹膜,耳纹,掌纹,静脉,声纹,眼纹,步态,笔迹等生物特征样本数据,特征值与模板。隔离存储要求在不同的数据库中,加密要求等保三级系统使用国密算法,等保二级及以下系统须使用《IT安全技术标准》中推荐算法。)

开发者应提供文档说明本系统所涉及的敏感信息类型,通过数据库管理器查看相应数据表单,检查数据库中相应表单中存储的敏感信息为非明文,如使用生物识别信息与银行账号或支付账号,身份证号等用户个人隐私信息进行隔离存储。

(29)处于未登录状态时,不应展示个人信息,处于已登录状态时,个人信息展示要求如下:发起交易,收付款以外情形,敏感信息(卡号,手机号,证件或其他信息等可直接或组合后确定主体的信息)在终端上展示时应做模糊处理,并在应用后台进行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值