OWASP Mobile Top 10:浅谈M6不安全的授权


 许多人将 M4 风险与 M6 风险混淆,因为它们都与用户凭证有关。开发人员应记住,不安全授权涉及攻击者利用授权过程中的漏洞以合法用户身份登录,这与不安全身份验证不同,在不安全身份验证中,攻击者试图通过以匿名用户身份登录来绕过身份验证过程。

不安全的授权 风险

对管理端点的不受管制的访问

在 M6 风险下,一旦攻击者以合法用户身份访问应用程序,他们的下一个任务就是通过强制浏览到可以执行管理命令的端点来获得管理访问权限。攻击者通常在移动设备中使用僵尸网络或恶意程序来利用授权漏洞。这种安全妥协的结果是攻击者可以在离线模式下对设备进行二进制攻击。

IDOR 访问

在某些情况下,授权方案让攻击者运行不安全的直接对象引用,通常以其首字母缩写词 IDOR 闻名,它可以通过提供用户提供的输入来获取对对象(如数据库或文件)的访问权限。此类泄漏可能会破坏整个操作系统的稳定性或导致数据和声誉的丢失。

M6:不安全授权示例

避免不安全授权的最佳实践

· 通过为敏感命令运行低权限会话令牌来持续测试用户权限,这些令牌是为高权限用户保留的。如果命令可以成功执行,立即检查应用程序的授权方案

· 开发者应该记住,离线模式下用户授权方案通常会出错。但是,在某些情况下,开发人员允许将用户权限和角色发送到服务器,这也会导致授权方案中的漏洞。

· 在服务器而不是移动设备上对经过身份验证的用户的角色和权限运行授权检查。在后端验证的用户管理方案中,而不是在移动设备内验证时,真实用户利用高权限功能的机会减少。