Log4j2 維護者吐槽沒工資還要挨罵,GO 安全負責人建議開源作者向公司收費
基于 Java 的日志記錄工具 Apache Log4j2 近日出現(xiàn)了一個高危漏洞,攻擊者可以利用其 JNDI 注入漏洞遠程執(zhí)行代碼,此漏洞牽涉面非常廣,以至于國內(nèi)外的個人或公司用戶都對此高度關(guān)注,而 Log4j2 開發(fā)組在漏洞曝光后及時發(fā)布了 Apache Log4j 2.16.0 維護版本,默認禁用 JNDI,使此漏洞得到控制。
但小編在學(mo)習(yu)的時候,發(fā)現(xiàn) Log4j2 的維護者之一 @Volkan Yazıcı 在推特上吐槽:Log4j2 維護者只有幾個人,他們無償、自愿地工作,沒有人發(fā)工資,也沒人提交代碼修復問題,出了問題還要被一堆人在倉庫里留言痛罵。
Log4j 維護者一直在為緩解措施而失眠:修復、文檔、CVE、對查詢的回復等。然而,沒有什么能阻止人們痛罵(bush)我們,因為這份沒有報酬的工作。其實我們都不喜歡這個出于向后兼容性問題而需要保留的功能(指 JNDI )。
這是一個非?,F(xiàn)實的問題,我們姑且將這個問題稱之為“開源可持續(xù)性問題”。通常來說,一個開源項目,要不就是反響平平無法形成生態(tài),導致開發(fā)者熱情逐漸降低、慢慢停掉;或者項目是大熱門,很多個人和公司都在用,但 —— 除了出問題的時候問一下,幾乎沒有人會為開發(fā)者提供財務支持或貢獻代碼修復。
而那些使用免費資源而從不回饋社區(qū)的公司,他們對開源軟件的利用一直是開源項目維護者的痛處。他們使用開源項目達到企業(yè)成本最小化和利潤最大化,然而這些利潤跟開發(fā)者一毛錢關(guān)系沒有,甚至還有公司出了問題趕緊甩鍋給開源作者,比如前段時間 curl 作者吐槽蘋果把他當做免費工具人:
“想象一下,一家市值萬億美元的公司將各種開源組件應用到自己的產(chǎn)品中,每年賺取數(shù)十億美元的利潤。當這家公司的一個用戶向它提供的產(chǎn)品尋求幫助時,公司卻把用戶推給開源項目。這個開源項目是由志愿者運營和維護的,這家公司從未贊助過一分錢。”
這樣的情況已經(jīng)持續(xù)了相當一段時間,不過現(xiàn)在已經(jīng)有人在思考這個問題,并給出了一些權(quán)衡的建議。上周六,谷歌密碼學家和 Go 語言安全負責人 Filippo Valsorda 在個人博客呼吁:開源項目維護者應當和那些使用軟件的公司進行更專業(yè)的交流,以獲得付費支持,使開源更具可持續(xù)性。
Filippo 指出一個問題:目前大多數(shù)開源項目維護者屬于以下兩類之一:志愿者或大公司員工,有時兩者兼而有之,但這兩種模式其實都不健康。一個成功項目的普通維護者其實有資格成為高級軟件工程師,這些人每年可以輕松賺取 15W-300W+ 美元的年薪,但現(xiàn)在他們的開源項目經(jīng)濟來源只有 GitHub Sponsors 和 Patreon(一個募捐網(wǎng)站),這是兩種不嚴肅且不穩(wěn)定的薪資來源。
而被聘為大廠的全職開源員工也并非上策,踏入公司的第一步你就成為了資本的一部分,隨著主管和績效組的“如何證明你的工作和工資相匹配?”開發(fā)者開始背上各種 KPI ,主動或被動地卷,將越來越多的時間花在努力證明自己的工作和價值都非常重要 —— 在這種壓力之下,大部分開發(fā)者將逐漸喪失對開源項目的熱情,這種情況在多個公司和生態(tài)系統(tǒng)中一遍又一遍地上演。
綜合目前的情況,F(xiàn)ilippo 提出了一個新的觀點:既然大公司需要項目供應鏈安全和質(zhì)量達到標準,那么他們就有必要為使用的開源項目付費 —— 公司可以跟開源軟件開發(fā)者建立合同關(guān)系,按照市場價的薪資支付,然后要求開發(fā)者保證項目的質(zhì)量和漏洞問題。反過來,項目的維護者仍然可以自由地持續(xù)關(guān)注項目,優(yōu)先考慮項目的長期健康狀況,并滿足公司對項目的要求。
這種流程和生態(tài)的建立需要一些時間,重點在于如何轉(zhuǎn)變公司的態(tài)度 —— 公司,尤其是資本控制的上市企業(yè),完全沒有為大型產(chǎn)品、項目和服務核心的開源組件付費的熱情,它們只會在開源許可證和法律底線的條件下做利益最大化的事情,而不是“公平交易”。而目前流行的一些許可證,像 Apache 、MIT,都是提供所有內(nèi)容但要求的東西很少,更進一步滿足了企業(yè)白嫖的需求。
目前世界 500 強企業(yè)所使用的許多重要的開源項目都由志愿者在下班后的業(yè)余時間維護,這些企業(yè)甚至連代碼安全性都懶得審查和測試。開源維護者創(chuàng)造了大量價值,但幾乎一無所獲,這種開源文化是無法長久持續(xù)的,是時候做出一些改變了 —— 開源維護者這個角色應當成為一個真正的、有適當報酬的職業(yè),而不是依賴寥寥無幾的捐款的業(yè)余愛好者或者企業(yè)的免費勞動力。
題外話:
- Log4j2 的開發(fā)者和維護者 Ralph Goers 在 GitHub 上僅有 3 名贊助者。
我是 Apache 軟件基金會的成員,也是 Apache Commons、Apache Flume、Apache Logging Services 和 Apache Maven 的 PMC 成員。我創(chuàng)建了 Apache Log4j 2的初始版本,并繼續(xù)將我的大部分精力放在提供支持和改進上,以使 Apache Log4j 2 成為目前從事軟件架構(gòu)師全職工作的 Java 開發(fā)人員的最佳日志記錄框架。我在業(yè)余時間從事 Log4j 和其他開源項目,我通常從事我最感興趣的那些問題。我一直夢想著全職從事開源工作,希望您的支持能實現(xiàn)這一夢想。
本文轉(zhuǎn)自O(shè)SCHINA
本文標題:Log4j2 維護者吐槽沒工資還要挨罵,GO 安全負責人建議開源作者向公司收費
本文地址:https://www.oschina.net/news/173781/open-source-authors-and-companies