前几天,我们分享了:
《【渗透测试】渗透测试最强秘籍(Part 2:配置和部署)》
今天继续该系列的第三篇文章——身份管理。
分享纲要:
1. 测试角色定义
2.测试用户注册过程
测试帐户配置过程
测试帐户枚举和可猜测的用户帐户
测试目标
验证应用程序中定义的系统角色是否被充分定义,系统和业务角色是否被隔离以管理对系统功能和信息的适当访问
如何测试
无论是否有系统开发人员或管理员的帮助,都可以开发角色与权限矩阵。该矩阵将显示并枚举可供应的所有角色,并探索允许应用于对象的权限(包括任何约束)。
示例
在现实世界中,我有很多WordPress的网站,WordPress的角色定义的例子可以在下面显示的链接中找到
https://codex.wordpress.org/Roles_and_Capabilities
工具
测试目标
如何测试
测试列表
工具
示例
在下面的wordpress示例中,唯一标识要求是注册人可访问的电子邮件地址。
在下面的Google示例中,身份识别要求包括姓名,出生日期,国家,手机号码以及可以验证的两个(电子邮件和手机号码)。
测试目标
验证哪个帐户可以配置其他帐户以及哪种类型
如何测试
测试列表
示例
在WordPress中,只需要用户名和电子邮件地址来配置用户,如下所示
取消配置用户需要管理员选择要取消配置的用户,从下拉菜单中选择删除并应用此操作。 然后向管理员提供一个对话框,询问如何处理取消配置用户的文章(删除或转移它们)。
黑盒测试
在这种情况下,测试人员对特定应用程序,用户名,应用程序逻辑,登录页面中的错误消息或密码恢复设施一无所知。 如果应用程序易受攻击,测试人员会收到一条响应消息,直接或间接地显示一些用于枚举用户的信息。
HTTP响应消息
测试有效用户名和错误密码
测试不存在的用户名
另一种枚举用户的方式
分析从另一个认证功能(恢复,复位通过,寄存器)收到的消息
猜测用户
在某些情况下,用户ID是使用特定的管理或公司政策创建的,例如:
工具:
https://packetstormsecurity.com/files/download/146830/web-application-security-testing.pdf