基于树莓派的隐蔽式渗透测试方法*

2016-03-18 05:41陶晓玲亢蕊楠
电子技术应用 2016年6期
关键词:树莓数据包端口

陶晓玲,伍 欣,亢蕊楠

(1.桂林电子科技大学 广西高校云计算与复杂系统重点实验室,广西 桂林 541004;2.桂林电子科技大学 信息与通信学院,广西 桂林 541004)

基于树莓派的隐蔽式渗透测试方法*

陶晓玲1,2,伍 欣2,亢蕊楠2

(1.桂林电子科技大学 广西高校云计算与复杂系统重点实验室,广西 桂林 541004;2.桂林电子科技大学 信息与通信学院,广西 桂林 541004)

随着 APT攻击的逐年增长,常规的渗透测试方法已经无法满足当前环境下对网络安全检测多元化的需求。由此,针对隐蔽式渗透方法进行研究,以常被忽视的物理安全漏洞为出发点,提出一种以树莓派作为间谍机的植入式PT渗透方法。该方法利用隧道技术与伪装技术,将控制流伪装成HTTPS流,实现树莓派与C&C服务器之间的隐蔽通信;同时,使用 Tor网络,实现渗透人员的匿名控制,最终达到隐蔽的效果。最后,通过渗透测试模拟实验,证明了该方法的隐蔽性,说明了此类攻击可能导致的潜在威胁,为安全人员对 APT/PT攻击的防御与检测提供参考。

渗透测试;树莓派;隐蔽式;持续性威胁;隧道;Tor网络

0 引言

自 2010年 Google报道“极光行动”之后[1],APT(Advanced Persistent Threat)攻击便成为安全界热议的话题。特别的针对性、高度的复杂性以及极强的隐蔽性是 APT攻击的主要特点[2],从暗鼠行动的鱼叉式邮件钓鱼攻击,到夜龙行动的多攻击向量组合攻击,再到震网病毒的多 0day漏洞利用攻击可见一斑。APT攻击有愈演愈烈的趋势,由于其隐蔽性的特点,导致其可在目标环境进行长期的潜伏而难以被发现,对信息安全造成了持续性的巨大危害,同时,这也是当前安全防护与检测的技术难点[3]。

PT(Persistent Threat)攻击是 APT攻击的组成部分,相对于 APT攻击,其缺少复杂强大的针对性攻击载荷,但其拥有隐蔽的通信手段,可通过伪装、加密、混淆等技术实现攻击代码的隐藏与网络后门的建立,能够长期对目标环境进行信息窃取与主机操控等活动[4]。例如Rootkit、后门程序以及一些僵尸网络等攻击属于 PT攻击的范畴,而SQL注入、XSS、DDos等攻击不属于这一范畴。目前,针对 APT/PT攻击的渗透测试方法研究相对较少,由此本文针对其隐蔽性的特点进行研究,以渗透测试的形式进行模拟实验,为帮助安全人员了解攻击者的意图、看到系统的潜在威胁提供信息支持。

1 渗透测试模型

本文的渗透测试模型如图1所示,模型主要由树莓派、C&C服务器和 Tor网络三部分组成。其中,树莓派是一款基于Linux系统的卡片式电脑,虽然只有信用卡的大小,却具有电脑的所有基本功能。由于其具有极高的性价比以及很好的兼容性与可扩展性,使得它成为物理后门植入载体的首选。渗透测试过程中,为其写入的是当前最为流行的Kali Linux树莓派定制版系统,其中集成了许多必要的渗透工具,为进行渗透测试提供帮助[5]。C&C服务器使用具有公网 IP的云服务器进行模拟,并运行Ubuntu14.04 Server实例。Tor被安装在一台 Ubuntu14.04主机上,供渗透测试使用。

图1 渗透测试模型

渗透测试工作流程如下:

