(转载翻译)OWASP v5 4.3.1 测试用户定义

nicky   ·   发表于 2020-04-12 09:52:43   ·   技术文章投稿区

概要

在现代企业中,通常需要一个系统角色来管理用户和授权系统资源。 在大多数系统实现中,至少需要两种用户,即管理员和常规用户。

第一个代表允许访问特权和敏感功能和信息的角色,第二个代表允许访问常规业务功能和信息的角色。 完善的角色应与应用程序支持的业务流程保持一致。

在机密性不是关键的受信任的环境中,软件的控件(比如应用程序工作流和审核日志记录)可以支持数据完整性要求,同时又不限制用户对功能的访问或创建难以管理的复杂角色结构。

重要的是在用户工程设计时考虑Goldilocks原理,即定义过多的,宽泛的角色(从而暴露对用户不需要的功能的访问权限)与太多严格定制的角色(从而限制对用户确实需要的功能的访问。

测试目的

检验在应用程序中定义的系统角色是否足以定义和分离每个系统和业务角色,以管理对系统功能和信息的适当访问。

测试方法

无论有没有系统开发人员或管理员的帮助,都要开发角色与权限列表。 该列表应枚举可提供的所有角色,并探索允许应用于对象的权限,包括任何约束。

如果应用程序提供了列表,则测试人员应对其进行验证,如果不存在,则测试人员应生成自己的列表并确定是否满足应用程序所需的访问策略。

例子1:
角色 权限 目的 约束
管理员 可读 客户记录 无
经理 可读 客户记录 只能读取有关商业的信息
员工 可读 客户记录 只能读取经理分配的客户信息
顾客 可读 客户记录 只能读取自己的信息

例子2:
以管理员权限登录并访问仅适用于管理员的页面。 然后,以普通用户身份登录并尝试直接访问那些管理员页面URL。
以管理员身份登录
访问管理页面。 即http:// targetSite / Admin
退出
以普通用户身份登录
直接访问管理页面网址。 http:// targetSite / Admin

转载:https://github.com/OWASP/wstg/blob/master/document/4-Web_Application_Security_Testing/03-Identity_Management_Testing/01-Test_Role_Definitions.md

用户名金币积分时间理由
奖励系统 100.00 0 2020-07-27 23:11:16 投稿满 10 赞奖励
奖励系统 50.00 0 2020-07-03 15:03:55 投稿满 5 赞奖励

打赏我,让我更有动力~

0 Reply   |  Until 2020-4-12 | 531 View
LoginCan Publish Content
返回顶部 投诉反馈

© 2016 - 2022 掌控者 All Rights Reserved.