复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

 复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展,该研究在小程序生态中提出了一种新的攻击形式,并对其在现实世界进行了评估。研究成果整理成文后发表在学术会议SaTS 2023上。

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展


01

背景介绍

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

小程序生态因其提供多样化的小程序而变得非常流行,使用户能够访问各种特性和功能而无需离开超级应用。这些小程序通过将远程Web内容动态加载到基于WebView的运行时中,并能够通过超级应用提供的专用API访问敏感数据和系统资源,提供了强大的功能。确保小程序加载的网页内容是安全可信的,对保障整个生态系统的安全至关重要。

受内容安全策略的启发,小程序生态采用了域名白名单机制,以阻止潜在有害内容的加载。开发人员定义了被视为安全的域名白名单,而超级应用在运行时强制执行这些白名单。这种机制虽然能够阻止一些恶意内容的加载,但它建立在一个不可靠的假设上,即白名单中的所有域名都是安全的。实际上,这些域名的数量和安全性往往没有得到充分保证,导致生态系统面临安全风险。


02

研究问题

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

鉴于上述问题,本文在小程序生态中提出TrustedDomain Compromise Attack(TDCattack),并确定两个不同的攻击向量:1.白名单域名滥用,例如子域接管;2.不安全的域名资产,例如 XSS 和开放重定向。本文证明,即使超级应用严格执行白名单验证,小程序仍然会受到 TDCattack 的影响。攻击者通过操纵不安全的域名或域名资产,可以通过在受保护的小程序上下文中加载页面来实现网络钓鱼攻击,以及甚至执行恶意代码。更严重的是,攻击者可以进一步滥用超级应用提供的运行时API,即未经授权访问敏感的超级应用数据和系统资源。

本文的研究围绕着三个研究问题展开:

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

问题1

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

给定小应用程序的白名单中包含哪些域以及多少个域?



















解决该问题的一个重大挑战是小程序的白名单配置通常很难检索。这主要是因为白名单通常存储在超级应用服务器中。白名单内容是一个黑匣子。一个重要的见解是,白名单内容可以通过小程序的源代码反映出来。因此,本文提出了一种针对小程序代码的静态分析方法,以自动学习相应的白名单内容。由于通配符在白名单匹配过程中经常使用,本文使用子域挖掘工具技术扩展获得的白名单。本文对 11838 个小程序进行了安全检查,其中微信小程序 4,446 个,支付宝小程序 3,946 个,百度小程序 3,446 个,成功提取到 81,978 个白名单域名。



















复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

问题2

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

各种超级应用中哪些漏洞可以被利用来启动TDCAtack?    



















本文发现易受攻击的域名(资产)和实际的 TDCattack 之间存在语义差距。具体来说,并非所有Web漏洞都可以被利用来启动 TDCattack。这是因为 TDCattack 针对的是小程序的前端用户,攻击者只能通过操纵用户点击的链接来发起攻击。此外,超级应用可能会实施定制的防御,导致不同超级应用的漏洞功效有所不同。为了解决这个问题,本文研究了微信、支付宝和百度等知名超级应用中白名单机制的威胁模型。本文仔细分析了 OWASP列出的排名靠前的Web漏洞,并检查可能被TDCattack 利用的漏洞。本文最终确定了 TDCattack 的四种可利用漏洞。尽管WeChat和Aliapy执行了定制的防御机制,但它们仍然容易受到TDCAttack的攻击。基于这些发现,本文进一步分析了提取的域名(资产),发现 140 个小程序可能容易受到 TDCAttack 的攻击。



















复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

问题3

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

TDCattack 如何影响现实世界的小应用程序?



















为了解决该问题,本文验证所识别的易受攻击的域名(资产)是否可以被相应的小程序成功加载。具体来说,本文从小程序的入口点(即JS文件中的onLoad生命周期函数)到URL加载操作(即HTML文件中的src分配)进行静态跨上下文数据流分析,以分析外部加载的过程。输入解析。根据分析结果,本文自动将易受攻击的 URL 包装在由“adb”命令触发的基于模板的测试中。通过hook相关的WebView回调来监控测试结果。最后,本文验证了26个可利用的TDCAttack,并提供案例研究来证明其安全影响,包括网络钓鱼、隐私泄露和权限升级。



















03

研究成果

复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

本文发现域名白名单机制在小程序生态系统中并不可靠,因为它假定白名单域名下的所有网页都是可信的。为了证明这一弱点本文提出了一种名为 “TDC Attack”的新型攻击,以及两个攻击向量,攻击者可以通过操纵不安全的域名或URL绕过白名单检查,发起网络钓鱼攻击或滥用运行时API。本文首次在现实世界的小程序生态系统中对 TDCAttack 进行了实证研究。具体来说,本文研究了白名单机制失效的根本原因,并提出了一种自动分析框架,用于识别真实世界小程序中的 TDCAttacks。实验表明,包括微信、支付宝和百度在内的流行小程序生态系统都容易受到 TDCAttack 的攻击。此外,本文还发现了 26 个可被利用的小程序。

欢迎大家阅读论文原文(点击“阅读原文”即可查看):
https://dl.acm.org/doi/abs/10.1145/3605762.3624430

素材:张章越

供稿:张章越

版:孙福特

审核:张琬琪、洪赓、邬梦莹

复旦白泽战队

一个有情怀的安全团队

还没有关注复旦白泽战队?

公众号、知乎、微博搜索:复旦白泽战队也能找到我们哦~


原文始发于微信公众号(复旦白泽战队):复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展

版权声明:admin 发表于 2024年2月23日 下午5:01。
转载请注明:复旦大学系统软件与安全实验室在小程序生态领域取得最新研究进展 | CTF导航

相关文章