《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于樹(shù)莓派的隱蔽式滲透測(cè)試方法
基于樹(shù)莓派的隱蔽式滲透測(cè)試方法
2016年電子技術(shù)應(yīng)用第6期
陶曉玲1,2,伍 欣2,亢蕊楠2
1.桂林電子科技大學(xué) 廣西高校云計(jì)算與復(fù)雜系統(tǒng)重點(diǎn)實(shí)驗(yàn)室,廣西 桂林541004; 2.桂林電子科技大學(xué) 信息與通信學(xué)院,廣西 桂林541004
摘要: 隨著APT攻擊的逐年增長(zhǎng),常規(guī)的滲透測(cè)試方法已經(jīng)無(wú)法滿(mǎn)足當(dāng)前環(huán)境下對(duì)網(wǎng)絡(luò)安全檢測(cè)多元化的需求。由此,針對(duì)隱蔽式滲透方法進(jìn)行研究,以常被忽視的物理安全漏洞為出發(fā)點(diǎn),提出一種以樹(shù)莓派作為間諜機(jī)的植入式PT滲透方法。該方法利用隧道技術(shù)與偽裝技術(shù),將控制流偽裝成HTTPS流,實(shí)現(xiàn)樹(shù)莓派與C&C服務(wù)器之間的隱蔽通信;同時(shí),使用Tor網(wǎng)絡(luò),實(shí)現(xiàn)滲透人員的匿名控制,最終達(dá)到隱蔽的效果。最后,通過(guò)滲透測(cè)試模擬實(shí)驗(yàn),證明了該方法的隱蔽性,說(shuō)明了此類(lèi)攻擊可能導(dǎo)致的潛在威脅,為安全人員對(duì)APT/PT攻擊的防御與檢測(cè)提供參考。
中圖分類(lèi)號(hào): TP315
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.06.026
中文引用格式: 陶曉玲,伍欣,亢蕊楠. 基于樹(shù)莓派的隱蔽式滲透測(cè)試方法[J].電子技術(shù)應(yīng)用,2016,42(6):94-97.
英文引用格式: Tao Xiaoling,Wu Xin,Kang Ruinan. A raspberry pi based evasive penetration test approach[J].Application of Electronic Technique,2016,42(6):94-97.
A raspberry pi based evasive penetration test approach
Tao Xiaoling1,2,Wu Xin2,Kang Ruinan2
1.Guangxi Colleges and Universities Key Laboratory of Cloud Computing and Complex Systems, Guilin University of Electronic Technology,Guilin 541004,China; 2.School of Information and Communication,Guilin University of Electronic Technology,Guilin 541004,China
Abstract: With the increase of APT attacks year by year, conventional penetration test approaches cannot meet the requirements of the diverse network security detections in current network environment. In this paper, evasive penetration test methods are investigated from the physically security vulnerabilities. A PT penetration test approach that seeding the raspberry pi as a spy is proposed as well. The approach disguises the control flows as the HTTPS flows using the tunnel technologies and camouflage techniques, which enable secure communication between raspberry pi and C&C server. Meanwhile, to achieve the evasive effects eventually, the Tor network is used to realize the anonymity for penetration testers. Finally, the experiment results show the evasive of the approach and clarify the threats that such attack can cause. The proposed approach provides reference for the security for officer to defend and detect the APT/PT attack.
Key words : penetration test;raspberry pi;evasive;persistent threat;tunnel;Tor network

