首页
/
每日頭條
/
生活
/
openssl版本号如何理解
openssl版本号如何理解
更新时间:2026-07-21 01:24:08

極少有什麼事物在其發展曆程中有确定的轉折點——那種唯一的日子,人們可以明确指出并感歎:“這就是所有的一切都改變了的那天!”

openssl版本号如何理解(OpenSSL的過去現在和未來)1

作者:邁克爾·米莫索,前TechTarget安全頻道主編

譯者:nana

對OpenSSL而言,那一天是2014年4月7日,“心髒滴血”進入安全詞典的日子。心髒滴血是曆史悠久的加密庫中的一個高危漏洞。OpenSSL應用廣泛,成千上萬的商業和自用軟件項目都有應用。心髒滴血的爆出意味着,這個全互聯網範圍的漏洞能洩露足夠的内存供黑客挖掘出從登錄憑證到加密密鑰的任何東西。

對全世界的服務器管理員來說那是非常糟糕的一天,對維護OpenSSL的小團隊而言那同樣是地獄般的一天。就像現實世界中的自然災害,人們總是要到一場地震或是一陣飓風撕裂整座城鎮才會意識到一直以來平和的生活是建立在多麼脆弱的基礎之上。這種情況顯然适用于OpenSSL,因為心髒滴血讓人們注意到:盡管這個加密庫看起來似乎無處不在,它卻幾乎沒有資金支持,而且很可悲地處于維護人手不足狀态。

“兩年前與現在簡直就是天壤之别。在兩年前,除了我們最忠實的用戶社區,我們幾乎不為人所知。沒人知道我們的存在。”史蒂夫·馬奎斯 ,處理OpenSSL商業合同的公司實體“OpenSSL基金會”之共同創始人、總裁兼業務經理如此說道。“OpenSSL到處都在用:成百上千的廠商使用它;每台智能手機使用它。每個人都理所當然地使用它;大多數公司甚至都沒提及其産品中使用了OpenSSL。”

心髒滴血令科技界認識到:全世界的商業交易安全和隐私,以及全球通信的現狀都是不健康的。心髒滴血事發不久,核心基礎設施計劃(CII:Core Infrastructure Initiative)成立,聯合Linux基金會、微軟、臉書、亞馬遜、戴爾、谷歌和其他大型科技公司共同支持各種各樣的開源項目。OpenSSL是第一批受益者,拿到了足夠錢聘用史蒂夫·漢森和安迪·波利亞科夫博士作為其首批專職工作人員。漢森博士是一位廣為人知的OpenSSL堅實維護者,是這個開源項目的無名英雄,他與其他志願者一起處理漏洞報告、代碼審查和修改等事務。

現在,随着穩定的資金注入,漢森和波利亞科夫有了堅實的後盾,可以按路線圖進行OpenSSL代碼庫的清理,為關鍵改動設立規程,并制定這些改動間溝通協調的方式。艱苦的重構正在進行,由于是傳輸層安全(TLS)狀态機關鍵性的徹底檢修,超級重要的項目有可能在今年夏天得見天日——正好趕上老牌安全代碼安全審計機構NCC Group加密服務對當前OpenSSL代碼的審計結果。NCC Group之前剛剛完成對磁盤加密軟件TrueCrpyt的代碼安全審計。

OpenSSL的過去:心髒滴血之前

“心髒滴血事件發生之前的OpenSSL某種程度上就是一團糟;一個兄弟在維護而其他一些人在周邊不斷加進新的東西。”約翰霍普金斯大學教授,密碼學專家馬修·格林說。“年複一年,OpenSSL累積了太多晦澀難懂的東西。代碼質量實在太低,沒人有興趣進行重構。關于OpenSSL的真相就是:它就是一堆低級代碼,插在每台想進行安全通信的機器的關鍵通路上。”

“它緊挨着網絡協議棧,這意味着有大量數據要經過它,而這些數據未必都是友好的。OpenSSL就像當年的UNIX或TCP/IP協議棧;很關鍵,但不成熟,而且80年代以後就沒人再願意看它一眼。”

有了CII的資金支持和廣泛的關注,所有這一切都在改變。裡奇·薩爾茨,現OpenSSL開發團隊成員,阿卡邁公司工程師,一直都是OpenSSL項目的長期貢獻者。他還記得以往那些無奈的時光。由于沒有足夠的資源及時處理補丁的審核事宜,薩爾茨發往OpenSSL進行審核的補丁程序往往一直滞留在寂寞無人理的荒蕪狀态。

年複一年,OpenSSL累積了太多晦澀難懂的東西。代碼質量實在太低,沒人有興趣進行重構。”——馬修·格林

