恶意程序分析:靶场设置(一)

我今天将详细介绍的第一步是虚拟实验室的设置。对于硬件,我使用了旧的游戏计算机。它不再擅长运行游戏,但非常适合进行恶意软件分析。我已经用Debian Linux发行版安装了它,还安装了VirtualBox。

 

使用虚拟化进行恶意软件分析有优缺点。优点包括创建工作环境快照的能力以及创建虚拟网络的能力。我稍后会解释。我已经了解到的一个缺点是,如果某些恶意软件发现其在虚拟环境中运行,它们的行为就会有所不同。唯一的目的是防止对其进行分析。

 

因此,在我的设置中,我使用VirtualBox创建虚拟机。我正在使用Windows XP Professional计算机。装有我可能需要的任何工具。以及用作DNS /邮件/ IRC服务器的Debian机器。某些恶意软件将尝试以某种方式与Internet上的某些内容进行通信。通过IRC,简单的DNS请求或通过邮件协议进行处理。在安装了这些服务的虚拟Debian机器上,我可以接收请求并更详细地了解它们在做什么。

 

从下面的屏幕快照中可以看到,我已经创建了两个虚拟机的克隆。这使我可以轻松地重新开始,而不必再次重新安装所有工具。两台机器都处于“仅主机”模式,并连接到名为vboxnet0的虚拟网络。这样可以防止恶意软件从虚拟机逃逸并在整个网络中传播。我也极度偏执,在执行分析时会从计算机上拔下网络电缆。

恶意程序分析:靶场设置(一)_第1张图片

我将在Debian上首先安装的唯一软件是DNS服务器。这将使我能够将恶意软件可能进行的任何DNS查询重定向到我选择的计算机(矿井)。我决定将Dnsmasq用于此目的,因为其设置非常简单。

 

我只是使用以下命令安装了Dnsmasq:

apt-get install dnamasq

并将/etc/dnsmasq.conf文件编辑为仅允许在特定界面上进行查询。


# If you want dnsmasq to listen for DHCP and DNS requests only on
# specified interfaces (and the loopback) give the name of the
# interface (eg eth0) here.
# Repeat the line for more than one interface.
interface=eth0

并允许记录dns请求:


# For debugging purposes, log each DNS query as it passes through
# dnsmasq.
log-queries

我还在/ etc / hosts文件中添加了一条测试记录,该记录将域james.com指向IP地址66.66.66.66。

127.0.0.1    localhost
127.0.1.1    debian.localdomain  debian
66.66.66.66 james.com   james.com


# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

接下来,我将设置Windows XP以将虚拟Debian机器用作DNS服务器。我不会解释我是如何做到的。如果您阅读此书,您可能已经知道。我用nslookup测试了配置。


Microsoft Windows XP [Uersion 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\\Documents and Settings\james>nslookup james.com
*** Can't find server name for address 192.168.56.101: Query refused
*** Default servers are not available
Server: Unknown
Address: 192.168.56.101

Name: james.com
Address: 66.66.66.66

C:\Documents and Settings\james>

如您所见,DNS服务器以66.66.66.66的测试IP进行了响应。

 

我可以使用以下命令监视对服务器的DNS请求:


tail -f /var/log/syslog

在运行恶意软件时,这应该很有用。


james@debian:~$ sudo tail -f /var/log/syslog
Oct 12 15:15:37 debian dnsmasq[1051]: query[PTR] 101.56.168.192.1n-addr.arpa from 192.168.56.102
Oct 12 15:15:37 debian dnsmasq[1051]: query[A] james.com from 192.168.56.102

现在,我将详细介绍我已在目标计算机上安装的一些软件。在此阶段,我甚至没有尝试查看任何恶意软件,因此我很可能缺少一些必要的工具。一旦恶意软件在计算机上,就无法访问互联网。因此,我试图提前计划并安装我怀疑需要的所有东西。我很有可能会错过从未做过的事情。

 

Regshot
此工具使您可以在两种不同状态下对计算机进行快照,然后进行比较。例如,您可以在运行某些恶意软件之前和之后制作快照。比较这两个快照,可以查看恶意软件对系统所做的更改。它记录新文件/文件夹和注册表更改。

 

Process Explorer 基本上是类固醇的任务管理器。它使您可以查看正在运行的进程

 

Wireshark 这可以让您监视网络流量,在这种情况下,尤其是恶意软件创建的流量。

 

 

Process Monitor 允许您查看程序运行时发生的事件。例如文件的更改,修改和执行。

 

CaptureBAT 允许您监视文件和网络活动

 

OllyDebug 我以前从未使用过此软件。通过一般阅读,它使您可以在程序中运行程序并观察其如何与基础系统交互。它使您可以查看以汇编语言形式执行的指令以及存储的数据。

 

Notepad ++ Windows记事本的更强大版本。

 

Strings SysInternals套件的一部分。它允许您扫描文件中的字符串(可读字符的序列)

 

安装完上面的软件后,我保存了虚拟机并将其克隆。这使我能够在分析恶意软件时处理克隆的版本,并在需要重新启动时恢复到原始的干净计算机。

 

关注:Hunter网络安全 获取更多资讯
网站:bbs.kylzrv.com
CTF团队:Hunter网络安全
文章:Xtrato
排版:Hunter-匿名者

你可能感兴趣的:(技术,安全,经验分享,虚拟机,notepad++,wireshark)