他說大多數開源專案現在可能已經被攻破了,只是還沒人發現

他說大多數開源專案現在可能已經被攻破了,只是還沒人發現

發布於
·17 分鐘閱讀
開源資安AIAI AgentSaaS創業產業觀察商業產品投資

TL;DR

  • Cal.com 共同創辦人 Peer Richelsen 丟出一個很重的判斷:現在多數開源專案很可能已經被攻破,只是沒人知道
  • 他們的 GitHub 上躺著三百五十六個待審 PR,多數是「Claude,幫我修一下 issue 115」這種兩行提示詞生出來的東西
  • 資安回報信箱九成九是 AI 產的,其中一半的漏洞根本不存在,維護者靠人工回報守住安全的那套文化正在崩解
  • 安全研究員給的數字:開源專案被攻破的難度是閉源的五到十倍容易,不是高一成兩成,是五到十倍
  • Cal.com 的解法是把自己 fork 一份,跑在正式站上的商業版轉私有,開源版改名 cal.diy 繼續放著,標語是「使用風險自負」
  • 一個很陰的細節:駭客會掃你的 PR,AI 能判斷哪個 PR 是在補漏洞,然後在你合併前先下手
  • 他們沒有任何 AI 產品,所以不用燒 token,毛利完好,年化營收剛過七百萬美金

這集在講什麼

這集是二〇二六年九月三日播出的 The Changelog,主持人 Adam Stacoviak 是這個開發者訪談節目的老班底,做了十幾年,專門找開源社群裡實際在扛專案的人聊真實處境。

來賓 Peer Richelsen 是 Cal.com 的共同創辦人兼董事長。Cal.com 是一家做排程基礎設施的公司,白話講就是開源版的 Calendly,你要跟別人約時間,丟一個連結過去讓對方挑時段,背後那套系統就是他們做的。公司從二〇二一年開始做,一路以「商業開源」當招牌。這集有點特別的地方在於 Adam 本人既是 Cal.com 的天使投資人也是每天在用的付費用戶,所以整場對話的語氣不太像訪問,比較像兩個老朋友在講一件他們都不想承認的事。

三百五十六個 PR,沒有一個看得出好壞

節目錄到一半,Adam 打開 Cal.com 的 GitHub,pull request 分頁上顯示三百五十六個待處理。Peer 的回應很直接:「沒機會了,我們永遠不會清完這個。」

有意思的不是數量,是他描述的那種辨識失能。以前收到 PR,好壞是黑白分明的。寫得好的有測試、有結構、有思考痕跡,寫得爛的一眼就能關掉,而且任何人來看都會同意該關。現在每一個 PR 長得都一樣,都是 Claude Code 或 Codex 產出來的,格式漂亮、說明完整、信心滿滿,像放在金盤子上端給你。你開始剝洋蔥,剝到第三層發現連測試都是幻覺出來的,某個數值被硬寫死在裡面。

他用了一個很到位的比喻:這跟大規模資訊操弄是同一個結構。當假訊息多到一個程度,重點不是你會相信哪一則,是你再也分不出哪一則是真的。PR 也一樣,當所有東西看起來一樣好,「好」這個字就失效了。

過去開源專案有一千個貢獻者代表有一千種意見,一個人提的做法會被另一個人否決,最好的想法勝出。現在是一千個人用兩種編碼助手,勝出的是最好的模型,或者頂多是最好的提示詞。

更慘的一層是求職。現在很多人的職涯策略是:叫 AI 找出前十大熱門專案,挑最多人按讚的 issue,同時開十二個 agent 去發 PR。這跟把履歷海投到幾百家公司是同一種行為,只是這次垃圾落在維護者的信箱裡。

真正壞掉的是回報文化

前面那些還只是煩,接下來這段才是這集最重的部分。

Peer 說,二〇二六年一月之前,他會毫不猶豫地主張開源比閉源更安全。理由很紮實:開源專案有安全研究員在看,有人會發現漏洞、回報漏洞、送修補的 PR,這是一整套運作了二十年的文化。

