可手工去执行的安全性测试
(一)可手工执行输入的数据没有进行有效的控制和验证
用户名和密码
直接输入需要权限的网页地址可以访问
上传文件没有限制
不安全的存储
操作时间的失效性
1.1)输入的数据没有进行有效的控制和验证
数据类型(字符串,整型,实数,等)
允许的字符集
最小和最大的长度
是否允许空输入
参数是否是必须的
重复是否允许
数值范围
特定的值(枚举型)
特定的模式(正则表达式)(注:建议尽量采用白名单)
1.22)用户名和密码-2
检测接口程序连接登录时,是否需要输入相应的用户
是否设置密码最小长度(密码强度)
用户名和密码中是否可以有空格或回车?
是否允许密码和用户名一致
防恶意注册:可否用自动填表工具自动注册用户? (傲游等)
遗忘密码处理
有无缺省的超级用户?(admin等,关键字需屏蔽)
有无超级密码?
是否有校验码?
密码错误次数有无限制?
大小写敏感?
口令不允许以明码显示在输出设备上
强制修改的时间间隔限制(初始默认密码)
口令的唯一性限制(看需求是否需要)
口令过期失效后,是否可以不登陆而直接浏览某个页面
哪些页面或者文件需要登录后才能访问/下载
cookie中或隐藏变量中是否含有用户名、密码、userid等关键信息
1.3)直接输入需要权限的网页地址可以访问
避免研发只是简单的在客户端不显示权限高的功能项
举例Bug:
没有登录或注销登录后,直接输入登录后才能查看的页面的网址(含跳转页面),能直接打开页面;
注销后,点浏览器上的后退,可以进行操作。
正常登录后,直接输入自己没有权限查看的页面的网址,可以打开页面。
通过Http抓包的方式获取Http请求信息包经改装后重新发送
从权限低的页面可以退回到高的页面(如发送消息后,浏览器后退到信息填写页面,这就是错误的)
1.4)上传文件没有限制
传文件还要有大小的限制。
上传木马病毒等(往往与权限一起验证)
上传文件最好要有格式的限制;
1.5)不安全的存储
在页面输入密码,页面应显示 “*****”;
数据库中存的密码应经过加密;
地址栏中不可以看到刚才填写的密码;
右键查看源文件不能看见刚才输入的密码;
帐号列表:系统不应该允许用户浏览到网站所有的帐号,如果必须要一个用户列表,推荐使用某种形式的假名(屏幕名)来指向实际的帐号
1.6)操作时间的失效性
检测系统是否支持操作失效时间的配置,同时达到所配置的时间内没有对界面进行任何操作时,检测系统是否会将用户自动失效,需要重新登录系统。
支持操作失效时间的配置。
支持当用户在所配置的时间内没有对界面进行任何操作则该应用自动失效。
如,用户登陆后在一定时间内(例如20分钟)没有点击任何页面,是否需要重新登陆才能正常使用。
页:
[1]