薩爾茨說:“以前,有可能你抛出一個補丁,三個月後才有點反應。現在不同了,有了明确的發展路徑,确定的關鍵度分級,還有了高級别漏洞出現時供人協調各項事務的規程。我們有了可以使項目健康發展并讓社區更多地參與進來的策略與流程。這真是一件非常棒的事。”

肯尼斯·懷特,安全研究員,開發加密審計項目(Open Crypto Audit Project)負責人。他表示,OpenSSL不是唯一一個搖搖欲墜的項目。

“即使對Linux或網絡安全了解甚深的優秀技術人員也沒有領會到整個協議棧的脆弱程度,不止是OpenSSL,而是整個協議棧。”懷特說。随着心髒滴血、貴賓犬(poodle)、FREAK和其他漏洞貫穿一系列技術,懷特希望大家能夠開始嚴肅對待協議棧安全問題。

“你的代碼裡到處都是DNS或libcurl傳輸庫一樣的東西。協議棧中有太多人們覺得是可靠成熟的代碼庫其實依然隻靠一個或兩個人在維護。從全球網絡來看,我們整個基礎設施的根基中有很大一部分是建立在太多層的信任之上。如果你掀開那些遮蔽物,你會發現,真的有太多層的遺留問題需要仔細審查。”

對OpenSSL的關注,暴露出了一些簡單而殘酷的事實,比如糟糕的代碼結構。目前,已有成千上萬行代碼經過代碼整理工具的調整,去除了令人難以忍受的混亂縮進,創立了幹淨整潔統一協調的代碼風格,既便于閱讀也有利避免偶然的錯誤。

懷特說:“有些項目包含有集成關聯鈎子,要是沒遵循結構,你就檢查不出來。這聽起來有點傻,但這正是代碼檢查失敗的原因。它就是個小小的腳注,微不足道的小小片段,但非常危險,因為這些鈎子自動挂上了項目中每一份源代碼文件。”

OpenSSL的現在:春季大掃除

正在進行的OpenSSL大變臉有望将開發團隊拖入複雜而又忙碌的時間。當務之急是TLS狀态機的重寫,這個東西,像大多數OpenSSL代碼庫一樣,一直以來都是個拼湊堆砌起來的貨。“TLS狀态機是個大工程。”薩爾茨說,“其整個機制,我們能說的最親切友好的部分,就是這玩意兒是有機成長的。它開始于安全套接層協議第二版(SSL v2),從那裡成長,然後一發不可收拾。這是我們的主要戰場之一,OpenSSL的很多漏洞都是從這兒來的。”

薩爾茨和格林指出,3月初發現的FREAK漏洞就是由狀态機的脆弱性和複雜性引起的。有些SSL客戶端,包括OpenSSL,含有FREAK(分解RSA出口級密鑰)漏洞。攻擊者能利用該漏洞迫使客戶端降級到易破解的512位弱RSA密鑰,然後利用中間人攻擊威脅加密通信的安全性。

它将會以一種前所未有的協同方式進行。”——肯尼斯·懷特

“OpenSSL和TLS是很複雜的協議。”格林說,“他們必須在适當的時候知道添加進來的是什麼,并拒絕其他東西的進入。這成千上萬行代碼都需要打碎重來,分解整理成可管理的代碼段而不是攪和成意大利面似的一團亂麻。這些年來他們加進了太多意大利面式代碼,還從沒人手握手術刀介入剔除這些毒瘤。現在,總算有人來設計正确的狀态機了。”

同時,代碼重分解涉及到對該庫其他關鍵部分的精細檢查,比如内存管理、提供加密函數接口的EVP庫、OpenSSL輸入輸出抽象層,還有完整的測試工具的構建——這将使很多分析工作能夠以一種自動的方式重複進行。OpenSSL代碼重分解和後續的安全審計還涉及到大量計算的問題。

“它将會以一種前所未有的協同方式進行。”懷特說。“可以絕對肯定的是,這是一段時間内最雄心勃勃的安全項目之一。我們抱負遠大。”

盡管有種種缺陷,OpenSSL還是個可靠的加密庫,用懷特的話說就是“身經百戰”的,而且它的核心庫經過這麼些年幾乎沒怎麼改動過。

“諷刺的是, OpenSSL在加密功能上好得令人驚歎。”格林說,“它令人驚豔,但卻是以淩亂的方式令人驚豔,有些像能奏出協奏曲卻不會收拾自己的房間的音樂神童。加密代碼出奇的好,但是高層的東西邋遢得像是沒中心髒滴血的解析包。”

OpenSSL的未來:審計時代

受核心基礎設施計劃支持的OpenSSL審計正在進行中,第一組結果在今年夏天就将陸續出爐。就像TrueCrypt,OpenSSL開發者們對檢查過程中将會暴露出來的漏洞很是好奇;同樣地,與它的文件加密表親類似,他們雙手合十祈禱OpenSSL裡沒有潛藏的後門。

