1暴力破解
暴力破解是目前最直接有效的攻击方式,特别对于金融业务来说,很多情况下口令都为6位纯数字,很容易被攻击。测试项在于检查认证系统对暴力破解的防护性。
测试方法:
启动抓包工具,同时打开浏览器输入用户登录页面,输入用户名、密码以及验证码,进行登录,如果在抓包中存在明文的用户名和密码,说明存在弱点。
修改建议:
将请求方式从HTTP方式修改为HTTPS方式或者对输入的用户名和密码进行加密,在服务端对密码进行验证
2代码注释
开发版本的Web程序所带有的注释在发布版本中没有被去掉,而导致一些敏感信息的泄漏。我们要查看客户端能看到的页面源代码并发现此类安全隐患。
测试方法:
打开登陆页面(或者待测试页面),点击浏览器邮件,查看源代码,检查源代码注释部分是否有敏感信息泄露,敏感信息包括以下内容:字段文字描述、内网 IP 地址、SQL 语句以及物理路径等等。
修改建议:
请勿在HTML 注释中遗留任何重要信息(如文件名或文件路径)。
从生产站点注释中除去以前(或未来)站点链接的跟踪信息。
避免在HTML 注释中放置敏感信息。
确保HTML 注释不包括源代码片段。
3 用户名破解
为了进行暴力破解,攻击者需要知道已存在的用户名,再对该用户名进行攻击。
测试方法:
在登录界面输入不存在的用户名和任意的口令,如果提示用户名不存在,则说明存在漏洞;使用正确的用户名和错误的口令进行登录,如果提示口令或密码错误,则说明存在漏洞。
修改建议:
服务器对所有的登陆错误原因进行统一的应答,不会提示准确的错误提示信息。
4 连续输错密码
在缺少锁定策略和验证码设计有问题的情况下,攻击者可以通过枚举的方式来进行暴力猜解。
测试方法:
在登录页面,输入正确的用户名、错误的口令以及正确的验证码,提交表单,重复10次,如果系统没有返回类似账号锁定的信息,则说明存在漏洞。
修改建议:
在用户进行错误登录次数达到系统配置后,需要对该账号或者该IP进行临时锁定,到达解锁条件后再进行解锁。
5 查看是否有验证码机制,以及验证码机制是否完善,避免使用自动化工具重复登录和进行业务操作。
测试方法:
打开登陆页面查看是否存在验证码,如果不存在说明存在漏洞。
输入正确的用户名和口令以及错误的验证码,如果只是提示验证码错误,则说明存在漏洞。
选择验证码,点击右键,验证码是图片形式且在一张图片中,如果不是,则说明存在漏洞。
观察验证码图片中背景是否存在无规律的点或线条,如果背景为纯色(例如只有白色)说明存在漏洞。
修改建议:
将验证码生成放在在一张进行了混淆处理的图片上。
6 修改密码是否需要输入旧口令
测试方法:
进入系统的口令修改界面,查看是否必须输入旧口令,如果不需要则存在漏洞。
修改建议:
用户修改密码时必须提供旧密码,且新密码不能与旧密码相同,密码要有一定复杂度,参见口令规则建议。
7 默认账户名称设置
一般系统均设有默认登录用户,以及超级管理员账号,如登录账号过于简单将易被破解,造成超级权限泄露。
修改建议:
上线系统清除超级管理员权限用户,或增加超级管理员登录名复杂度,不要设置成易猜测的admin、superadmin等名称。
8 错误的页面信息
404、500等错误或警告消息,可能会泄露敏感信息。
修改建议:
捕获异常跳转至统一错误页面,避免对外泄漏详细错误信息。
如需了解更多测试技术信息请关注:https://www.duoceshi.cn/jswz/深圳多测师软件与技术服务有限公司
Copyright © 2016-2021 深圳多测师软件与技术服务有限公司 版权所有
本站部分文章源自于网络,如有侵犯您的版权,请联系删除