0
如果把 OpenSSL 的 Heartbleed (心臟滴血)漏洞稱為互聯(lián)網(wǎng)安全歷史上最嚴重的漏洞之一,想必不會有太多人反對。
SSL(安全套接層)協(xié)議是使用最為普遍的網(wǎng)站加密技術,而 OpenSSL 則是開源的 SSL 套件,為全球成千上萬的 web 服務器所使用。這個嚴重漏洞出現(xiàn)后,全球三分之二的網(wǎng)站可被攻擊,這種攻擊還是“敞開了門,可以隨意掠奪信息”的那種。
2014 年 4 月 9 日,該漏洞被曝光后, OpenSSL 背后的團隊才被媒體爭相報道,他們的故事逐漸為人所知。2015年,錘子科技羅永浩宣布對 OpenSSL 捐款200萬元,某媒體發(fā)表一篇以 OpenSSL 為主角的《隱形戰(zhàn)友》后, OpenSSL “火”了。隨之而來的,是另一位知名人士對該文章的反對——《到底誰在捍衛(wèi)我們的隱私?OpenSSL的真實故事》。
爭論的角度集中在這幾個方面:
1. OpenSSL 真的有這么英雄主義嗎?
2. OpenSSL 真的有這么窮嗎?之前少有人給他們捐款嗎?
3.真實的 OpenSSL到底是什么樣子?
9月23日, OpenSSL 團隊成員參觀白山云科技公司時,OpenSSL創(chuàng)始人之一,美國國防部前顧問 Steve Marquess(也就是《隱形戰(zhàn)友》中的史蒂夫)、OpenSSL前身SSLeay創(chuàng)建者,OpenSSL創(chuàng)始人之一 Tim Hudson 和白山云科技架構師,OpenSSL代碼貢獻榜排名18 的楊洋接受了包括雷鋒網(wǎng)宅客頻道在內的媒體采訪。
楊洋(左一)、 Tim Hudson(左二)、Steve Marquess(右一)
OpenSSL 的真實故事應該由他們自己來說。
--
Steve 一行人此前從沒有來過中國。
這個星期里,Steve 和 OpenSSL 其他 4 名核心成員還陸續(xù)參觀了阿里巴巴、百度、騰訊、華為、錘子科技等,最后一站他們來到了好隊友楊洋所在的白山云科技。
華為和錘子科技確實是中國兩家對 OpenSSL 捐款最多的公司,Steve 在白山云科技的這場活動中,先對兩家公司表示了感謝。
“我們收到的來自中國的資助要比其他任何一個國家都多。”Steve說。
現(xiàn)在 OpenSSL 日子已經過得好多了,相比三年前只有兩個全職員工,他們現(xiàn)在有個 4 名全職員工,其中兩個全職人員這次也來到了中國。
“‘心臟出血’是慘痛的經歷,但是發(fā)生這件事情也有好處,這件事情顯示了計算技術和互聯(lián)網(wǎng)有多大程度依賴 OpenSSL,很多媒體進行了報道。它的發(fā)生是由于嚴重的安全漏洞,OpenSSL 規(guī)模那么大、復雜程度那么高、影響面那么大,卻沒有足夠的人力保障它的安全,這是個問題。”Steve 這樣表述了“心臟滴血”漏洞發(fā)生的原因。
雖然,在《到底誰在捍衛(wèi)我們的隱私?OpenSSL 的真實故事》中,作者這樣寫道:
“OpenSSL 公布‘心臟出血’漏洞的過程也非常有問題。一般出現(xiàn)嚴重漏洞的流程,是先不對公眾公布,立即通知主流操作系統(tǒng)維護者和相關廠商,讓大家先修改,之后一起發(fā)布安全公告和升級。之所以這樣做,是因為如果操作系統(tǒng)不去打補丁,很多普通用戶知道漏洞也沒辦法修補,反而讓黑客們更容易利用這些漏洞。OpenSSL 不是這么做的,在 Google 告知了他們漏洞之后,OpenSSL 沒有告知任何一家操作系統(tǒng)廠商,反而奇怪的被幾家主要 CDN 廠商知道了,也就是說,在不知道哪個環(huán)節(jié)發(fā)生了泄密。之后開源社區(qū)中開始有關于這個重大 Bug 的傳言,直到這個時候,幾大操作系統(tǒng)仍然沒得到正式通知。又過了3天,OpenSSL 才告知了Red Hat……”
在那三天里,OpenSSL 到底發(fā)生了什么?
Tim 稱:“據(jù)我所知,心臟滴血事件是由兩個團隊互不知情的情況下獨立發(fā)現(xiàn)的。我只對我們所作出的反應負責,對其他公司沒辦法負責。當時這個漏洞是非常嚴重的危險級別,我們所采取的措施也是當時認為合理的措施。整個過程中誰做了什么、誰發(fā)現(xiàn)了什么漏洞,這都是公開的,可以在我們的網(wǎng)站上查得到?!?/p>
出了這么大的事情,Steve說,對于一個人手有限的團隊來講日子確實不好過。一個看上去本來籍籍無名的團隊瞬間火了,Steve 的好朋友,甚至連他的牙醫(yī)都關心地詢問:“最近老在電視上看到你,要不要緊?”
那一段時間,OpenSSL 倍感壓力,收到了很多批評的聲音,他們如履薄冰,擔心未來可能重蹈覆轍,但也收到了一些鼓勵的反饋。讓 Steve 覺得溫暖的是,一些他甚至都沒聽過名字的非洲國家都發(fā)來了鼓勵的郵件,以前團隊不太關注的中國也發(fā)來了“令人鼓舞的信息”。
“除了擴展到有 4 個全職員工的團隊,一些 OpenSSL 的成員盡管有自己本職工作,但是他們的公司會鼓勵他們做一些 OpenSSL 的工作,這些公司以間接的方式給我們提供了支持。我們還收到數(shù)百個中國人以及錘子科技、華為這兩個中國企業(yè)給我們的資助,我們收到中國的資助要比其他任何一個國家都多?!?nbsp;Steve 說。
此后則是 OpenSSL 的復蘇。
這個團隊經歷了重建,從系統(tǒng)上還了之前欠下的技術債。這些技術債是指一些之前沒有進行很好的重構與精減的代碼,后來又不斷加入新代碼和功能,OpenSSL 做了梳理和篩減,盡可能讓內部結構變得不透明,他們有了新代碼庫,第一次重要審計也是在這個期間完成。
此前,還有詬病 OpenSSL 團隊管理混亂的聲音, Steve稱,情況得到了改善,現(xiàn)在OpenSSL 有14位 “貢獻者”和10位管委會成員,其中有 8 名是身兼兩職。
OpenSSL 團隊成員此次來到中國,是楊洋促成的。
讓人難以想象的是,和一個人在線上聊了15年,但從來沒有線下見過面是一種怎樣的體驗。在OpenSSL 團隊中,這是十分常見的現(xiàn)象。更讓人難以想象的是,OpenSSL 整個團隊總共在線下見過三次面。
第一次見面發(fā)生在 2014 年德國的一次會議后,那是一種奇妙的體驗,十幾個OpenSSL 團隊的成員走進一間會議室,盡管有些人視頻聊天過,但還是見面不相識。
第三次碰面則是這次在中國:屬于幾個老友的相聚。
楊洋在兩三年前與 OpenSSL 團隊相識,那時他還在阿里巴巴,與 OpenSSL 的接觸屬于項目對接,當時他還沒有兼職為 OpenSSL 貢獻代碼。去年底,楊洋加入白山云科技,由于公司允許他異地遠程辦公,并支持他同時為 OpenSSL 貢獻代碼,目前這個在家鄉(xiāng)沈陽工作的小伙子從上午 10 點到下午 6 點為白山云科技工作,從晚上 8 點到凌晨三點為 OpenSSL 處理相關事宜及貢獻開源代碼。目前,根據(jù)代碼量和代碼質量排行的 OpenSSL 貢獻榜上,楊洋排名全球18位,中國區(qū)排名第一位。
這家創(chuàng)業(yè)才兩年的白山云科技得知楊洋和 OpenSSL 的淵源后,十分支持他的工作,并將本來是楊洋與OpenSSL 的一次私人聚會變成了一次 OpenSSL 的中國行,全力協(xié)助 OpenSSL 團隊的成員與中國著名互聯(lián)網(wǎng)公司之間的交流溝通,由于這個團隊沒人懂中文,楊洋還要全程陪同翻譯。
此前,國外也有一些公司支持自己的員工為 OpenSSL 貢獻時間和代碼,但在中國,像楊洋這樣的兼職 OpenSSL 成員并不多,到白山云科技現(xiàn)場支持的還有同為 OpenSSL 安全研究員的 360 CERT&Gear Team 的石磊。
事實上,誠如《到底誰在捍衛(wèi)我們的隱私?OpenSSL的真實故事》這篇文章所言,并非沒有人和公司捐助 OpenSSL ,捐助 OpenSSL 的方式有幾種:個人或者公司直接捐款給 OpenSSL 的基金會,通過 Linux 基金會捐款給OpenSSL ,公司或個人貢獻開源代碼或者員工時間給 OpenSSL ……
不過情況也并非批評者說得那么樂觀。 Steve 告訴雷鋒網(wǎng),除了自家基金會,只有 Linux 的基金會目前對 OpenSSL 捐款,捐款的數(shù)額沒有傳說中那么大,只負擔這三年來新增的兩位全職人員的全年工資,OpenSSL 尚未得到其他基金會的關注,不過也有一些其他企業(yè)和個人的捐款。
“我們主要做一些咨詢的合作,比如幫英特爾這樣的公司。在過去 5 年里面,我估計 1/4 的營收是從商業(yè)性的合作中獲得的。”Steve 說。
Tim 說:“不管是公司還是個人,都有捐獻代碼,我們會進行研究、評估。如果覺得可以的話,我們會加入到軟件鳴謝名單里。也有一些貢獻的形式,有的是代碼,有的是文檔,有的是幫我們找錯誤等,不管是什么,我們都是很歡迎的?!?/span>
三年前,OpenSSL 確實窮到只有“一點點收入”。
Steve稱,OpenSSL 團隊有一個極具才華但是一貧如洗的程序員 Stephen Henson,Stephen窮到什么程度?Steve 說,窮到我知道的時候都震驚了。
Steve 和 Stephen 是相識 15 年卻依然沒有見過面的老友,因為 Stephen 性格獨特,是一個非常害羞的人,從來沒坐過飛機,甚至連護照都沒有。但是, Stephen 卻是Steve 認為在工作上最靠得住的人,他從來沒有在任何一個項目快結束時遲交過代碼。
也因此,Steve 在知道 Stephen 的困境后,Steve 全權幫助 Stephen 承接一些商業(yè)項目支撐生活。
此前提到,Steve 是前美國國防部的顧問,擁有良好的聲譽,早期 Stephen 只是一個不出名的程序員,為了能讓 Stephen 順利獲得這些項目,Steve 只能以自己的名義簽下這些項目,讓 Stephen 全程完成。有時,Stephen 一整年的收入都從Steve 這里獲得。在兩人沒有簽訂任何協(xié)議下,一個以自己的信譽作擔保,一個完全信任對方幫助自己處理財務上的事情,這種默契維持了很多年。
Steve 讀到《隱形戰(zhàn)友》這篇文章的翻譯版時,已經是文章發(fā)表的半年后了。對于文章所呈現(xiàn)出的“英雄主義”色彩,Steve 稱,確實夸張了。
有意思的是,當時 Steve 還把文章發(fā)給了楊洋,兩人一起討論文章中言過其實的一些細節(jié)。
不可否認的是,這篇文章發(fā)布后,OpenSSL 收到了一些不錯的反饋,一些來自中國的郵件和捐款找了上來。
雷鋒網(wǎng)編輯沒有問 Steve 等人成立 OpenSSL 的動機。因為他在演講中已經提到,如果要加入 OpenSSL,絕不是因為錢,如果要堅持下來,一定要有過硬的 C 語言編程技能、恒心以及興趣。
“開源的不光是替自己寫代碼,挑戰(zhàn)比較多。我們希望代碼有商業(yè)上的意義,有些公司愿意雇傭我們的員工。但有些人如果只著眼于利潤,可能沒有耐心投入正常的時間和資金來做開源。這也是為什么有的開發(fā)人員和程序員離開了我們團隊。以我為例,我可以把 OpenSSL 當作興趣來做,我把房子的貸款還清了,女兒畢業(yè)了,不欠銀行什么錢,不用擔心自己餓肚子,因此花了大量時間在 OpenSSL 的工作上。我甚至通過做一些 OpenSSL 相關的咨詢賺到了錢,現(xiàn)在有很多公司都會涉及到 OpenSSL,所以需要這方面的咨詢。”Steve 說。
楊洋則稱,自己做這件事情“just for fun”,就跟大家喜歡聽音樂、看電影一樣。
關于 OpenSSL 和 Steve ,事實上也有一些傳聞和誤解。
Steve 稱,他的工作是一個自由職業(yè)咨詢顧問,所做的事情就是服務各行各業(yè)的客戶,從一個項目到另外一個項目,做了 40 多年。此前,還有傳言稱他要接觸軍火交易。事實上,他本人并沒有進行過軍火交易,比如槍、導彈。之所以有這種傳聞,是因為此前美國政府有一個規(guī)定,密碼或者加密系統(tǒng)被視為武器,所以與軍方有過一次合作項目的 Steve 必須申請武器方面的從業(yè)執(zhí)照。
Steve 加入OpenSSL 時,這還是一個默默無聞的組織,他澄清,自己并沒有那么強烈的英雄主義情結,這個默默無聞的組織起初也并未讓他獲得所謂“英雄”的感覺。但在“心臟滴血”事件后,加入 OpenSSL 才可能會有這個效應。
OpenSSL 可能只有一些小小的心愿。
“項目背后的動機是什么?它是一個開源的項目,我們也很樂意看到 OpenSSL 應用廣泛,也希望它的應用繼續(xù)擴大下去,能夠造福所有的用戶。我們不確定的是哪一些特性是為人所樂見的,有的公司有特定的需求,但如果它們不告訴我們,我們沒辦法拿到這方面的信息。有時我們會做一些調整, 最后被證明對 OpenSSL 社區(qū)是有益的。此外,我們會不斷對補丁進行維護,隨著版本發(fā)布進行更新,讓用戶受益。因此,大家覺得有必要出于自己目的來修改 OpenSSL 的話,也許我們也能夠聽到大家的聲音,即使微小調整也許會適應龐大的需求?!盨teve 說。
雷峰網(wǎng)原創(chuàng)文章,未經授權禁止轉載。詳情見轉載須知。