夕小瑶科技说 01月02日
GitHub 造假浪潮爆发!已有450万虚假星标,实锤造假将导致仓库限流
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

卡内基梅隆大学的研究揭露GitHub存在大量虚假Star,高达450万。这些虚假Star在2024年爆发式增长,不仅扭曲了人气指标,还被用于推广恶意软件。研究团队开发StarScout工具识别异常行为,发现60%以上虚假账户仅点赞和Fork,无其他活动。虚假Star短期内可能带来少量真实关注,但长期反而降低真实Star增长。研究还发现,这些虚假Star活动与软件包注册中心的垃圾邮件活动相对独立,但仍存在潜在风险。文章呼吁关注开源社区的真实价值,避免追求虚假繁荣。

⭐GitHub存在大量虚假Star,2024年呈爆发式增长,严重扭曲人气指标。研究发现,高达450万虚假Star,对开源社区的健康发展构成威胁。

🕵️研究团队通过StarScout工具识别虚假Star,发现虚假账户活动模式异常,主要集中于点赞和Fork,缺乏其他有意义的互动。这些账户的个人资料往往使用默认头像,且缺少组织和隶属关系信息。

⚠️虚假Star常被用于推广恶意软件,包括盗版软件、游戏作弊器和加密货币机器人等。这些恶意仓库寿命极短,但对用户安全构成潜在威胁。

📉虚假Star短期内能带来少量关注,但长期来看,反而会降低真实Star的增长。真实Star的增加能显著促进未来真实Star的增加,符合“富者更富”效应。购买虚假Star的行为如同“饮鸩止渴”,对项目发展并无益处。

原创 小鹿 2025-01-02 17:53 北京

各位父老乡亲!

作为一个码农,我一直傻乎乎地把 GitHub 的星星当成宝贝,以为那都是代码的真爱粉!

结果今天被一记重锤砸醒。

卡内基梅隆大学的论文爆料

嘶!小鹿想到有人买星星,但是没想到这么多!

论文还说,这虚假点赞还夹杂着诈骗和恶意软件。。。我这颗单纯的心啊!

? 尊嘟假嘟啊?

论文标题:

4.5 Million (Suspected) Fake ⋆ Stars in GitHub: A Growing Spiral of Popularity Contests, Scams, and Malware

论文链接:

https://arxiv.org/abs/2412.13459

在公众号后台发送口令“0102”即可获取完整 PDF

起因

正如唐纳德·T·坎贝尔所说:

“任何定量社会指标被用于社会决策的次数越多,它就越容易受到腐败压力的影响,并且越容易扭曲和破坏它旨在监测的社会过程。”

GitHub Star 数量作为开源项目评估的重要指标,也难逃此劫。。。没能逃过被“注水”的命运

现在 GitHub 圈里,作为决策信号的 GitHub Star 就像其他社交媒体的人气指标一样,已经可以被轻易地人为抬高了。在 Google 上搜索“购买 GitHub Star”,你会发现一堆提供商,他们声称只需几小时或几天就能交付大量 Star,价格从每个 0.1 美元到 2 美元不等。

而来自卡耐基梅隆大学的研究团队,想要揭开虚假 Star 的真面目,开发了一款名为 StarScout 的工具,类似于 Github 里面的“星探”,能从 GitHub 海量数据中揪出那些行为异常的 Star,将 StarScout 应用于 2019 年 7 月至 2024 年 10 月的所有 GitHub 事件数据总计 6054 万用户、3.1 亿个仓库、6.1 亿个 Star 和 60.1 亿个其他事件, 识别出超过百万的虚假 Star 和 15,835 个存在虚假 Star 活动的仓库,研究团队发现:

鉴定模型

StarScout 主要聚焦于识别 GitHub 平台上两类可疑的 Star 行为模式:

    "昙花一现"模式:用户仅为极少数仓库点赞后便销声匿迹

    "整齐划一"模式:n 个账户如同提前约好一般,在极短时间 ∆t 内集体为 m 个特定仓库点赞

这些行为模式往往与虚假 Star 交易密切相关。对于那些经营 Star 买卖的商家来说,要完全规避这些特征几乎是不可能的:他们要么使用新注册的临时账户,要么不得不在短时间内集中完成客户订单(如表 1 的交付时间承诺所示)。