(1)以一台有root权限的实例作为C&C服务器;(2)配置树莓派,并将其植入目标环境;(3)树莓派上电后,穿过防火墙限制,自动与C&C服务器建立起持久的隐蔽隧道;(4)渗透人员与 Tor网络建立连接而获得匿名;(5)渗透人员通过Tor网络登陆到C&C服务器;(6)渗透人员通过C&C服务器对内网环境的树莓派进行控制。

由此,渗透人员与树莓派之间建立起了一条通信链路,渗透人员可向树莓派发送操作指令,通过树莓派对目标环境进行持续的渗透测试。

2 隐蔽式隧道建立方法

本文采取反向SSH实现外网 C&C服务器对树莓派的控制;使用 Stunnel对SSH通信进行加密,并将其伪装成HTTPS流,从而避开防火墙和IDS/IPS的拦截与检测。

2.1 反向SSH隧道建立

反向SSH隧道建立有两个目的:一方面是实现外网C&C服务器对内网树莓派的Shell控制;另一方面利用SSH对数据流加密的性质,实现控制信息的隐蔽[6]。其连接过程如图2所示。

图2 反向 SSH连接建立过程示意图

反向SSH连接建立过程如下:

(1)树莓派向C&C服务器发起反向SSH请求;(2)通过认证后,树莓派与C&C服务器之间建立起了一条隧道,同时在C&C服务器的Port1端口上开启监听,任何在C&C服务器上使用SSH连接 Port1端口的用户,将会反向连接到树莓派上;(3)渗透人员登录C&C服务器的SSH服务;(4)渗透人员通过 SSH访问 C&C服务器上的 Port1监听端口,从而获得内网中树莓派 root权限下的 Shell;(5)对树莓派的操作指令通过 SSH隧道进行发送,实现了对内网树莓派的控制。

自此,树莓派与渗透人员之间相当于建立起了一条VPN隧道,隧道内的信息对外不可见。

2.2 使用Stunnel对SSH进行伪装

SSH的数据包会被协议分析器解析出来,网络管理人员通常为安全考虑,会禁止这类 VPN隧道的建立与数据包的传输。为了达到更好的隐蔽性, 本文使用Stunnel,将SSH流伪装为HTTPS流。

在将SSH流伪装成HTTPS流之前,需要对HTTPS的工作过程进行一些分析。HTTPS是安全版的HTTP,它在HTTP下增加了SSL/TLS层,从而对通信数据进行了加密,实现CA认证功能,提高了使用的安全性。而 Stunnel是一个为应用程序之间进行安全通信而设计开发的自由跨平台软件,它使用 OpenSSL库,在应用层下增加SSL/TLS层,完成客户端与服务器之间的通信加密[7],而这与 HTTPS加密方式类似,本文利用这一特性,将 SSH流伪装成 HTTPS流,其伪装过程如图3所示。

图3 SSH流伪装为HTTPS流过程示意图

在为树莓派和C&C服务器分别配置好Stunnel客户端和Stunnel服务器后,就可将SSH流伪装为HTTPS流,其过程如下:

(1)树莓派向本机 Stunnel客户端的监听端口 Port2发起反向SSH连接请求;

(2)树莓派的Stunnel客户端与C&C服务器的Stunnel服务器进行 SSL/TSL握手,握手成功后建立起 Stunnel隧道,加密后的SSH数据包通过 Stunnel隧道发送至C&C服务器的Stunnel服务器 443监听端口;

(3)C&C服务器的Stunnel服务器收到加密的SSH数据包,对其解密后,反向 SSH连接请求被转发到本机SSH服务的22端口;

(4)反向SSH请求成功后,C&C服务器在 Port1端口开启监听,并建立一个反向 SSH隧道;

(5)渗透人员登录C&C服务器的SSH服务;

(6)渗透人员通过反向SSH监听端口,登录树莓派SSH服务;

(7)渗透人员向树莓派发送的指令操作都被进行两次封包,并最终伪装为HTTPS流。

3 匿名远程控制方法

渗透人员对树莓派进行远程控制时,会留下面包屑,容易被追踪到,无法达到隐蔽的效果,由此,本文使用Tor网络进行匿名,并最终实现匿名的远程控制。