0 引言

    自2010年Google報(bào)道“極光行動(dòng)”之后[1],APT(Advanced Persistent Threat)攻擊便成為安全界熱議的話(huà)題。特別的針對(duì)性、高度的復(fù)雜性以及極強(qiáng)的隱蔽性是APT攻擊的主要特點(diǎn)[2],從暗鼠行動(dòng)的魚(yú)叉式郵件釣魚(yú)攻擊,到夜龍行動(dòng)的多攻擊向量組合攻擊,再到震網(wǎng)病毒的多0day漏洞利用攻擊可見(jiàn)一斑。APT攻擊有愈演愈烈的趨勢(shì),由于其隱蔽性的特點(diǎn),導(dǎo)致其可在目標(biāo)環(huán)境進(jìn)行長(zhǎng)期的潛伏而難以被發(fā)現(xiàn),對(duì)信息安全造成了持續(xù)性的巨大危害,同時(shí),這也是當(dāng)前安全防護(hù)與檢測(cè)的技術(shù)難點(diǎn)[3]。

    PT(Persistent Threat)攻擊是APT攻擊的組成部分,相對(duì)于APT攻擊,其缺少?gòu)?fù)雜強(qiáng)大的針對(duì)性攻擊載荷,但其擁有隱蔽的通信手段,可通過(guò)偽裝、加密、混淆等技術(shù)實(shí)現(xiàn)攻擊代碼的隱藏與網(wǎng)絡(luò)后門(mén)的建立,能夠長(zhǎng)期對(duì)目標(biāo)環(huán)境進(jìn)行信息竊取與主機(jī)操控等活動(dòng)[4]。例如Rootkit、后門(mén)程序以及一些僵尸網(wǎng)絡(luò)等攻擊屬于PT攻擊的范疇,而SQL注入、XSS、DDos等攻擊不屬于這一范疇。目前,針對(duì)APT/PT攻擊的滲透測(cè)試方法研究相對(duì)較少,由此本文針對(duì)其隱蔽性的特點(diǎn)進(jìn)行研究,以滲透測(cè)試的形式進(jìn)行模擬實(shí)驗(yàn),為幫助安全人員了解攻擊者的意圖、看到系統(tǒng)的潛在威脅提供信息支持。

1 滲透測(cè)試模型

    本文的滲透測(cè)試模型如圖1所示,模型主要由樹(shù)莓派、C&C服務(wù)器和Tor網(wǎng)絡(luò)三部分組成。其中,樹(shù)莓派是一款基于Linux系統(tǒng)的卡片式電腦,雖然只有信用卡的大小,卻具有電腦的所有基本功能。由于其具有極高的性?xún)r(jià)比以及很好的兼容性與可擴(kuò)展性,使得它成為物理后門(mén)植入載體的首選。滲透測(cè)試過(guò)程中,為其寫(xiě)入的是當(dāng)前最為流行的Kali Linux樹(shù)莓派定制版系統(tǒng),其中集成了許多必要的滲透工具,為進(jìn)行滲透測(cè)試提供幫助[5]。C&C服務(wù)器使用具有公網(wǎng)IP的云服務(wù)器進(jìn)行模擬,并運(yùn)行Ubuntu 14.04 Server實(shí)例。Tor被安裝在一臺(tái)Ubuntu 14.04主機(jī)上,供滲透測(cè)試使用。

tx1-t1.gif

    滲透測(cè)試工作流程如下:

    (1)以一臺(tái)有root權(quán)限的實(shí)例作為C&C服務(wù)器;(2)配置樹(shù)莓派,并將其植入目標(biāo)環(huán)境;(3)樹(shù)莓派上電后,穿過(guò)防火墻限制,自動(dòng)與C&C服務(wù)器建立起持久的隱蔽隧道;(4)滲透人員與Tor網(wǎng)絡(luò)建立連接而獲得匿名;(5)滲透人員通過(guò)Tor網(wǎng)絡(luò)登陸到C&C服務(wù)器;(6)滲透人員通過(guò)C&C服務(wù)器對(duì)內(nèi)網(wǎng)環(huán)境的樹(shù)莓派進(jìn)行控制。

    由此,滲透人員與樹(shù)莓派之間建立起了一條通信鏈路,滲透人員可向樹(shù)莓派發(fā)送操作指令,通過(guò)樹(shù)莓派對(duì)目標(biāo)環(huán)境進(jìn)行持續(xù)的滲透測(cè)試。