現在這套文化沒了。Cal.com 有一個 security@ 信箱收漏洞回報,他說九成九的回報是 AI 產的,連寄信那封信本身都是 AI 寫的。其中大概一半的漏洞是幻覺,你照著步驟重現,東西根本不在那裡,或者它引用了錯誤的 API 端點。

一邊是人類回報者被雜訊淹沒,另一邊是攻擊端的門檻整個垮掉。他形容現在做滲透測試需要的知識量已經降到「你會不會在終端機打指令」的程度。以前要當黑帽駭客得逆向工程 API、做中間人攻擊、花十六個小時讀完整份程式碼,那是聰明人的工作。現在資安圈給這件事取了個名字叫 vibe hacking,跟 vibe coding 是同一個字根,你不需要知道自己在做什麼,只要對 agent 下指令就好。

他講了一句我覺得會被引用很久的話:當媽媽在用 AI 隨手做一個 iOS App,隔壁十六歲的兒子正在用同一套工具攻擊附近的變電所。技術民主化這件事本身是好的,只是知識圖譜被壓平之後,兩邊都被壓平了。

Firefox 有十二個 P0 等級的漏洞是 AI 找出來的,React 有,Next.js 也有。Peer 的推論很簡單:連這些專案都這樣了,你覺得你的 repo 現在長什麼樣子?

所以他的判斷是「大多數開源專案現在很可能已經被攻破了,我們只是還不知道」。這種攻擊速度的躍升,之前在攻擊從偶爾一次變成一天三次那篇也提過類似的觀察,只是那集講的是供應鏈,這集講的是原始碼本身。

五到十倍,這個數字很重

Cal.com 找了幾位安全研究員問,得到的答案是:如果你是開源專案,被攻破的難度比閉源容易五到十倍。

原因是黑箱與白箱的差別。攻擊閉源產品得靠猜,打一個 API 端點然後推測它背後在幹嘛。開源你直接看得到後端、看得到函式呼叫、看得到某個參數是不是可以注入。以前這需要花十六到二十小時人工研究,那是白帽研究員在做的事,做完領賞金。現在同一段工作變成一句提示詞,而且黑帽那邊動機更強、動作更快,因為他們的變現路徑是勒索。

這種攻防兩端同時被 AI 加速的現象,三百美金就能撬開一個前沿模型那集講得更細,兩邊的結論其實是重疊的:防守端的成本沒有等比例下降。

他們怎麼做:內部 fork,正式站轉私有

Cal.com 的決定是四月十五日起,跑在 app.cal.com 上的商業版轉為私有程式碼。原本開源的部分不會消失,改名叫 cal.diy,繼續完全開源,可能還會從 AGPL v3 放寬到 MIT,因為那份程式碼對他們來說已經不是商業資產,是公共財。

具體要私有化的範圍他講得很清楚:認證、資料庫呼叫、加密、中介層。前端那個拖拉元件不用管,留著就好。這個切法跟 WordPress 的做法本質相同,wordpress.com 跟 wordpress.org 早就是兩份東西了。

有趣的是他花了一段時間強調這不是商業決定。他們月增五到一成、目標是每年三倍、現金充裕、投資人是市面上最挺開源的那群人,而且是他們去說服投資人接受這個轉向,不是被逼的。他說他其實希望這是商業決定,那樣至少只影響他們一家公司。

那開源版留著要幹嘛?他的說法是「靠分散取得安全」。你家巷口理髮店自架 cal.diy,駭客要先找到那台伺服器、確認目標是誰,投報率不划算。真正被盯上的永遠是資料最多、錢最多的那一個,也就是 Cal.com 自己。

一個很陰的細節

這段是我聽完最坐立難安的。

Peer 說,如果他是壞人,他會去掃目標專案的 pull request。因為 AI 可以判斷一個 PR 是新功能還是漏洞修補,你把一段程式碼丟給模型問「這個 PR 在做什麼」,它會告訴你這是在補一個漏洞。

那麼攻擊者的最佳策略就是:盯著你的修補 PR,在你合併之前,先去利用那個漏洞,然後寄勒索信。