3.1 Tor匿名原理

Tor网络主要由洋葱代理(Onion Proxy,OP)、目录服务器(Directory Server,DS)和洋葱路由器(Onion Router,OR)三部分组成[8]。OP主要为Tor用户完成路由节点的选择、电路(Circuit)建立、数据包发送与接收等代理工作;DS主要负责汇总Tor网络的运行状态,并向 OP发布最新的Tor路由节点列表;OR主要由Tor网络志愿者组成,用于对数据包进行重路由,从而实现匿名效果。在Tor网络建立连接的过程中,OP会随机选择3个可用的OR分别作为Tor网络的入口节点(Guard Node,GN)、中继节点(Relay Node,RN)和出口节点(Exit Node,EN),在使用Diffie-Hellman依次进行密钥协商后,得到3个会话密钥,并用其依次对消息进行加密,最后 OP将 3次加密的数据包发送至GN。GN、RN和EN依次使用共享的会话密钥对数据包进行解密,并发往下一跳,使得数据包最终由EN以明文的形式发送至目标站点。数据包的返回,在依次经过EX、RN和 GN时,被各节点使用共享会话密钥进行加密,最终 GN将 3次加密的数据包发送给 OP,OP再通过 3个共享会话密钥进行依次解密,最后将得到的明文传递给 Tor用户。

由于入口节点只知道数据包的发送者,中继节点不知道任何关键信息,而出口节点也仅知道数据包的接收者和明文信息,总之没有一个节点可以获得消息的发送者、消息的接收者和消息的内容这一完整信息,也无法同时得到消息发送者和消息内容这两个关键信息的组合,从而实现了匿名。

3.2 匿名SSH实现

虽然 Tor网络主要用于匿名传输 HTTP/HTTPS流,但只要是以 TCP为传输层协议的应用,都可以通过 Tor网络进行传输,达到匿名效果。SSH是基于TCP上的应用,故其数据流可通过 Tor网络进行传输,但需要进行端口转发工作。要将 SSH端口的数据转发到 Tor端口,可以使用Sock4/Socks5代理服务器实现。本文在 Ubuntu14.04环境下,使用 Proxychains代理工具,成功通过 Tor网络匿名传输SSH流,实现了匿名的远程控制。

4 渗透测试实验

首先,为了检验本文提出的渗透方法的隐蔽性,通过在树莓派上使用Wireshark工具,对树莓派与C&C服务器之间的连接与通信数据包进行捕获,捕获的数据包如图4所示(黑底白字是树莓派发送至 C&C服务器的数据包,白底黑字的是反向数据包)。

图4 Wireshark捕获的伪装数据包

由图4可以看出,Wireshark没有解析出任何的 SSH数据包,SSH流已被伪装成 HTTPS流。较之于正常的HTTPS流,伪装的 HTTPS流内包含恶意的控制流,而较之于常规的控制流,伪装的 HTTPS流由于内部信息对外不可见,使其可避开防火墙的拦截与IDS/IPS的检测,而难以被发现,达到了隐蔽的效果。

接着,为了揭露本文提出的渗透测试方法可能会导致的威胁,故对此进行渗透测试实验,为安全人员对此类攻击的识别与防范提供参考。渗透测试流程图如图5所示。

图5 渗透测试流程图

渗透测试过程中,首先将树莓派伪装成一台网络监控摄像机[9],可用于家庭或企业的远程监控管理;其次,使用本文提出的隐蔽式渗透方法为树莓派植入后门,同时编写开机启动项脚本程序,利用 SSH公钥认证、autossh自动重连功能,实现树莓派一经上电联网,即刻与 C&C服务器建立起隐蔽的稳固隧道;再者,将树莓派置于一台已联网的路由器后上电,并在路由器网络外,使用一台配置好的 Ubuntu主机,通过 Tor网络匿名控制树莓派;最后,利用树莓派进行拍照、录像以及文件回传等操作,实现对远程监控录像的窃取与篡改,并利用 nmap对网络环境进行扫描,开始实施横向扩展攻击。