然而必须承认的是,在判定 Star 的真伪时很难画出一条泾渭分明的界限。比如,设想这样一个场景:某个 GitHub 教程要求学习者给仓库点 Star 作为练习的一部分,这种情况该如何界定?

因此,研究团队决定不纠结于定义绝对的真伪标准,而是将重点放在识别具有明显异常行为特征的仓库和用户身上。

为了降低误判率(无论是将正常用户误判为作弊者,还是虚假账户为掩人耳目给正常仓库点赞),StarScout 设计了一套精细的后处理机制,用于进一步甄别可疑的 Star 行为。系统整体架构如图 2 所示。

实验分析

使用包含 15,835 个仓库和 27.8 万个具有虚假 Star 活动的帐户的数据集进行实验分析后,研究团队对 GitHub 中的欺诈性点赞活动进行了测量研究,以四个研究问题来分析:

 RQ1:GitHub 中虚假 Star 的普遍程度如何?

为了摸清 GitHub 上虚假 Star 的真实情况,研究团队首先要搞清楚它们到底有多普遍。研究团队把那些被标记为“刷星”的仓库和用户,跟 GitHub 上的两组“正常人”进行了对比:

对比结果,研究团队都惊呆了!

如图 6 的数据显示,从 2022 年开始,“刷星”活动就开始抬头,到了 2024 年简直是“井喷式”爆发!(注意,图 6 的 y 轴是对数坐标,这意味着增长速度比你看到的还要快得多!)

发现 1:GitHub “刷星”活动从 2022 年开始抬头,2024 年彻底爆发!

研究团队的对比还发现,只需要一小撮“刷星”用户,就能在 GitHub 的人气竞赛中掀起巨大的波澜。比如,在 2024 年 7 月的峰值,只有 30779 个“刷星”用户,仅占当月活跃用户的 1.88%,但他们“刷”出来的 3216 个仓库,却占当月所有获得 50 个以上 Star 的仓库的 15.84%!

这意味着,现在一个获得 50 个 Star 的仓库,有 15% 的概率不是真正的“潜力股”,而是被“刷”出来的!这简直是给 GitHub 的人气指标“掺了水”!

发现 2:一小撮“刷星”用户,就能严重扭曲 GitHub 的人气指标!

研究团队还想知道,这些“刷星”的仓库会不会蔓延到 npm、PyPI 等软件包注册中心。毕竟,这些注册中心是软件组件的实际分发渠道,它们的依赖关系也容易受到攻击。

研究团队把“刷星”仓库的列表,跟 npm 和 PyPI 的元数据进行了匹配,结果发现:

这说明,目前 GitHub 上大规模的“刷星”活动,和软件包注册中心发生的垃圾邮件活动是分开的。虽然这些“刷星”的软件包如果恶意,可能会造成直接损害,但它们似乎还没有对 npm 和 PyPI 的供应链产生重大影响。

RQ2:带有虚假点赞活动的 GitHub 仓库有哪些特征?

研究团队对 15835 个被标记为“刷星”的仓库进行了深入分析,并把它们分成了两类:

(1)“昙花一现”: 截至 2024 年 10 月,已经被 GitHub 删除的仓库(共 14371 个)。

(2)“钉子户”: 截至 2024 年 10 月,仍然存在于 GitHub 上的仓库(共 1464 个)。

昙花一现的特点:

研究团队从对昙花一现的仓库名称的词频分析中,发现了一些蛛丝马迹:

“钉子户”的特点:

通过与仍然存在于 GitHub 上的具有相似名称的仓库进行比较,研究团队发现,这些仓库充其量是垃圾邮件,最坏的情况是恶意软件。比如,VirusTotal 报告说,截至 2024 年 10 月,仍然存在于 GitHub 上的 1464 个“刷星”仓库中,有 41 个存在恶意软件。

需要注意的是,VirusTotal 并不能完全覆盖 GitHub 上存在的恶意软件类型。即使对于那些没有 VirusTotal 警报的仓库,研究团队仍然能够发现它们内部隐藏着高度混淆的恶意软件。

当然,仍然存在于 GitHub 上的仓库,它们的名称更加多样化,这说明至少有一部分较小的仓库购买虚假点赞,是为了人气竞赛或增长黑客。

