美章网 资料文库 行为模拟的木马线索调查范文

行为模拟的木马线索调查范文

本站小编为你精心准备了行为模拟的木马线索调查参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

行为模拟的木马线索调查

《刑事技术杂志》2014年第二期

1木马线索追查

木马程序一般由两部分构成,客户端和服务端。在被入侵的主机上种植客户端,在黑客主机上运行服务端,服务端通过计算机网络对客户端进行远程控制。被种植木马的受害者主机称为“肉机”,黑客可以远程完全控制“肉机”。TCP是一种可靠的传输层协议,它提供完善的差错校验、流量和拥塞控制功能,可以实现两个进程之间的可靠通信。UDP是一种不可靠的传输层协议,它只能提供有限的差错校验机制,没有流量和拥塞控制。如果选用UDP实现进程之间的可靠通信,就必须在应用层实现流量和拥塞控制功能,这增加了程序开发的难度。木马需要实现对“肉机”的完全控制、监控“肉机”的操作画面、监控“肉机”的语音和视频通信,这些功能需要在“肉机”和黑客主机之间可靠传递大量通信数据,因此TCP成为远程控制木马的首选协议。早期的木马(如冰河)采用的是黑客主机主动寻找“肉机”的通信模式,但由于大量“肉机”分散在局域网(使用专用地址,对外不可见)或家庭拨号网络中(每次登陆IP地址变化),导致这种通信模式失效。目前远程控制木马普遍采用“肉机”主动寻找黑客主机的通信模式。但这种模式也存在一个问题,那就是黑客通常位于家庭拨号网络环境之中,黑客主机每次联网都会从网络运营商那里获得一个全局合法IP地址,中断连接时释放这个IP,下次重新联网会获得另一个不同的IP地址。这导致“肉机”无法以IP地址作为远程连接的稳定条件,因此出现了动态域名映射技术,以图1为例进行解释(见图1)。黑客主机联网之后获得一个动态IP,之后将这个IP地址传递给动态域名服务器,DNS服务器将域映射为60.1.2.3。假设黑客主机下次联网获得IP地址为,DNS服务器会将域名重新映射。可见IP地址虽然在不断变化,但域名是稳定不变的。图2(a)显示的是“肉机”与黑客主机正常建立TCP连接的通信过程。“肉机”首先使用DNS协议将域名解析为对应的IP地址60.1.2.3。之后通过TCP的三次握手机制与黑客主机建立一条TCP连接,远程控制通道建立完成。远程通道建立起来之后,在“肉机”端使用netstat-an命令可以查看到这条控制连接。图2(d)表示“肉机”使用1065端口与远程主机(IP地址为60.1.2.3)的1066端口建立了一条TCP连接。在两种情况下“肉机”不能与黑客主机正常建立TCP连接,这时采用netstat-an命令不能查看到对应的控制连接,即不能获得黑客主机的IP地址。图2(b)表示的是第一种情况,可以看出域名解析任务正常完成,即“肉机”获得了黑客主机的IP地址,但在向黑客主机发出第一次TCP握手报文时,对方并未应答。图2(c)表示的是第二种情况,可以看出域名解析请求并未得到应答,这是因为域名服务器中并不存在对应的域名解析记录。此时我们无法获得黑客的任何线索。

2基于“行为模拟”的疑难木马线索追查方法

这里说的“疑难木马”是指那些不能与远程黑客主机正常建立TCP控制连接的木马。对于这类“疑难木马”可以在图3所示的拓扑环境中,使用“行为模拟”方法来诱使“肉机”上的木马客户端发出信息,而这些信息通常包含了可以证明木马存在的相关证据。调查人员可以将受害者主机、一台IIS服务器和一台DNS服务器通过集线器进行连接,要保证与外部因特网隔绝。这里选取IIS服务器来模拟黑客主机是因为两者的初始工作机制极为相似,均监听某个特定的TCP端口。区别在于监听的端口号不同,IIS默认监听80端口,而黑客主机可以监听任何端口。这时用户需要将IIS的监听端口调整为黑客主机的工作端口。这样一来,两者的初始工作状态完全相同,可以达到行为模拟的相关要求。整个调查过程共分为4个阶段(见图4)。第1阶段是DNS模拟应答阶段。调查人员先将受害者主机连入因特网,同时使用数据包捕获软件(例如sniffer)监听一段时间,从捕获的通信数据中识别出那些未获得应答的DNS请求报文,记录下其中携带的域名信息,将这些域名中的一个添加到图3所示的DNS服务器中,同时将它的映射IP地址设置为IIS服务器的IP。这样一来,当组成图3所示的网络环境后,这个之前未获得响应的DNS请求将得到应答,IP地址指向IIS服务器。第2阶段是模拟3次握手机制建立TCP控制连接。“肉机”收到DNS应答报文之后,信任其中携带的信息,向IIS服务器发出第1次握手SYN报文。由于“肉机”连接的端口很可能不是TCP80端口,因此这个连接请求通常会被IIS服务器以一个RST报文拒绝。调查人员通过在IIS服务器端运行的监听软件了解到这一信息之后,按照“肉机”的实际连接端口值调整IIS服务器的工作端口,之后“肉机”与IIS服务器通过TCP3次握手机制建立起一条控制连接。第3阶段是证据收集阶段。当TCP连接通道建立起来之后,“肉机”会误认为IIS服务器就是远程黑客主机,于是将数据发送给它,这些数据可以是木马盗取到的账户信息,或远程控制指令,等等。IIS服务器上运行的监听软件会将它们记录下来,提供给调查人员进行分析,同时以ACK报文确认接收到的数据。第4阶段是连接终止阶段。由于IIS服务器只是简单的以ACK报文确认收到的数据,而没有与“肉机”形成更深层次的互动,因此“肉机”端运行的木马程序会识别出这一异常,而后使用一个FIN或RST报文来终止这条连接,IIS服务器会以一个RST报文进行响应。至此调查工作完成,在IIS服务器端收集到“肉机”在第三阶段发出的相关数据。