通过实验了解到,虽然该类攻击相对隐蔽,可避开常规的防御检测,但可以通过加强对进出人员的管理,以及使用正规渠道获得的电子设备,来减少遭受到此类攻击的可能性。同时,可以通过对网络关键位置进行定期的物理排查,以及对内网环境进行异常流检测等措施,及时发现攻击源,以减少损失。

5 结束语

本文阐述了一种基于树莓派的隐蔽式渗透测试方法,该方法通过对树莓派进行配置与植入,对通信数据进行加密与伪装,对渗透人员的操作进行匿名,最终实现一种基于树莓派的PT攻击。实验表明,网络的安全不应只关注对网络边界的防御,还应了解潜在的物理漏洞可能导致的内部网络风险,同时通过对攻击的理解,更好地提高网络的安全。

[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]曹自刚,熊刚,赵咏,等.隐蔽式网络攻击综述[J].集成技术,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]甘长华.网络安全协议 SSH的研究与实现[D].天津:天津大学,2007.

[7]彭乐.网络穿透技术的研究[D].北京:北京邮电大学,2008.

[8]王付刚.TOR匿名通信技术研究[D].哈尔滨:哈尔滨工业大学,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.

图7 鲁棒稳定性对比

参考文献

[1]韩京清.从 PID技术到“自抗扰控制”技术[J].控制工程,2002(3):13-18.

[2]LI D,LI C,GAO Z,et al.On active disturbance rejection in temperature regulation of the proton exchange membrane fuel cells[J].Journal of Power Sources,2015,283:452-463.

[3]TANG H,LI Y.Development and active disturbance rejection control of a compliant micro-/nanopositioning piezostage with dual mode[J].IEEE Transactions on Industrial Electronics,2014,61(3):1475-1492.

[4]GAO Z.Scaling and parameterization based controller tuning[C]. Proc.of the 2003 American Control Conference,2003:4989-4996.

[5]ZHANG Y,FAN C,ZHAO F,et al.Parameter tuning of ADRC and its application based on CCCSA[J].Nonlinear Dynamics,2014,76(2):1185-1194.

[6]LI D,GAO Z,CHEN X,et al.Tuning method for secondorder active disturbance rejection control[C].中国自动化学会控制理论专业委员会 D卷,2011:6322-6327.

[7]Xia Yuanqing,Liu Bo,Fu Mengyin.Active disturbance rejection control for power plant with a single loop[J].Asian Journal of Control,2012,14(1):239-250.

[8]恒庆海,鲁婧,恒庆珠,等.纸张定量系统H∞非脆弱鲁棒控制器设计[C].第二十九届中国控制会议论文集,2010.

[9]ZHAO C,LI D.Control design for the SISO system with the unknown order and the unknown relative degree[J].Isa Transactions,2013,53(4):858-872.

(收稿日期:2016-03-02)

作者简介:

王子豪(1990-),男,硕士研究生,主要研究方向:工业过程控制与优化。

杨小健(1963-),男,教授,主要研究方向:工业过程控制与优化。

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)

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.

penetration test;raspberry pi;evasive;persistent threat;tunnel;Tor network

TP315

:ADOI:10.16157/j.issn.0258-7998.2016.06.026

陶晓玲,伍欣,亢蕊楠.基于树莓派的隐蔽式渗透测试方法[J].电子技术应用,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.

2016-04-02)

陶晓玲(1977-),女,副研究员,硕士生导师,主要研究方向:云计算、网络安全、机器学习。

国家自然科学基金(61363006);桂林电子科技大学研究生教育创新计划资助项目(YJCXS201516)

猜你喜欢
树莓数据包端口
二维隐蔽时间信道构建的研究*
一种端口故障的解决方案
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
基于树莓派的骑行智能头盔设计
SmartSniff
基于树莓派的远程家居控制系统的设计
端口阻塞与优先级
系统网络端口安全防护
响应面法优化红树莓酒发酵工艺
卫星三端口DC-DC变换器技术综述