他的建議因此是把 repo 先轉私有,在裡面把該補的補完,最後壓成一個 commit 合併回去。不要留下修補的軌跡,不要餵那台準備跟你要比特幣的機器。

他也給了三步驟的處理順序:第一,先別慌,你的專案大概率沒那麼重要。第二,跑一輪 AI 掃描工具看爆炸半徑,他說他問過的每個專案,AI 工具回報的問題量都是過去的十倍。第三,如果你的專案會存取資料庫、裡面躺著客戶資料,認真考慮把敏感層轉私有。

用他的話說:人類寫程式一直都很爛,這件事在 AI 出現之前就是事實,你本來就有漏洞。

GitHub 該怎麼辦

聊到這裡自然會問一個問題:如果大家跟開源的關係變了,GitHub 這門生意會怎樣。

Peer 的問題問得更狠。如果連專案作者本人都沒讀過自己 repo 裡的程式碼,如果新畢業生看不懂 if 判斷式,那分發原始碼跟分發二進位檔的差別在哪裡?GitHub 除了當一個分享壓縮檔的 CDN 之外,還剩下什麼意義?

他另外抱怨了一件很務實的事:現在要擋 AI 洗版 PR,得裝第三方的 GitHub Actions 來自動關掉未驗證用戶的 PR。這種東西應該是原生功能,不是外掛。誰能貢獻、要不要驗證身分,這是平台該解決的問題。

沒有 AI 產品,反而變成一種奢侈

節目後半有一段對比很有意思。

Cal.com 沒有任何 AI 產品,所以不燒 token,毛利完好,年化營收剛過七百萬美金,churn 很低。Peer 說他常遇到創辦人跟他炫耀「我們做到五百萬 ARR 了」,他就問一句:那你燒多少?對方回:一千萬。

他的評價很簡潔:如果你用一毛錢賣一塊錢的 AI 額度,任何生意都會長得很漂亮。這跟當年 Uber 從舊金山機場到市區只要十五美金是同一件事,便宜是有人在付錢,只是那個人不是你。

Adam 提到一個反例是 Amp,這家從 Sourcegraph 拆出來的編碼 agent 公司公開表態不補貼 token,該貴就貴,成長速度沒有別人那種曲棍球棒,但每一塊營收都是真的。Midjourney 也是同一類,自己做模型、自己扛基礎設施,不用向別人買 token,所以能靠訂閱賺錢。

我自己聽到這段最有感的是這句:不是每件事都得是 AI,居然還有人在乖乖賣 SaaS。這句話在二〇二六年講出來,帶著某種黑色幽默。

最後那個小插曲

Adam 在節目上當場提了一個困擾他好幾年的功能問題:他想改期自己的會議時,卻被自己設定的可用時間擋住,得跑去後台開 override 才能挑一個非開放時段。他說這件事煩了他好幾年,從來沒回報過,就自己繞過去了。

Peer 說這在他的待辦清單躺了至少一個月,然後直接在對話中丟給自己的編碼 agent。錄音還沒結束,agent 就把 PR 送出來了。

我覺得這個收尾很妙,因為它把整集的兩面同時擺在桌上。AI 讓一個抱怨三年的小痛點在三十分鐘內被修掉,也讓同一個 repo 的維護者不得不把自己的程式碼藏起來。同一把工具,兩種後果,而且你沒辦法只要其中一種。

Peer 最後說他還是看好開源,只是得接受這隻毛毛蟲正在變成別的東西。這個轉變不好看,但硬要維持原狀更危險。我自己的判斷是,接下來一兩年會有更多商業開源公司做出跟 Cal.com 一樣的選擇,差別只在有沒有他們這麼坦白地說出理由。

如果這類產業第一線的觀察對你有用,我的其他文章都在 wilsonhuang.xyz,不嫌棄的話歡迎訂閱。

推薦閱讀

喜歡這篇文章嗎?

訂閱電子報,每週收到精選技術文章與產業洞察,直送你的信箱。

💌 隨時可以取消訂閱,不會收到垃圾郵件