RQ3:参与虚假 Star 活动的 GitHub 账户有哪些特征?

为了揭开“刷星”用户的真面目,研究团队首先把他们的个人资料,跟“正常用户”以及之前研究中发现的“虚假用户”进行了对比。研究团队收集了四个关键的个人资料特征,并在表 5 中总结了结果。

结果显示,“刷星”用户的个人资料,确实有一些“猫腻”:

相比之下,之前研究中发现的“虚假用户”,可能在账户管理和创建策略上有所不同。不过,虽然“刷星”用户更倾向于使用这些空白字段,但与随机 GitHub 用户相比,差异并不算太大。更重要的是,他们的活动模式差异非常明显,这说明,仅仅通过个人资料的“真假”来判断用户是否参与“刷星”活动,并不是一个靠谱的方法。

研究团队对 1816 个“刷星”用户的活动数据进行了谱聚类分析,结果发现,他们可以被分为三个不同的“阵营”:

值得注意的是,“点赞狂魔”和“点赞 +Fork”这两个“阵营”的删除率都超过了 70%,这说明他们很可能来自不同的“刷星”商家。而“伪装者”虽然看起来更像“正常用户”,但他们的删除率仍然高达 30.25%,这说明,即使他们中存在一些“误伤”,也一定有一些“刷星”商家通过真实的虚假账户、交换平台甚至被盗账户来交付 Star。

RQ4:虚假 Star 在多大程度上有效地推广了目标

研究团队为了探究这种虚假 Star 是否真的有效,在多大程度上有效地推广了目标 GitHub 仓库,提出了两个假设:

研究团队使用面板自回归模型来分析虚假 Star 对未来真实 Star 的影响。该模型能处理时间依赖性数据,并控制其他因素的影响。收集了每个仓库在每个月的以下数据:

    当月虚假 Star 数量

    累计虚假 Star 数量

    当月真实 Star 数量

    累计真实 Star 数量

    仓库年龄

    是否有发布

    真实活动量(非仓库所有者和虚假 Star 用户的活动)

前四个变量用于检验假设,后三个变量用于控制其他因素拟合不同阶数的自回归模型,使用了固定效应和随机效应两种方法。

结果研究团队发现所有模型都得出了相似的结论:

购买虚假 Star 只能在短期内带来少量关注,氮素从长期来看反而会成为负担!

结语

"看完这个’星星交易’的故事,不禁让人思考:在开源社区里,真实的价值到底应该用什么来衡量?是浮于表面的数字,还是实打实的代码贡献?

而且,小鹿去查了下,星标的价格从几分钱到几元不等,这种价格差异主要由账户的“质量”决定。高价星标通常来自注册时间较长、有一定活跃度的账户,这些账户的星标看起来更“真实”,更难以被平台识别和封禁。而低价星标则来自新注册的、几乎没有任何活动记录的账户,这些星标的风险更高,很容易被平台识别并取消。

产业链很成熟。。这些服务还提供“失效包重刷”的保障。。。

或许有人会说:'花钱买星星不就等于给自己贴金吗?'但转念一想,如今各行各业都在追求数据美化,GitHub 星星买卖不过是这个时代的一个缩影罢了。

就像之前咱们给家人们介绍的杀猪盘研究员。。。

杀猪盘开始走学术路线了?95后天才,4个博士+2个博士后,被暂停聘任

但仔细一想,这背后是不是有点让人细思极恐?

我们为什么会觉得需要买星星呢? 是为了项目的面子工程,还是为了吸引关注、获得资源?如果这些星星的“含金量”被虚假流量所掩盖,那原本追求技术创新和共享精神的开源社区,会不会渐渐失去它的灵魂?

本文中推荐的这篇论文中的实验也证明了而这些“花钱买繁荣”的行为,最终也会像黑市刷出来的星星一样——短暂发光,最后悄无声息地消失,连一点痕迹都留不下。

真正有价值的星星,永远是那些因为代码本身的力量而聚集起来的闪光点。

家人们怎么看 ~ 欢迎评论区和我们一起讨论 ~

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

GitHub 虚假Star 恶意软件 StarScout 开源社区
相关文章