前几天,我们分享了:

《【渗透测试】渗透测试最强秘籍(Part 1:信息收集)》

《【渗透测试】渗透测试最强秘籍(Part 2:配置和部署)》

今天继续该系列的第三篇文章——身份管理。

分享纲要:

1. 测试角色定义

2.测试用户注册过程

测试帐户配置过程

测试帐户枚举和可猜测的用户帐户

1. 测试角色定义

测试目标

验证应用程序中定义的系统角色是否被充分定义,系统和业务角色是否被隔离以管理对系统功能和信息的适当访问

如何测试

无论是否有系统开发人员或管理员的帮助,都可以开发角色与权限矩阵。该矩阵将显示并枚举可供应的所有角色,并探索允许应用于对象的权限(包括任何约束)。

示例

在现实世界中,我有很多WordPress的网站,WordPress的角色定义的例子可以在下面显示的链接中找到

https://codex.wordpress.org/Roles_and_Capabilities

工具

2.测试用户注册过程

测试目标

如何测试

测试列表

工具

示例

在下面的wordpress示例中,唯一标识要求是注册人可访问的电子邮件地址。

在下面的Google示例中,身份识别要求包括姓名,出生日期,国家,手机号码以及可以验证的两个(电子邮件和手机号码)。

测试帐户配置过程

测试目标

验证哪个帐户可以配置其他帐户以及哪种类型

如何测试

测试列表

示例

在WordPress中,只需要用户名和电子邮件地址来配置用户,如下所示

取消配置用户需要管理员选择要取消配置的用户,从下拉菜单中选择删除并应用此操作。 然后向管理员提供一个对话框,询问如何处理取消配置用户的文章(删除或转移它们)。

测试帐户枚举和可猜测的用户帐户

黑盒测试

在这种情况下,测试人员对特定应用程序,用户名,应用程序逻辑,登录页面中的错误消息或密码恢复设施一无所知。 如果应用程序易受攻击,测试人员会收到一条响应消息,直接或间接地显示一些用于枚举用户的信息。

HTTP响应消息

测试有效用户名和错误密码

测试不存在的用户名

另一种枚举用户的方式

分析从另一个认证功能(恢复,复位通过,寄存器)收到的消息

猜测用户

在某些情况下,用户ID是使用特定的管理或公司政策创建的,例如:

工具:

原文链接

https://packetstormsecurity.com/files/download/146830/web-application-security-testing.pdf

源链接

Hacking more

...