陳振偉 李瑞霞
摘要:SSH協(xié)議為提供安全可靠的遠(yuǎn)程登錄訪問(wèn)網(wǎng)絡(luò)提供的可靠的方式,目前常用于遠(yuǎn)程訪問(wèn)等場(chǎng)合。HTTPS是安全的HTTP,主要用于服務(wù)器和瀏覽器之間訪問(wèn)Web。因此,HTTP/HTTPS信息流是目前網(wǎng)絡(luò)上最常見的信息流。SSH信息流由于常用于遠(yuǎn)程網(wǎng)絡(luò)訪問(wèn)而常常受到攻擊者的分析和利用;HTTPS信息流作為網(wǎng)絡(luò)上較安全的主流WEB信息流而常常被攻擊者忽略?;诖吮尘?,本文設(shè)計(jì)一種方法將SSH信息流偽裝成HTTPS信息流,通過(guò)對(duì)SSH信息封裝加密,偽裝成HTTPS信息在網(wǎng)絡(luò)上傳輸,使其安全性和隱蔽性得到了大大的提升。
關(guān)鍵詞:SSH信息流;偽裝;加密
中圖分類號(hào):TP309 ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)34-0050-02
1引言
網(wǎng)絡(luò)的遠(yuǎn)程管理和維護(hù),目前最廣泛使用的方式是通過(guò)Telnet等遠(yuǎn)程連接訪問(wèn)的方式進(jìn)行,但這些方式存在著許多安全隱患,由于數(shù)據(jù)采用明文或簡(jiǎn)單的加密方式,極易被別有用心者截獲,容易受到外來(lái)攻擊,這些數(shù)據(jù)一旦被第三方獲取,將會(huì)造成信息的泄露,特別是訪問(wèn)的賬戶和口令等。在這種情況下,SSH 協(xié)議被提出,它可以對(duì)傳輸通道中的數(shù)據(jù)加密處理,可以有效地防止信息的泄露,避免這類攻擊,因此SSH 協(xié)議具有比較好的可靠性和安全性,是目前較可靠,專為遠(yuǎn)程登錄會(huì)話的安全協(xié)議。SSH協(xié)議提供安全性的協(xié)議密鑰建立與服務(wù)器認(rèn)證和用戶認(rèn)證,使得SSH在不可靠的網(wǎng)絡(luò)上對(duì)遠(yuǎn)程登錄等網(wǎng)絡(luò)服務(wù)領(lǐng)域提供了安全可靠的保障,因此,當(dāng)前SSH遠(yuǎn)程訪問(wèn)方式成為主流遠(yuǎn)程訪問(wèn)方式。
2技術(shù)基礎(chǔ)
HTTPS是以安全為目標(biāo)的 HTTP 通道,即安全的HTTP協(xié)議。它在HTTP的基礎(chǔ)上通過(guò)加入加密和身份認(rèn)證兩種機(jī)制,從而保證傳輸過(guò)程的安全性。加入方式為HTTPS 在HTTP 的基礎(chǔ)下加入SSL 層,提供身份驗(yàn)證與加密通信,因此HTTPS 協(xié)議是由 SSL+HTTP 協(xié)議構(gòu)建的可進(jìn)行加密傳輸、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議,要比 HTTP 協(xié)議安全,可防止數(shù)據(jù)在傳輸過(guò)程中不被竊取、改變,確保數(shù)據(jù)的完整性,確保信息在正確的客戶機(jī)和服務(wù)器傳遞。
443端口為正常的Web訪問(wèn)端口,主要應(yīng)用于HTTPS協(xié)議提供的服務(wù),HTTPS協(xié)議提供了加密服務(wù)并通過(guò)安全端口傳輸。它被廣泛應(yīng)用于Web上安全敏感的通信等方面,如各類電子商務(wù)網(wǎng)站、政務(wù)網(wǎng)、銀行網(wǎng)絡(luò)等,HTTPS協(xié)議是現(xiàn)行架構(gòu)下WEB訪問(wèn)最安全的解決方案之一,目前大多WEB訪問(wèn)也采用HTTPS方式訪問(wèn)。即別有用心者通過(guò)數(shù)據(jù)捕獲工具捕獲數(shù)據(jù),其獲取到的是加密數(shù)據(jù),在不知道解密密鑰的情況下很難對(duì)數(shù)據(jù)進(jìn)行解密,從而保證了數(shù)據(jù)通信的安全性。
22端口是正常ssh協(xié)議訪問(wèn)端口,SSH協(xié)議是一種安全協(xié)議,具有通用性和可擴(kuò)展性,作為一種通用且可擴(kuò)展的安全協(xié)議,加密網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù),一定程度上降低了竊聽等部分網(wǎng)絡(luò)攻擊的成功概率與危害。然而,惡意用戶的攻擊手段越來(lái)越復(fù)雜,惡意用戶可以利用SSH對(duì)遠(yuǎn)程的服務(wù)器進(jìn)行攻擊[1]。SSH作為當(dāng)前主流遠(yuǎn)程訪問(wèn)方式,信息流變得更易被不法分子進(jìn)行捕獲分析和利用,從而給所保護(hù)的網(wǎng)絡(luò)造成安全隱患。
Stunnel是一個(gè)跨平臺(tái)的開源項(xiàng)目,提供了兩個(gè)主要功能。
(1)提供基于OpenSSL的安全加密連接;特別是本身無(wú)法進(jìn)行TLS或SSL通信的客戶端及服務(wù)器。
(2)Stunnel提供SSL連接解除了防火墻和代理的限制,直接和遠(yuǎn)端服務(wù)器進(jìn)行網(wǎng)絡(luò)服務(wù)通信。因?yàn)閷?duì)于絕大多數(shù)LAN或者WLAN正常情況下都會(huì)開放443端口用于HTTPS連接,正是利用這一點(diǎn),Stunnel和遠(yuǎn)程端口443創(chuàng)建一個(gè)SSL連接,防火墻和代理會(huì)誤以為該連接為正常的HTTPS連接而允許通過(guò)。
3 SSH偽裝方法及實(shí)現(xiàn)
3.1 實(shí)現(xiàn)原理
針對(duì)SSH和HTTPS協(xié)議的特點(diǎn),結(jié)合Stunnel的特點(diǎn),本文設(shè)計(jì)了利用Stunnel對(duì)SSH信息流進(jìn)行偽裝加密的方法?;緦?shí)現(xiàn)原理如圖1所示。
由于SSH數(shù)據(jù)流常使用端口22傳遞,而HTTPS數(shù)據(jù)流常使用端口443傳遞,因此本文利用Stunnel平臺(tái)對(duì)SSH協(xié)議信息進(jìn)行二次封裝,在SSH協(xié)議的外層再封裝一層SSL/TLS層,使其偽裝成正常的Web訪問(wèn)HTTPS信息。偽裝后的SSH數(shù)據(jù)包通過(guò)Stunnel隧道從客戶端一端的443端口發(fā)送至發(fā)送至服務(wù)端一端的443監(jiān)聽端口。在這個(gè)過(guò)程中,SSH信息流通過(guò)二次封裝加密后,從原來(lái)的22端口傳輸轉(zhuǎn)變成HTTPS流的443端口傳輸。其安全性和隱蔽性得到了大大地提升,也讓不法人員對(duì)于SSH信息的劫持失去興趣,從而提高SSH信息的隱蔽性和安全性。
3.2 實(shí)現(xiàn)方案
實(shí)驗(yàn)環(huán)境說(shuō)明:(1)首先建立兩端:服務(wù)器和客戶端。
服務(wù)端系統(tǒng):debian7.4 客戶端系統(tǒng):ubuntu14.04
Ip地址:10.104.118.166Ip地址:10.104.10.212
通過(guò)圖2的流程圖顯示,實(shí)現(xiàn)方案為典型的C/S方式,在服務(wù)器端按照Stunnel環(huán)境,創(chuàng)建SSL證書,生成一對(duì)密鑰,即公鑰和私鑰,公鑰附加在證書中,然后導(dǎo)出,然后封裝SSH協(xié)議,啟動(dòng)Stunnel服務(wù)??蛻舳说呐渲孟鄳?yīng)的簡(jiǎn)單些,減少了證書和密鑰的生成環(huán)節(jié),只需要把服務(wù)器端的證書通過(guò)winscp復(fù)制過(guò)來(lái),再配置一下配置文件即完成環(huán)境的搭建。
(1)信息偽裝前:在客戶端使用ssh root@10.104.10.212連接服務(wù)器,使用tcpdump抓包,結(jié)果如圖3中的左圖所示,通過(guò)抓包工具可以清晰準(zhǔn)確的識(shí)別出SSH數(shù)據(jù)包。
(2)信息偽裝后:在客戶端使用Sshroot@localhost –v –p 443命令連接服務(wù)端,使用tcpdump抓包,結(jié)果如圖3中的右圖所示,由圖中抓包效果來(lái)看,可以直觀地看到是HTTPS信息流。其實(shí)這是SSH信息流被偽裝成了HTTPS信息流。
4總結(jié)
本文設(shè)計(jì)一種方法將SSH信息流偽裝成HTTPS信息流,通過(guò)對(duì)SSH信息封裝加密,偽裝成HTTPS信息在網(wǎng)絡(luò)上傳輸,使得SSH被截獲分析的概率大大降低,從而保護(hù)SSH信息流的安全。利用Stunnel平臺(tái)對(duì)SSH信息流進(jìn)行偽裝實(shí)現(xiàn)驗(yàn)證,通過(guò)測(cè)試可以很好地實(shí)現(xiàn)對(duì)SSH流的偽裝,把SSH信息流變成表面上的HTTPS信息流,讓對(duì)SSH信息流有不良用心者失去破解的愿望,從而大大提升了對(duì)SSH信息流的安全保護(hù)。
參考文獻(xiàn):
[1] 張亞奇.可信SSH協(xié)議的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北京交通大學(xué),2017.
[2] 范博,楊潤(rùn)塏,黎琳.基于SSH的可信信道建立方法研究[J].信息網(wǎng)絡(luò)安全,2018(1):45-51.
[3] 宋陽(yáng)秋.SSH緩沖區(qū)溢出漏洞與安全防范探討[J].計(jì)算機(jī)科學(xué),2008,35(4):85-87,90.
[4] 王國(guó)新,平西建,張濤,等.空域LSB信息偽裝及其隱寫分析[J].計(jì)算機(jī)工程,2008,34(1):173-174,189.
[5] 周琳娜,呂欣一.基于GAN圖像生成的信息隱藏技術(shù)綜述[J].信息安全研究,2019,5(9):771-777.
[6] 劉本倉(cāng),范海峰.基于Stunnel的數(shù)據(jù)加密遂道研究[J].福建電腦,2006,22(10):117,134.
【通聯(lián)編輯:光文玲】