2 隱蔽式隧道建立方法

    本文采取反向SSH實(shí)現(xiàn)外網(wǎng)C&C服務(wù)器對(duì)樹(shù)莓派的控制;使用Stunnel對(duì)SSH通信進(jìn)行加密,并將其偽裝成HTTPS流,從而避開(kāi)防火墻和IDS/IPS的攔截與檢測(cè)。

2.1 反向SSH隧道建立

    反向SSH隧道建立有兩個(gè)目的:一方面是實(shí)現(xiàn)外網(wǎng)C&C服務(wù)器對(duì)內(nèi)網(wǎng)樹(shù)莓派的Shell控制;另一方面利用SSH對(duì)數(shù)據(jù)流加密的性質(zhì),實(shí)現(xiàn)控制信息的隱蔽[6]。其連接過(guò)程如圖2所示。

tx1-t2.gif

    反向SSH連接建立過(guò)程如下:

    (1)樹(shù)莓派向C&C服務(wù)器發(fā)起反向SSH請(qǐng)求;(2)通過(guò)認(rèn)證后,樹(shù)莓派與C&C服務(wù)器之間建立起了一條隧道,同時(shí)在C&C服務(wù)器的Port1端口上開(kāi)啟監(jiān)聽(tīng),任何在C&C服務(wù)器上使用SSH連接Port1端口的用戶(hù),將會(huì)反向連接到樹(shù)莓派上;(3)滲透人員登錄C&C服務(wù)器的SSH服務(wù);(4)滲透人員通過(guò)SSH訪問(wèn)C&C服務(wù)器上的Port1監(jiān)聽(tīng)端口,從而獲得內(nèi)網(wǎng)中樹(shù)莓派root權(quán)限下的Shell;(5)對(duì)樹(shù)莓派的操作指令通過(guò)SSH隧道進(jìn)行發(fā)送,實(shí)現(xiàn)了對(duì)內(nèi)網(wǎng)樹(shù)莓派的控制。

    自此,樹(shù)莓派與滲透人員之間相當(dāng)于建立起了一條VPN隧道, 隧道內(nèi)的信息對(duì)外不可見(jiàn)。

2.2 使用Stunnel對(duì)SSH進(jìn)行偽裝

    SSH的數(shù)據(jù)包會(huì)被協(xié)議分析器解析出來(lái),網(wǎng)絡(luò)管理人員通常為安全考慮,會(huì)禁止這類(lèi)VPN隧道的建立與數(shù)據(jù)包的傳輸。為了達(dá)到更好的隱蔽性,本文使用Stunnel,將SSH流偽裝為HTTPS流。

    在將SSH流偽裝成HTTPS流之前,需要對(duì)HTTPS的工作過(guò)程進(jìn)行一些分析。HTTPS是安全版的HTTP,它在HTTP下增加了SSL/TLS層,從而對(duì)通信數(shù)據(jù)進(jìn)行了加密,實(shí)現(xiàn)CA認(rèn)證功能,提高了使用的安全性。而Stunnel是一個(gè)為應(yīng)用程序之間進(jìn)行安全通信而設(shè)計(jì)開(kāi)發(fā)的自由跨平臺(tái)軟件,它使用OpenSSL庫(kù),在應(yīng)用層下增加SSL/TLS層,完成客戶(hù)端與服務(wù)器之間的通信加密[7],而這與HTTPS加密方式類(lèi)似,本文利用這一特性,將SSH流偽裝成HTTPS流,其偽裝過(guò)程如圖3所示。

