复旦白泽战队 2025-03-07 10:12 北京
包管理平台是开发者获取、分享和管理代码依赖的平台,使得程序员不用重复造轮子,让开发更高效。随着开源生态的日益繁荣,包管理平台受到越来越多开发者的青睐,平台域名排名也随之攀升。
本文转载自“复旦白泽战队”公众号。
包管理平台是开发者获取、分享和管理代码依赖的平台,使得程序员不用重复造轮子,让开发更高效。随着开源生态的日益繁荣,包管理平台受到越来越多开发者的青睐,平台域名排名也随之攀升。
然而,这种高流量和高关注度也吸引了不法推广者的目光,成为被滥用的目标。
当用户在浏览器中搜索"Online Casino"(在线赌场)时,搜索结果中会包含NuGet以及Docker Hub上的软件滥用包,其中的链接指向了非法的在线赌博平台
这些不法推广者滥用了包管理平台的公信力,通过精心设计的readme,对恶意的网站进行黑帽搜索引擎优化,这就是基于包管理平台的黑帽搜索引擎优化(Blackhat Search Engine Optimization through REPositories,RepSEO)。
那么,攻击者是如何实现RepSEO攻击的?
RepSEO攻击在现实世界中的影响如何?
RepSEO的供应链是如何构建的?
攻击者是如何利用RepSEO谋取利益的?
请收看新一期的白泽成果分享
本文系复旦大学系统软件与安全实验室网络犯罪研究小组研究成果,相关内容发表于软件工程领域国际顶级会议ICSE 2025,论文标题《Exposing the Hidden Layer: Software Repositories in the Service of SEO Manipulation》。更多具体信息,请点击链接或点击文末阅读原文查看论文。
RepSEO的攻击流程
为了全面揭示RepSEO的攻击实现机制,我们需要系统性地剖析生态中的关键参与方:
1. 账户提供商(Account Providers)通过①滥用合法的邮件服务平台,或是②建立专用的邮件服务系统,为RepSEO攻击者提供平台的身份验证支持。
2. 广告商(Advertisers)为待推广的目标生成推广链接,这些链接通常会被嵌入滥用包的Readme文档中。
3. 发布者(Publishers)在包管理平台上发布RepSEO滥用软件包,不仅通过优化手段欺骗搜索引擎,还通过植入广告商提供的推广链接,诱导用户点击。
RepSEO攻击攻击流程示意图
在深入剖析RepSEO生态中的关键参与方之后,我们可以清晰地揭示RepSEO攻击的完整流程:
首先,①发布者从账户提供商处获取大量账户。同时,②广告商为恶意的待推广网站创建推广链接;③并向发布者提供推广链接。随后,④发布者将这些链接嵌入滥用软件包中,并将其发布到npm和NuGet等包管理平台上。
⑤当受害者搜索SEO目标关键词时,他们会在搜索结果顶部发现RepSEO滥用包。⑥点击这些链接后,受害者将被重定向至被推广的恶意网站,面临诸如诈骗和恶意软件安装在内的各种安全风险。
RepSEO的真实世界影响
在初步了解RepSEO攻击流程后,我们很想知道:RepSEO攻击对现实世界究竟产生了怎样的影响?
为了回答这一问题,我们构建了RepSEO滥用包的检测工具,对2011年1月7日至2024年3月31日期间的数据进行了分析,在npm、NuGet和Docker Hub三个平台的17,087,643个软件包中,共识别出3,801,682个RepSEO滥用包,占比高达22.25%。其中,Docker Hub平台上的滥用包数量最多,达到2,725,573个,其次是npm和NuGet平台。这一数据充分揭示了RepSEO攻击的广泛性和严重性。
RepSEO滥用包的跨平台分布情况
此外,我们发现RepSEO攻击呈现出显著的时间特征。Docker Hub平台的滥用包增长在2021年5月达到顶峰,当月共检测到693,434个滥用包,占当月全部上传软件包的85.02%。此外,2023年3月上传的npm软件包中,92.07%为RepSEO滥用包;而2022年1月上传的NuGet软件包中,90.76%为RepSEO滥用包。这也与 “2023年3月npm由于滥用包的大量上传导致npm‘服务不可用’ ”的相关报道符合。这些数据表明,RepSEO攻击在特定时间段内呈现出集中爆发的趋势。
各平台RepSEO攻击随时间的变化情况
RepSEO的供应链分析
恶意账户
通过对软件包元数据的分析,我们在npm、NuGet和Docker Hub三个平台上各自识别出了30,981、84,851和140,114个滥用账户。其中,NuGet和Docker Hub上约90%的恶意账户只上传了一个包,而这一比例在npm平台仅为37.62%。数据表明,1.12%的npm恶意账户上传了54.17%的滥用包。这种滥用账号的使用策略差异可能与npm在2022年引入的多因素认证(MFA)机制,从而提高了账号注册成本有关。
各平台上传RepSEO滥用包数量前5的恶意账户
推广链接
我们对RepSEO包中收集到的9,924,230个推广链接进行了分析,发现其中35.63%的链接已失效。在仍可访问的链接中,38.87%直接指向目标推广网站,而61.13%涉及重定向机制。
在涉及重定向的推广链接中,有103,871个是由公共URL缩短服务平台生成的短链接,这一现象反映了短链接生成平台审核不严的问题。此外,我们还发现了1,582,670个由地下URL缩短服务生成短链接,涉及32个域名。部分地下URL缩短服务模仿知名URL缩短服务(例如blltly.com仿冒bitly.com),且采用了复杂的规避技术来增强隐蔽性(例如,tiurll.com为每个用户动态生成唯一的链接,而tinybit.cc则利用JavaScript实现动态页面加载)。这些高级技术手段不仅提高了攻击者对重定向过程的控制能力,同时也增加了检测和追踪的难度。
RepSEO攻击者使用量前10的地下URL缩短服务
RepSEO的获利逻辑分析
通过对RepSEO推广行为的深入分析,我们识别出两种主要的欺诈模式。
基于问卷调查的欺诈模式
我们在Docker Hub上发现了一系列基于调查问卷的欺诈模式。这些广告商通过引导点击虚假的电子书或软件下载链接,将受害者诱导至声称提供金钱奖励的问卷调查平台。然而该问卷调查仅用于窃取用户个人敏感信息,即使完成问卷,受害者最终也不会拿到问卷声称的任何奖励。
某恶意问卷调查平台门户网站
基于恶意软件分发的欺诈模式
我们还发现了大量用于分发恶意软件的滥用包,这些滥用包并不直接提供恶意软件的下载链接,而是将恶意软件隐藏在压缩文件中。这些压缩文件往往冠以免费、破解的名称(例如Tamil-Dubbed-Movies-Free-Download-In-720pEnglish.zip),来诱导用户下载和解压。分析后发现,这些压缩文件中实际是Trojan木马,通过篡改存储库密钥、禁用安全工具建立僵尸网络,进而连接C&C服务器以下载更多恶意程序。
结语
我们的研究工作对包管理平台中的黑帽SEO现象进行了全面分析,提出了一种新兴的软件供应链威胁——RepSEO,这类攻击者通过滥用npm、NuGet和Docker Hub等开源社区的公信力操纵搜索引擎结果。我们识别出3,801,682个RepSEO滥用包,揭示了攻击的广泛性,并明确了账户提供商、广告商和发布者在生态系统中的关键作用。
我们的研究结果为包管理平台提供了可行的安全建议,以加强其防御机制并遏制此类滥用行为。我们已向npm、NuGet和Docker Hub通报了相关RepSEO包信息,并向谷歌报告了相关供应链漏洞。目前,相关平台已确认问题并开始清理滥用软件包和链接。
研究团队介绍
邬梦莹,系统软件与安全实验室21级直博生,本科毕业于上海科技大学计算机科学与技术专业。主要研究方向为网络黑产和互联网测量,目前已在ACM CCS、NDSS、IEEE/ACM ICSE等网络安全及软件工程国际顶级会议上发表高水平学术论文。相关研究成果在政府部门和工业界落地实战,取得良好效果。
个人主页:https://funeoka-yumee.github.io/
洪赓,助理研究员、硕导。研究聚焦于互联网地下产业检测、网络犯罪治理、人工智能安全治理等,目前已在IEEE S&P、ACM CCS、NDSS等国际顶级会议上发表十余篇高水平学术论文,担任ACM CCS 24、CCS 25程序委员会委员,并主持国家自然科学基金青年项目等重要研究课题。相关成果在执法机关、工业界均有成功应用,曾获ACM SIGSAC China优博奖(全国共3位)、ACM CCS 2018亮点论文等荣誉。个人主页:https://ghong.site/
买巫予骜,系统软件与安全实验室24级学硕,复旦本硕连读。主要研究方向为网络黑产和AI安全。
吴心怡,系统软件与安全实验室24级学硕,复旦本硕连读。主要研究方向为网络黑产和AI安全。