3基于“行为模拟”的盗号木马线索追查方法应用举例

盗号木马在窃取到敏感信息(例如受害者的网银账户和密码)之后会将这些信息发送给黑客指定的服务器。在“肉机”无法与黑客服务器建立通信连接的情况下、可以应用本文提出的“行为模拟”方法进行追踪,以寻找出黑客的相关线索,下面具体举例分析。初始网络拓扑结构如图5所示,首先确定“肉机”端未获得应答的DNS请求报文。将“肉机”正常接入因特网,同时在监控主机上使用sniffer监听“肉机”与外网的通信数据,一段时间之后停止监听,从捕获的数据报中确定那些未被响应的DNS请求报文(如果数据报较多,可以利用sniffer提供的过滤功能筛选出DNS数据报)。在本例中未获得响应的DNS请求报文如图6所示。可见“肉机”向DNS服务器发出了一个DNS请求报文,请求解析域名对应的IP地址,但这一请求并未获得应答。按照图7所示拓扑结构组成网络,其中DNS服务器的IP地址为服务器的IP地址。在DNS服务器上新增加一组映射,将域名映射(即IIS服务器的IP地址)。将“肉机”的DNS服务器IP地址由之前。之后再次运行监控主机上的sniffer监听一段时间。由于“肉机”的网络设置发生了变化,因此“肉机”会重新尝试进行网络连接,它收发的数据报会被sniffer截获(见图8)。编号17的数据报是“肉机”向新DNS服务器发出的请求报文,请求解析域名对应的IP地址。编号18的数据报是DNS服务器返回的应答报文,其携带的具体数据如图9所示,可见域名被映射为。编号19的数据报是“肉机”向IIS服务器提交的第一次握手报文,可见“肉机”主动连接的端口为3030。由于IIS服务器端并未开放这个端口,因此IIS服务器使用一个RST报文拒绝了这个连接请求,即编号20的数据报。接下来将IIS服务器的工作端口由默认的80改为3030,停止再重新激活“肉机”的网卡,这一行为会促使“肉机”重新进行网络连接,而其产生的数据报会被监控主机截获,如图10所示。编号8~10的数据报是“肉机”使用3次握手机制与IIS服务器建立一条TCP连接,“肉机”选择随机端口1120,IIS服务器使用3030端口。编号11的数据报是“肉机”使用HTTP-GET方式向IIS服务器的aa.asp脚本文件提交了一组参数,参数值为id=peter和pass=86982480,显然这是“肉机”端的木马程序记录到的敏感信息。由于服务器端并不存在一个名为aa.asp的脚本文件,因此IIS服务器返回一个3780字节的错误信息,这一错误信息被封装为3个HTTP数据报返回,即编号12、13和15的报文。编号14和16的报文是“肉机”返回的ACK确认报文。编号17~20的数据报是“肉机”使用四次挥手机制与IIS服务器断开这条TCP连接,致此通信结束。通过“肉机”提交的参数可以确定这是木马程序产生的一组通信数据,木马使用服务器的域名为www.xinxi.com。如果DNS解析环节能正常进行的话,还可以得到木马服务器的IP地址。如果“肉机”是使用ESMTP协议来提交盗取的敏感信息,那么通过“行为模拟”的方法还可以获得黑客使用的发信邮箱、账户、密码和邮件正文等信息,采用的“行为模拟”方法与本例相同,这里就不再阐述。

4讨论

针对“肉机”无法与远程黑客建立通信连接的情况,本文提出了一种基于“行为模拟”的木马线索调查方法。该方法可以模拟黑客主机与“肉机”进行通信,诱使“肉机”提交数据,这些数据通常包含了黑客盗取的敏感信息、提交的远程控制命令、黑客使用的邮箱地址、用户名、密码、黑客主机的域名,等等。通过这些信息可以直接或间接地获得木马的相关线索。如果DNS域名解析过程能成功进行的话,调查人员还可以获得黑客使用远程服务器的IP地址。

作者:徐国天 单位:中国刑警学院网络犯罪侦查系