tx1-t3.gif

    在為樹(shù)莓派和C&C服務(wù)器分別配置好Stunnel 客戶(hù)端和Stunnel服務(wù)器后,就可將SSH流偽裝為HTTPS流,其過(guò)程如下:

    (1)樹(shù)莓派向本機(jī)Stunnel客戶(hù)端的監(jiān)聽(tīng)端口Port2發(fā)起反向SSH連接請(qǐng)求;

    (2)樹(shù)莓派的Stunnel客戶(hù)端與C&C服務(wù)器的Stunnel服務(wù)器進(jìn)行SSL/TSL握手,握手成功后建立起Stunnel隧道,加密后的SSH數(shù)據(jù)包通過(guò)Stunnel隧道發(fā)送至C&C服務(wù)器的Stunnel服務(wù)器443監(jiān)聽(tīng)端口;

    (3)C&C服務(wù)器的Stunnel服務(wù)器收到加密的SSH數(shù)據(jù)包,對(duì)其解密后,反向SSH連接請(qǐng)求被轉(zhuǎn)發(fā)到本機(jī)SSH服務(wù)的22端口;

    (4)反向SSH請(qǐng)求成功后,C&C服務(wù)器在Port1端口開(kāi)啟監(jiān)聽(tīng),并建立一個(gè)反向SSH隧道;

    (5)滲透人員登錄C&C服務(wù)器的SSH服務(wù);

    (6)滲透人員通過(guò)反向SSH監(jiān)聽(tīng)端口,登錄樹(shù)莓派SSH服務(wù);

    (7)滲透人員向樹(shù)莓派發(fā)送的指令操作都被進(jìn)行兩次封包,并最終偽裝為HTTPS流。

3 匿名遠(yuǎn)程控制方法

    滲透人員對(duì)樹(shù)莓派進(jìn)行遠(yuǎn)程控制時(shí),會(huì)留下面包屑,容易被追蹤到,無(wú)法達(dá)到隱蔽的效果,由此,本文使用Tor網(wǎng)絡(luò)進(jìn)行匿名,并最終實(shí)現(xiàn)匿名的遠(yuǎn)程控制。

3.1 Tor匿名原理

    Tor網(wǎng)絡(luò)主要由洋蔥代理(Onion Proxy,OP)、目錄服務(wù)器(Directory Server,DS)和洋蔥路由器(Onion Router,OR)三部分組成[8]。OP主要為T(mén)or用戶(hù)完成路由節(jié)點(diǎn)的選擇、電路(Circuit)建立、數(shù)據(jù)包發(fā)送與接收等代理工作;DS主要負(fù)責(zé)匯總Tor網(wǎng)絡(luò)的運(yùn)行狀態(tài),并向OP發(fā)布最新的Tor路由節(jié)點(diǎn)列表;OR主要由Tor網(wǎng)絡(luò)志愿者組成,用于對(duì)數(shù)據(jù)包進(jìn)行重路由,從而實(shí)現(xiàn)匿名效果。在Tor網(wǎng)絡(luò)建立連接的過(guò)程中,OP會(huì)隨機(jī)選擇3個(gè)可用的OR分別作為T(mén)or網(wǎng)絡(luò)的入口節(jié)點(diǎn)(Guard Node,GN)、中繼節(jié)點(diǎn)(Relay Node,RN)和出口節(jié)點(diǎn)(Exit Node,EN),在使用Diffie-Hellman依次進(jìn)行密鑰協(xié)商后,得到3個(gè)會(huì)話(huà)密鑰,并用其依次對(duì)消息進(jìn)行加密,最后OP將3次加密的數(shù)據(jù)包發(fā)送至GN。GN、RN和EN依次使用共享的會(huì)話(huà)密鑰對(duì)數(shù)據(jù)包進(jìn)行解密,并發(fā)往下一跳,使得數(shù)據(jù)包最終由EN以明文的形式發(fā)送至目標(biāo)站點(diǎn)。數(shù)據(jù)包的返回,在依次經(jīng)過(guò)EX、RN和GN時(shí),被各節(jié)點(diǎn)使用共享會(huì)話(huà)密鑰進(jìn)行加密,最終GN將3次加密的數(shù)據(jù)包發(fā)送給OP,OP再通過(guò)3個(gè)共享會(huì)話(huà)密鑰進(jìn)行依次解密,最后將得到的明文傳遞給Tor用戶(hù)。

    由于入口節(jié)點(diǎn)只知道數(shù)據(jù)包的發(fā)送者,中繼節(jié)點(diǎn)不知道任何關(guān)鍵信息,而出口節(jié)點(diǎn)也僅知道數(shù)據(jù)包的接收者和明文信息,總之沒(méi)有一個(gè)節(jié)點(diǎn)可以獲得消息的發(fā)送者、消息的接收者和消息的內(nèi)容這一完整信息,也無(wú)法同時(shí)得到消息發(fā)送者和消息內(nèi)容這兩個(gè)關(guān)鍵信息的組合,從而實(shí)現(xiàn)了匿名。

