999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

openssl硬件引擎加解密漏洞

2011-03-14 06:44:40趙春平凌志祥
關(guān)鍵詞:引擎

趙春平 凌志祥

江南計算技術(shù)研究所 江蘇 214083

0 引言

openssl是一個開源的SSL協(xié)議實(shí)現(xiàn),它采用C語言作為開發(fā)語言,因此 openssl具有優(yōu)秀的跨平臺性能,并被廣泛使用。openssl支持Linux、Windows、BSD、Mac、VMS等平臺,這使得openssl具有廣泛的適用性。openssl目前最新的版本是1.0.0d。 有很多系統(tǒng)都是用openssl來構(gòu)建安全的通信,比如apache的httpd中的ssl模塊、openldap等優(yōu)秀的開源軟件。

openssl主要由三部分組成:crypto庫、ssl庫以及openssl命令。其中crypto庫中實(shí)現(xiàn)了大量的對稱算法、非對稱算法和摘要算法,并且這些算法都支持硬件引擎。

1 openssl硬件引擎

openssl是一個自包含的軟件,它不依賴于第三方庫,它實(shí)現(xiàn)了各種軟算法。為了支持硬件以提高性能,openssl通過引擎機(jī)制來支持硬件算法。當(dāng)用戶調(diào)用上層的對稱加解密函數(shù)時,如何沒有注冊對應(yīng)算法的引擎,openssl使用默認(rèn)的軟算法;當(dāng)用戶注冊了某個算法的硬件引擎時,openssl將會調(diào)用該硬件引擎的算法。下面簡要介紹對稱計算中,openssl如何使用硬件引擎。

openssl的對稱計算主要crypto/evp/evp_enc.c中實(shí)現(xiàn),調(diào)用接口和主要數(shù)據(jù)結(jié)構(gòu)在evp.h中定義。對稱計算主要有兩個數(shù)據(jù)結(jié)構(gòu),如下所示:

對稱計算調(diào)用接口主要有:

(1)對稱計算初始化

(2)進(jìn)行對稱計算

(3)獲取余下的對稱計算結(jié)果

從接口可以看出,用戶調(diào)用 openssl進(jìn)行對稱計算時,主要使用的數(shù)據(jù)結(jié)構(gòu)為 EVP_CIPHER_CTX,該結(jié)構(gòu)主要包括了對稱算法信息以及硬件引擎。如果無硬件引擎,將使用軟算法。openssl進(jìn)行對稱計算時,使用的是 EVP_CIPHER結(jié)構(gòu)中的 do_cipher函數(shù)指針。硬件引擎的加載是在EVP_CipherInit_ex中完成的。在EVP_CipherInit_ex的實(shí)現(xiàn)中,如果指定了對稱計算引擎,EVP_CIPHER_CTX中的cipher將指向硬件引擎所實(shí)現(xiàn)的 EVP_CIPHER,后續(xù)的update操作和final操作都將使用硬件引擎提供的函數(shù)。

do_cipher函數(shù)對數(shù)據(jù)進(jìn)行對稱計算,其參數(shù)主要有:輸入緩沖區(qū)、輸出緩沖區(qū)以及輸入長度。輸入緩沖區(qū)和輸出緩沖區(qū)可以是不同的內(nèi)存地址。該函數(shù)返回非0時表示成果,返回0表示對稱計算失敗。不過對于軟算法,基本上不可能出現(xiàn)計算失敗的情況,而如果用硬件來做對稱計算,由于硬件以及硬件接口的原因,則有可能出現(xiàn)對稱計算失敗。

2 openssl硬件引擎加解密漏洞

在 openssl的各個 SSL協(xié)議版本實(shí)現(xiàn)中(包括當(dāng)前的1.0.0d),無論在ssl握手階段還是數(shù)據(jù)發(fā)送和接收階段,對于數(shù)據(jù)的加解密運(yùn)算都會調(diào)用函數(shù)EVP_Cipher進(jìn)行運(yùn)算(分別對應(yīng)文件d1_enc.c、s2_enc.c、s3_enc.c和t1_enc.c)。s3_enc.c中調(diào)用方式如下:

該函數(shù)將對稱計算直接調(diào)用了do_cipher。

在openssl運(yùn)行時,該函數(shù)的輸入緩沖區(qū)rec->data與輸出緩沖區(qū) rec->input指向相同的內(nèi)存地址,并且不判斷其返回值,由此會帶來安全問題。

特定情況下,openssl采用硬件引擎進(jìn)行ssl握手和通信時,當(dāng)客戶端和服務(wù)端因?yàn)槟撤N硬件原因?qū)е录咏饷苁r,由于它沒有檢查EVP_Cipher函數(shù)的返回值(硬件引擎加解密函數(shù)會有返回值,但上層并不判斷),數(shù)據(jù)的傳輸將變成明文通信。即使僅僅因?yàn)橐环接布驅(qū)е录用苁。?dāng)前發(fā)出的數(shù)據(jù)也將是明文。SSL通信一旦變成明文通信,用戶將很難察覺。