“我擔心的是漏洞的全部類型。”懷特說,“源代碼審計很有用,但我們并沒有對源代碼進行審計,而是對編譯好的二進制文件進行審計。令我擔心的是那類系統性問題,而不是像打地鼠遊戲那樣打掉一個又冒一個永遠在做重複勞動無用功的事。有這麼多人盯着,再加上密碼學工程師的才幹智慧,他們将會交出有意思的漏洞根本就是必然的。奧卡姆剃刀定律(編者注:這個原理稱為“如無必要,勿增實體”,即“簡單有效原理”)适用于這類事情。漏洞更有可能存在于被遺忘的代碼或深奧晦澀不常用的選項裡,而不是蓄意造成的。”

我們顯然将審計當成了高級質量保證的來源。”——裡奇·薩爾茨

盡管審計會給開發者帶來價值,卻隻是某一時刻的快照,不解決持續性問題。這也是為什麼測試工具的開發和加諸到OpenSSL身上的持續性關注這種東西最讓工程師們興奮激動的原因。

“我們顯然将審計當成了高級質量保證的來源。”薩爾茨說,“對社區和我們而言真正有價值的東西,将是那些相當擅長幹這個的人們努力打破舊事物。我們沒有專職的測試團隊,而我們想要證明這個東西運行良好,想證明如果我給你一個1兆字節的證書,它不會令你失望。”

在OpenSSL持續從核心基礎設施計劃接收資金援助的同時,個人捐款減少到了心髒滴血被揭露前的水平。

“心髒滴血漏洞曝光前的幾年,我們每年能收到2000美元上下的捐款,如今我們又回到了那時的水平。”馬奎斯說,“我們很珍視這些捐款,因為這表現出個人認為OpenSSL是如此重要。也挺有意思的是我們從那些視隐私為生命的部分世界中收獲了多少加密對他們而言是多麼重要的留言。”

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
馬桶清理養護需留意 莫讓其成為疾病之源
馬桶清理養護需留意 莫讓其成為疾病之源
馬桶可以說是人類最親密的家居夥伴之一,人們幾乎每天都要使用,但正因為如此親密的關系,使用稍不留意,它也可能成為疾病之源。清理養護需留意,莫讓馬桶成為疾病之源馬桶圈細菌多要重點清潔調查發現,32%的馬桶上有痢疾杆菌,其中一種名為'宋内'的痢疾杆菌在馬桶圈上存活的時間長達17天;另一份實...
2026-07-21
什麼是政治條件兵?
什麼是政治條件兵?
政治條件兵就是政治條件較高,現實表現良好,本人及親屬無違法犯罪行為,個人形象較好的兵種。比如到北京衛戍區,在中央,軍隊高層領導身邊和重要部門當警衛人員等,對政治條件要求更高。政治條件兵就是政治條件較高,現實表現良好,本人及親屬無違法犯罪行為,個人形象較好的兵種。政治兵在新兵連的訓練和普通士兵一樣,但...
2026-07-21
實用家居清潔技巧:蘸牛奶擦木制家具
實用家居清潔技巧:蘸牛奶擦木制家具
實用家居清潔技巧:蘸牛奶擦木制家具實用家居清潔技巧1、用鹽去地毯上的湯汁有小孩的家庭,地毯上常常滴有湯汁,千萬不能用濕布去擦。應先後用潔淨的幹布或手巾吸幹水分,然後在污漬處撒些食鹽,待鹽面滲入吸收後,用吸塵器将鹽吸走,再用刷子整平地毯即可。2、蘸牛奶擦木制家具取一塊幹淨的抹布在過期不能飲用的牛奶裡浸...
2026-07-21
三伏天用什麼排濕氣寒氣最好?
三伏天用什麼排濕氣寒氣最好?
01伏天去濕氣寒氣的辦法:1、少吃甜、膩的食物。如果你身體有濕氣少吃甜膩食物,因為甜膩容易轉化為濕氣。2、别吃生冷食物。3、别喝酒。4、可以多吃姜去寒濕。5、可以多吃綠豆、西瓜、扁豆來去濕寒氣。三伏天是一年中最熱的時候,這段時間也是冬病夏治的好時候,非常适合排除體内的寒濕,伏天去濕氣寒氣的辦法:1、...
2026-07-21
新媒體運營是做什麼?
新媒體運營是做什麼?
新媒體運營,是通過現代化移動互聯網手段,通過利用各短視頻平台及内容平台進行産品宣傳、推廣、産品營銷的一系列手段。通過策劃品牌相關的優質、高度傳播性的内容和線上活動,向客戶廣泛或者精準推送消息,提高參與度、知名度,從而充分利用粉絲經濟,達到相應營銷目的。不管是創業做個人自媒體還是到企業内就職,新媒體運...
2026-07-21
Copyright 2023-2026 - www.tftnews.com All Rights Reserved