3.2 匿名SSH實(shí)現(xiàn)

    雖然Tor網(wǎng)絡(luò)主要用于匿名傳輸HTTP/HTTPS流,但只要是以TCP為傳輸層協(xié)議的應(yīng)用,都可以通過(guò)Tor網(wǎng)絡(luò)進(jìn)行傳輸,達(dá)到匿名效果。SSH是基于TCP上的應(yīng)用,故其數(shù)據(jù)流可通過(guò)Tor網(wǎng)絡(luò)進(jìn)行傳輸,但需要進(jìn)行端口轉(zhuǎn)發(fā)工作。要將SSH端口的數(shù)據(jù)轉(zhuǎn)發(fā)到Tor端口,可以使用Sock4/Socks5代理服務(wù)器實(shí)現(xiàn)。本文在Ubuntu 14.04環(huán)境下,使用Proxychains代理工具,成功通過(guò)Tor網(wǎng)絡(luò)匿名傳輸SSH流,實(shí)現(xiàn)了匿名的遠(yuǎn)程控制。

4 滲透測(cè)試實(shí)驗(yàn)

    首先,為了檢驗(yàn)本文提出的滲透方法的隱蔽性,通過(guò)在樹(shù)莓派上使用Wireshark工具,對(duì)樹(shù)莓派與C&C服務(wù)器之間的連接與通信數(shù)據(jù)包進(jìn)行捕獲,捕獲的數(shù)據(jù)包如圖4所示(黑底白字是樹(shù)莓派發(fā)送至C&C服務(wù)器的數(shù)據(jù)包,白底黑字的是反向數(shù)據(jù)包)。

tx1-t4.gif

    由圖4可以看出,Wireshark沒(méi)有解析出任何的SSH數(shù)據(jù)包,SSH流已被偽裝成HTTPS流。較之于正常的HTTPS流,偽裝的HTTPS流內(nèi)包含惡意的控制流,而較之于常規(guī)的控制流,偽裝的HTTPS流由于內(nèi)部信息對(duì)外不可見(jiàn),使其可避開(kāi)防火墻的攔截與IDS/IPS的檢測(cè),而難以被發(fā)現(xiàn),達(dá)到了隱蔽的效果。

    接著,為了揭露本文提出的滲透測(cè)試方法可能會(huì)導(dǎo)致的威脅,故對(duì)此進(jìn)行滲透測(cè)試實(shí)驗(yàn),為安全人員對(duì)此類(lèi)攻擊的識(shí)別與防范提供參考。滲透測(cè)試流程圖如圖5所示。