此漏洞雖然被利用的概率較低,但一旦出現(xiàn)上面描述的特定情況,將會帶來巨大的安全問題。

修補(bǔ)該漏洞很簡單,僅僅判斷返回值,如果出錯立即終止SSL連接即可。

3 漏洞的驗(yàn)證

作者在兩臺 linux操作系統(tǒng)上對該漏洞進(jìn)行了驗(yàn)證,為了便于抓包,其中一臺裝在虛擬機(jī)上。硬件引擎替換了RC4算法,并進(jìn)行了加解密故障模擬,引擎名稱為 TestEngine,openssl版本為1.0.0a。

在服務(wù)端運(yùn)行命令:

./openssl s_server -CAfile demoCA/cacert.pem -ssl3 -cipher RC4-SHA -cert cert.pem -key key.pem -engine TestEngine

在客戶端運(yùn)行命令:

./openssl s_client -ssl3 -cipher RC4-SHA -host 192.168. 1.24 -cipher RC4-SHA -engine TestEngine

然后通過wireshark進(jìn)行抓包,服務(wù)端中的Hello消息如圖1所示。

圖1 服務(wù)端中的Hello消息

服務(wù)Hello消息表明加密使用RC4算法。

發(fā)送的應(yīng)用數(shù)據(jù)如2所示。

圖2 發(fā)送的應(yīng)用數(shù)據(jù)

圖2中,傳輸?shù)臄?shù)據(jù)是明文。不僅僅傳輸?shù)臄?shù)據(jù)是明文,其他的握手?jǐn)?shù)據(jù)也是明文。

[1] rfc2246,The TLS Protocol Version 1.0.2009.

[2] WDKDocs_12112009.chm, windows wdk.2009.

猜你喜歡
引擎
以學(xué)促干 挺膺擔(dān)當(dāng) 激活砥礪前行的紅色引擎
江陰市“三個創(chuàng)新”打造危化品安全監(jiān)管新引擎
新海珠,新引擎,新活力!
消費(fèi)繼續(xù)發(fā)揮經(jīng)濟(jì)增長第一引擎作用
三生 三大引擎齊發(fā)力
藍(lán)谷: “涉藍(lán)”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
休閑垂釣 傳統(tǒng)漁業(yè)新引擎
信息化,“盛京”加速的新引擎
無形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
基于Cocos2d引擎的PuzzleGame開發(fā)
主站蜘蛛池模板: 国产丝袜啪啪| 五月婷婷丁香色| 1024你懂的国产精品| 国产美女丝袜高潮| 无码免费视频| www中文字幕在线观看| 国产尤物视频在线| 二级特黄绝大片免费视频大片| 国产第一色| 国产美女91呻吟求| 亚洲中文无码av永久伊人| a级毛片免费看| 亚洲一区二区三区中文字幕5566| 日本黄色a视频| 欧美一级色视频| 五月天久久综合国产一区二区| 天天摸天天操免费播放小视频| 国产微拍精品| hezyo加勒比一区二区三区| 国产手机在线小视频免费观看| 免费无码又爽又黄又刺激网站| 色综合天天操| 成人欧美日韩| 亚洲第一黄片大全| 亚洲AV无码乱码在线观看代蜜桃| 2021国产精品自拍| 秋霞午夜国产精品成人片| 欧美亚洲一区二区三区导航| 久久精品人人做人人爽电影蜜月 | 国产h视频在线观看视频| 国产精品亚洲αv天堂无码| 欧美成人手机在线观看网址| 国产91高清视频| 韩日无码在线不卡| 国产aⅴ无码专区亚洲av综合网| 97综合久久| 中国精品久久| 欧美成人综合在线| 国产一级二级三级毛片| 婷婷午夜影院| 色综合网址| 美女黄网十八禁免费看| 青青青视频91在线 | 无码国产偷倩在线播放老年人| 中文字幕1区2区| 亚洲久悠悠色悠在线播放| 色135综合网| 一级毛片免费观看久| 精品国产免费人成在线观看| 狠狠色综合网| 97国产精品视频自在拍| 成人韩免费网站| 日韩欧美中文字幕在线韩免费 | 91福利免费视频| 国内黄色精品| 亚洲人成在线精品| 欧美一区中文字幕| 国产女人爽到高潮的免费视频| 九九热视频在线免费观看| 国产AV无码专区亚洲精品网站| 亚洲天堂成人在线观看| 国产va欧美va在线观看| 久久77777| 中日韩欧亚无码视频| 国产精品私拍在线爆乳| 亚洲欧美另类日本| 男人天堂亚洲天堂| 91成人在线免费观看| 中文字幕欧美日韩高清| 国产午夜无码专区喷水| 综合网久久| 91成人在线免费观看| 亚洲欧美国产视频| …亚洲 欧洲 另类 春色| 91福利在线看| 欧美影院久久| 操美女免费网站| 亚洲人成网站日本片| 亚洲91在线精品| 99伊人精品| 色成人综合| 无码区日韩专区免费系列 |