前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于欺骗的Web认证扩展

基于欺骗的Web认证扩展

作者头像
C4rpeDime
发布2022-04-19 09:07:29
6340
发布2022-04-19 09:07:29
举报
文章被收录于专栏:黑白安全黑白安全

简介该文为发表于AsiaCCS 2021的Click This, Not That: Extending Web Authentication with Deception。许多日常使用的Web应用账号中都存有用户的敏感信息,为了保护这些敏感信息,常见的防御手段就是设置密码(有时是唯一使用的防御手段)。由于大部分用户不倾向于设置复杂的强密码,并且经常在多个不

简介

该文为发表于AsiaCCS 2021的Click This, Not That: Extending Web Authentication with Deception。许多日常使用的Web应用账号中都存有用户的敏感信息,为了保护这些敏感信息,常见的防御手段就是设置密码(有时是唯一使用的防御手段)。由于大部分用户不倾向于设置复杂的强密码,并且经常在多个不同的Web应用中使用相同的账号名和密码,密码的保护能力是存在不足的,而结合手机号、指纹等的多重身份认证系统(MFA)会在一定程度上降低应用的易用性。因此,在本篇论文中,作者提出了一种基于欺骗的身份认证扩展方法。简单来讲,作者定义了两组在用户使用密码登录后需要立刻进行的动作和不要进行的动作以确定登录的用户是否为本人或受信任的人,分别命名为登录仪式和网络绊线。由于每个Web应用之间存在区别,且该方法在不同的应用中是不同的,并且由于其设计源于用户的正常行为,所相较于MFA的认证扩展模式,可以更少干扰用户的使用。

方法

作者提出的基于欺骗的Web认证扩展框架如下图所示,主要包含登录、网络绊线和登录仪式三大模块,并从请求与回应两个方向来展示其方法的流程。该框架使用mitmproxy 作为不可绕过的反向代理,以便接收所有来自客户端的请求,并在完成处理后将请求转发到应用服务器

基于欺骗的Web认证扩展 WEB安全 文章翻译  第1张
基于欺骗的Web认证扩展 WEB安全 文章翻译 第1张
  • 登录模块:本模块会监听所有请求,一旦识别出一个请求包含待处理的登录信息,我们就将其保存在内存中并等待相应的响应。如果响应设置了会话cookie并与保存的待处理登录请求相匹配,则认为登录成功并创建(或更新)用户和设备记录。这些记录包括用户名、会话 ID、ip地址、设备指纹等信息。对于所有未来的请求,当模块需要知道是哪个用户在请求时,可以通过他们的会话cookie在数据库中查找对应用户。由于不同应用的差异性,该系统仍需要管理员手动配置一些参数名称。
  • 绊线模块:绊线为一组可由用户自行定义的行为,当攻击者触发绊线时,会被强制登出或封禁。绊线分为两种,可以是网页上本就存在的元素,或者是框架注入到网页中的虚假元素。该框架允许用户定义较为复杂的绊线策略,例如下图所示,垂直的虚线代表触发绊线的时间,蓝色折线代表在2分钟的时间窗口内触发绊线的次数。该案例表明攻击者在第三次触发绊线时,激活了黄线代表的策略(2分钟内触发2次),被系统强制登出。之后攻击者再次登录并触发另外两条绊线,激活红线策略,导致账号被暂时封禁。
基于欺骗的Web认证扩展 WEB安全 文章翻译  第2张
基于欺骗的Web认证扩展 WEB安全 文章翻译 第2张
  • 仪式模块:在每次传统登录之后,仪式模块会强制执行用户的登录仪式。当框架在登录模块中检测到登录后,登录仪式的进程将设置为零。但当且仅当请求与当前步骤匹配时,系统才会检查请求并让仪式进入下一步骤。否则,框架将会将登录状态注销。该模块的难点在于验证登陆仪式的步骤时,客户端同时会请求一些无关的资源文件,框架需要转发这些请求到服务器而又尽可能不干扰登录仪式的验证。作者主要通过解析当前的HTML中需要加载资源的标签(如<img>,<link>,<script>等)以预测随之而来的请求,同时辅以管理员的人工干预将那些与仪式不相关的无害请求忽略。

实验

作者首先招募志愿者扮演攻击者以测试网络绊线的有效性。为了鼓励志愿者对网站进行探索,作者设计了三个Flag要求志愿者寻找。对于51位成功发现Flag的志愿者,实验结果如下所示。88.2% 的用户至少触发了一根绊线。其中91.1%的人在5分钟内就会触发的第一根绊线。如果绊线策略较为宽松,攻击者在此时不会被强制登出,66.7% 的人可能会在前 10 分钟内触发两条绊线。

基于欺骗的Web认证扩展 WEB安全 文章翻译  第3张
基于欺骗的Web认证扩展 WEB安全 文章翻译 第3张
基于欺骗的Web认证扩展 WEB安全 文章翻译  第4张
基于欺骗的Web认证扩展 WEB安全 文章翻译 第4张

对于登录仪式部分,作者邀请14位志愿者进行测试,可以看到一半的参与者每次都能完成他们的仪式。在某些失败的情况下,他们只忘记了一个步骤或重复了一次点击。这些情况类似于用户本人不小心输入了错误密码,可能通过数次尝试正确通过登录仪式。14名参与者中有11名(79%)成功的次数多于失败的次数。

基于欺骗的Web认证扩展 WEB安全 文章翻译  第5张
基于欺骗的Web认证扩展 WEB安全 文章翻译 第5张

总的来说,这是一项有趣的工作,它是对传统密码身份认证体系的一种扩展与补强,相较于文中提到的MFA扩展模式,网络绊线与登录仪式在易用性和透明性上具有一定优势。但是,对于开发者和Web应用方来说,这种方式是否易于集成和开发尚需要更多实验以证明。

原文作者:Timothy Barron, Johnny So, Nick Nikiforakis 原文标题:Click This, Not That:Extending Web Authentication with Deception 原文链接:https://www.researchgate.net/profile/Timothy-Barron/publication/352146997_Click_This_Not_That_Extending_Web_Authentication_with_Deception/links/60c2bf0aa6fdcc2e61317fbc/Click-This-Not-That-Extending-Web-Authentication-with-Deception.pdf 笔记作者:nerd@SecQuan 文章小编:cherry@SecQuan

文章翻译安全学术圈

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 方法
  • 实验
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档