tx1-t5.gif

    滲透測(cè)試過(guò)程中,首先將樹(shù)莓派偽裝成一臺(tái)網(wǎng)絡(luò)監(jiān)控?cái)z像機(jī)[9],可用于家庭或企業(yè)的遠(yuǎn)程監(jiān)控管理;其次,使用本文提出的隱蔽式滲透方法為樹(shù)莓派植入后門(mén),同時(shí)編寫(xiě)開(kāi)機(jī)啟動(dòng)項(xiàng)腳本程序,利用SSH公鑰認(rèn)證、autossh自動(dòng)重連功能,實(shí)現(xiàn)樹(shù)莓派一經(jīng)上電聯(lián)網(wǎng),即刻與C&C服務(wù)器建立起隱蔽的穩(wěn)固隧道;再者,將樹(shù)莓派置于一臺(tái)已聯(lián)網(wǎng)的路由器后上電,并在路由器網(wǎng)絡(luò)外,使用一臺(tái)配置好的Ubuntu主機(jī),通過(guò)Tor網(wǎng)絡(luò)匿名控制樹(shù)莓派;最后,利用樹(shù)莓派進(jìn)行拍照、錄像以及文件回傳等操作,實(shí)現(xiàn)對(duì)遠(yuǎn)程監(jiān)控錄像的竊取與篡改,并利用nmap對(duì)網(wǎng)絡(luò)環(huán)境進(jìn)行掃描,開(kāi)始實(shí)施橫向擴(kuò)展攻擊。

    通過(guò)實(shí)驗(yàn)了解到,雖然該類(lèi)攻擊相對(duì)隱蔽,可避開(kāi)常規(guī)的防御檢測(cè),但可以通過(guò)加強(qiáng)對(duì)進(jìn)出人員的管理,以及使用正規(guī)渠道獲得的電子設(shè)備,來(lái)減少遭受到此類(lèi)攻擊的可能性。同時(shí),可以通過(guò)對(duì)網(wǎng)絡(luò)關(guān)鍵位置進(jìn)行定期的物理排查,以及對(duì)內(nèi)網(wǎng)環(huán)境進(jìn)行異常流檢測(cè)等措施,及時(shí)發(fā)現(xiàn)攻擊源,以減少損失。

5 結(jié)束語(yǔ)

    本文闡述了一種基于樹(shù)莓派的隱蔽式滲透測(cè)試方法,該方法通過(guò)對(duì)樹(shù)莓派進(jìn)行配置與植入,對(duì)通信數(shù)據(jù)進(jìn)行加密與偽裝,對(duì)滲透人員的操作進(jìn)行匿名,最終實(shí)現(xiàn)一種基于樹(shù)莓派的PT攻擊。實(shí)驗(yàn)表明,網(wǎng)絡(luò)的安全不應(yīng)只關(guān)注對(duì)網(wǎng)絡(luò)邊界的防御,還應(yīng)了解潛在的物理漏洞可能導(dǎo)致的內(nèi)部網(wǎng)絡(luò)風(fēng)險(xiǎn),同時(shí)通過(guò)對(duì)攻擊的理解,更好地提高網(wǎng)絡(luò)的安全。

參考文獻(xiàn)

[1] STEWART J.Operation Aurora:Clues in the code[EB/OL].(2010-1-19)[2016-04-02].https://www.secureworks.com/blog/research-20913.

[2] WRIGHTSON T.Advanced persistent threat hacking:the art and science of hacking any organization[M].McGraw-Hill Education,2014.

[3] 曹自剛,熊剛,趙詠,等.隱蔽式網(wǎng)絡(luò)攻擊綜述[J].集成技術(shù),2014,3(2):1-16.

[4] BODMER S,KILGER M,CARPENTER G,et al.Reverse deception:organized cyber threat counter-exploitation[M].McGraw-Hill Education,2012.

[5] MUNIL J,LAKHANI A.Penetration testing with raspberry pi[M].Packt Publishing Ltd,2015.

[6] 甘長(zhǎng)華.網(wǎng)絡(luò)安全協(xié)議SSH的研究與實(shí)現(xiàn)[D].天津:天津大學(xué),2007.

[7] 彭樂(lè).網(wǎng)絡(luò)穿透技術(shù)的研究[D].北京:北京郵電大學(xué),2008.

[8] 王付剛.TOR匿名通信技術(shù)研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2010.

[9] JONES D.Raspberry pi-teach,learn,and make with raspberry pi[EB/OL].(2016)[2016].https://www.raspberrypi.org/learning/python-picamera-setup/worksheet.md.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。