![]()
新智元報道
編輯:元宇
【新智元導讀】一顆星,0.1美元,一杯6元奶茶能買8顆。ICSE頂會論文曝出GitHub上600萬顆星可能是刷出來的,其中大量「熱門項目」很可能是偽裝成盜版軟件、游戲外掛、加密貨幣機器人的釣魚或惡意軟件倉庫。
凌晨一點,一個程序員正在GitHub上挑選即將要用的開源工具。
一番比較之后,他點進了那個star數最高的:4.2萬顆,活躍度還行,README寫得專業,issue回復頻率正常。
看起來,這就是那個對的選擇。
但他不知道的是,這個倉庫中那個承載了開發者信任的star中,究竟有多大比例是花錢買來的。
在過去,打開一個GitHub項目,第一眼掃star數,這是許多開發者沿用了多年的判斷路徑。
如今,這條路徑正在失靈。
![]()
GitHub Trending頁面,按star數給開源項目排座次
扯開這層遮羞布的,是一篇來自卡內基梅隆大學的研究論文,它將在國際軟件工程大會ICSE2026的主會議上正式宣講,是妥妥的頂會實錘了!
![]()
論文的標題簡單粗暴:
《Six Million (Suspected) Fake Stars on GitHub》(GitHub上六百萬個(疑似)虛假星標:一場不斷升級的熱度比拼、垃圾信息與惡意軟件漩渦)。
![]()
https://arxiv.org/pdf/2412.13459
研究團隊來自卡內基梅隆大學,聯合北卡羅來納州立大學和專做軟件供應鏈安全的Socket Inc.。
他們做了一件過去沒人做過的事,把2019年7月到2024年12月之間GitHub全網公開事件數據全量掃了一遍。
掃出來的結果觸目驚心。
600萬顆疑似假星,18617個疑似參與刷星活動的倉庫,30.1萬個相關賬戶。
一個曾經熟悉的指標,就這樣一夜之間變陌生了。
過去,GitHub的star數是開發者評估一個開源項目時最直觀的參考。但這篇頂會論文數據,卻告訴我們這個代表著信任的符號正在被系統性操縱。
![]()
GitHub上的那顆星,早已被貼上「FOR SALE」的標簽
更可怕的是,它的背后已經形成了一條完整的灰產市場,刷一顆GitHub star的報價低至0.10美元,一杯6元奶茶,就能夠買上8顆!
而且這些star可以被批量生產、定向投放、精準注入任何一個想看起來「熱門」的倉庫。
GitHub星標經濟
被頂會論文裝進顯微鏡
值得注意的是其中的一個數字。
2024年7月:是CMU研究團隊給出的假星活動峰值時點。
![]()
假星活動在GitHub上的月度占比走勢。2024年7月的峰值,是此前五年總和都夠不到的高度。
當月GitHub上收到star的熱門倉庫里,16.66%涉及假星活動。
這是什么概念?
你打開GitHub的Trending頁面,每瀏覽6個新上榜項目,大概率就有1個的熱度是「注了水」的。
這還不是所有GitHub倉庫,而是當月上榜的那一批熱門倉庫。熱門倉庫子集受污染更明顯,但 Trending 本身只命中了很小一部分。
研究里另一個數據更有沖擊力。
2024年3月,GitHub活躍用戶中有6.59%,也就是117024個賬戶與假星活動相關。
這意味著假星早就不是邊緣噪音,它已經大到能污染整個生態的觀察指標。
去年9月,CMU發布官方新聞稿時,Vasilescu說了一句很克制但很有分量的話:
我們不是第一批討論這個問題的人,所以發現與詐騙相關的虛假star并不讓我們意外。但它們的數量之大,還是讓我們很吃驚。
![]()
https://s3d.cmu.edu/news/2025/0903-github-stars.html
這里有個細節不能忽略。
論文同時指出,從絕對比例看,假star在GitHub全站所有star里通常仍只占約1%。
1%聽起來似乎不多。
但問題在于,這1%不是均勻分布的。它高度集中在兩個最敏感的位置:「熱門倉庫」和「活躍用戶」。
也就是說,普通開發者真正會去看、會去信、會拿來做選型決策的那個區域,恰恰是被污染最嚴重的。
ICSE是軟件工程領域最頂級的會議,一篇論文能進ICSE正式研究論文類別,說明它已經通過了非常嚴格的同行評審,研究方法、實驗數據和結論整體上都是經得起推敲的。
更關鍵的是,研究團隊沒有只寫論文,還公開了StarScout源碼,以及論文測量研究所用的數據和腳本,為外界審查、復核和復現這項研究提供了基礎。
![]()
https://github.com/hehao98/StarScout
600萬假星數據怎么來的?
也許你會好奇,這600萬假星是怎么數出來的?會不會有誤傷?
研究團隊給出的檢測方法不復雜,主要有兩個維度:
第一個,盯低活躍賬號。
有些刷星商家會用腳本批量注冊一次性賬號。這些賬號的畫像高度統一:沒頭像、沒簡介、沒項目,注冊當天只做了一件事:給某個倉庫點star,然后就再也不活躍了。
一看就是來「送數字」的。
第二個,盯群體同步異常。
專業術語叫lockstep,意思就是踏著同一步點走。
刷星商家要在短時間內把幾千顆星交付給客戶,不得不反復調用手頭的賬號。
于是就會出現一種非常詭異的模式:一批賬號,在一個很短的時間窗口里,集中給一批倉庫點star,而且每個倉庫都接收了這批賬號里的很大一部分。
這種模式在自然用戶中幾乎不可能出現。
Facebook抓虛假點贊用的就是類似思路,算法叫CopyCatch。
研究團隊在Google BigQuery上跑了約20TiB的GitHub事件數據,把這套方法從臉書搬到了GitHub的注意力經濟里。
為降低誤報,他們還加了一道后處理:只有在歷史數據上出現過明顯「假星異常峰值」的倉庫,才會被最終標記。
這就是600萬這個數字的來源。
![]()
2024年8月,Socket首次披露了370萬顆疑似假星。四個月后,樣本擴展到2024年底,數字翻到600萬。黑灰產的膨脹速度,比研究團隊追蹤的速度還快。https://socket.dev/blog/3-7-million-fake-github-stars-a-growing-threat-linked-to-scams-and-malware
至于刷星的成本,Socket的早期研究博客給出過一個價格參考:每顆假星最低0.1美元。
而它在GitHub上換來的,是曝光、是Trending、是可能的風投故事、是開發者的第一眼信任。
刷星真相
短期甜長期毒
刷星到底有沒有用?
研究團隊專門做了面板回歸,把「真實star」和「假star」對后續真實關注的影響分開算。
結果很扎心。
真實star會持續帶來正向累積效應,有人真的喜歡就會帶來更多人真的來看。
而假star的效果,只在接下來不到兩個月里有一丁點微弱的促進,大小只有真star的五分之一。
更狠的是,從長期看假star歷史越多,后續真star的增長越差。買來的熱度到頭來變成了負資產。
這也符合直覺。
一個項目被刷上Trending,真實開發者點進去發現文檔潦草、代碼粗糙、issue無人回應,就會在心里給它打上「浮夸」標簽。
這種印象比沒上Trending還傷。
但問題在于,即便長期沒用,短期也夠騙到很多人,比如騙到風投的盡調清單,騙到媒體的「本周最火開源項目」盤點,騙到技術選型時只看star數的新手開發者。
Socket在研究中還點出一個現象。
涉嫌刷星的倉庫,標題里大量出現awesome、template、demo、example這幾個詞。
![]()
論文里涉事倉庫的詞云。awesome、template、demo、example這些詞被放得最大,它們是刷星倉庫最常用的偽裝面具。
看起來很實用、實際質量平平的聚合類、教程類項目。
它們在把GitHub變成一個充滿信息噪音的集市。
假星是惡意軟件的假面
但所有這些,都還不是這篇論文最令人恐怖的部分。
CMU研究團隊在分析那18617個涉事倉庫時發現了一個極端數字:
其中90.42%已經被GitHub刪除。
![]()
StarScout檢出的涉事倉庫,90.42%已被GitHub刪除;而GitHub全站隨機對照組的刪除率只有5.03%。這18倍的差距,為StarScout檢測結果提供了較強印證。
對仍然在線的樣本做進一步內容分析,結論是約30%還屬于spam或active、phishing、malware,也就是還在主動傳播釣魚木馬的倉庫。
![]()
Spam/Phishing(紅色)單項占比達31.1%,比任何「正經」類別都高,假星倉庫的主業,不是營銷,是偽裝。
換句話說:假星這門生意有相當大一塊不是給創業公司做增長黑客用的,而是給惡意軟件做「化妝」用的。
包裝套路高度統一。
偽裝成某款游戲的外掛工具、偽裝成某個熱門應用的破解版、偽裝成「一鍵自動擼空投」的加密貨幣機器人。
論文公開了一個具體案例。
![]()
左上是這個倉庫的 、README,漂亮得像一個正規開源項目。下方是代碼里藏著的spawn()調用,一旦運行就會遠程執行一段加密腳本,悄悄偷走你的加密貨幣。
如圖中右上所顯示:一個名為Solmonster/PhantomSniper-Solana-Sniper-Bot的倉庫,被檢測到時有109個疑似假星,README寫得非常漂亮,看起來就像一個正規的Solana鏈搶購工具。
但它的代碼里藏著一個隱蔽的spawn()調用。你一旦運行,它就會悄悄竊取你的加密貨幣。
再把視野拉高一層。
去年震動安全圈的XZ Backdoor攻擊,就是典型的開源供應鏈攻擊樣本。
攻擊者花了兩年時間騙到維護者的信任,把后門植入了一個被無數系統依賴的壓縮庫。
這件事本身和假星無關,但它說明了一個更本質的問題。
開源生態里,信任一旦被偽造,下游有多少系統會被牽連,根本數不過來。
而假星恰恰是偽造信任的最低成本入口。
如果一顆星按0.1美元來算,1000顆不到100美元,就能讓一個藏著木馬的釣魚倉庫,看起來像一個剛起來的熱門開源項目。
這是一門被定價、被規模化、被工具化的生意。
當「點贊」不再可信
開源世界需要新的信任錨
自動化刷星,早在GitHub官方政策明文禁止:「rank abuse,such as automated starring」(刷榜行為,比如機器自動點Star)。
![]()
但問題是規則追不上黑產。
論文揭露的數字足以讓我們警醒:違規活動不是在收斂,而是在爆發。至少現有的檢測和治理機制,對此的整治還是不夠的。
因此,研究團隊也給出了幾個方向上的建議。
第一,降低star在GitHub聲譽體系里的權重。
平臺排名、搜索推薦、Trending榜單,都不該把star數當作主要指標。
第二,引入差異化star。
新注冊賬號、空白簡介賬號、無任何活動歷史的賬號,它們的star不該和一個寫了五年代碼的老開發者的star等同看待。
第三,把更多難偽造的信號納入評估。
比如release發布節奏、真實依賴關系、issue回復質量、PR合并情況、貢獻者多樣性。這些都比一個「+1」要難刷得多。
但這些建議的背后,是一個更深的問題。
社會學里有兩條經典規律。
坎貝爾定律:任何定量社會指標一旦被廣泛用于決策,就越容易被操縱,也越可能扭曲它原本想衡量的東西。
古德哈特定律:當一個測量指標被當作目標時,它就不再是一個好指標。
GitHub的star,正是這兩條定律的深刻體現。
它最早只是一個輕量的收藏動作。后來被風投、被招聘、被媒體、被技術選型層層賦予意義,它就從一個「評價工具」,變成了一個「被追逐的目標」。
一旦成為「被追逐的目標」,它就開始失掉原來的意義。
這不是GitHub一家的問題,Twitter的關注數、AppStore的評分……每一個「輕量信任信號」,都在經歷同樣的命運。
區別只在于,GitHub承載的不是一場人氣游戲,而是全球開發者賴以工作的代碼基礎設施。
每顆星堆起來的,是開源世界一道正在被鉆穿的信任防線。
參考資
https://x.com/rohanpaul_ai/status/2044567914859397181
https://arxiv.org/pdf/2412.13459
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.