渗透测试步骤

(1)如果应用程序隔离用户对不同级别的功能的访问,可以首先使用一个权限较高的账户确定所有可用的功能,然后使用权限较低的账户访问这些功能,测试能否垂直提升权限。

(2)如果应用程序隔离用户对不同资源(如文档)的访问,可以使用两个不同的用户级账户测试访问控制是否有效,或者是否可以水平提升权限。例如,找到一个一名用户可以合法访问,但另一名用户不能合法访问的文档,然后尝试使用第二名用户的账户访问该文档——通过请求相关URL或在第二名用户的会话中提交同样的POST参数。

对应用程序的访问控制进行彻底测试需要耗费大量时间。幸运的是,一些工具可以帮助你自动完成某些工作,以提高测试速度和可靠性。这样,就可以将主要精力放在那些需要人类智能才能高效执行的任务上。

借助Burp Suite,可以使用两个不同的用户账户来解析应用程序的内容。然后,可以比较每一名用户访问的内容到底存在哪些差异。