动态分析基础

Posted linuxsec

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态分析基础相关的知识,希望对你有一定的参考价值。

有几个功能一体化的软件产品,可以用来进行基本的动态分析,最流行的就是使用沙箱技术。沙箱是一种在安全环境里运行不信任程序的安全机制,不用担心伤害到“真正的”系统。

   在计算机安全专业人士眼中,Norman沙箱和GFI沙箱是最受欢迎的。

1、如何成功启动DLL文件

在所有的windows版本中都包含rundll32.exe程序,它提供了一个运行DLL的平台,语法格式:

c:\>rundll32.exe DLLname,Export arguments

Export值必须是一个DLL文件导出函数表中的函数名或者序列号。可以用PEview或者PE Explorer工具查看导出函数表。

2、进程监视器

   进程监视器(Process Monitor)是Windows系统下的高级监视工具,它提供一种方式来监控注册表、文件系统、网络、进程和线程行为。它结合并增强了两种工具的功能:文件监视器FileMon和注册表监视器RegMon。

   注册表:通过检查注册表操作,你能辨别一个恶意程序是怎样把自己添加到注册表中去的。

   文件系统:检查文件系统能显示恶意程序创建的所有文件,或它使用的配置文件。

   进程行为:检查进程行为能告诉你恶意程序是否启动了其他的进程。

   网络:识别网络连接能告诉你恶意程序监听的任意端口。

3、进程浏览器

   Process Explorer显示了五栏:Process(进程名)、PID(进程号)、CPU(CPU使用率)、Description(进程描述)、Company Name(软件公司名)。

   使用依赖遍历器(Dependency Walker)

   使用进程浏览器来分析恶意文档,比如PDF和Word。一个快速确定一个文档是否恶意的方法,就是打开进程浏览器,然后再打开文档。若文档启动了任意进程,你就能在进程浏览器中看到,并能通过属性窗口中的镜像(Image)标签来定位恶意代码在磁盘上的位置。

4、使用Regshot来比较注册表快照

   Regshot是一个开源的注册表比较工具,它可以让你比较两个注册表的快照,发现差异。

5、模拟网络

  恶意代码经常会连接到命令与控制服务器,你需要采用一些模拟网络的基本步骤,用来快速获得网络资源,而不需要实际的连接互联网。这些资源可以包括DNS域名系统、IP地址和数据包记录器。

 ApateDNS是用来查看恶意代码发出DNS请求最快速的方式。

6、使用Netcat进行监视

7、使用Wireshark进行数据包监听

8、使用INetSim

   INetSim是一款基于linux模拟网络常见的免费软件。如果你的宿主操作系统是windows,那么运行INetSim最简单的方法就是将它安装到一个linux虚拟机里,然后将它配置到恶意代码分析虚拟机所连接的同一个虚拟网络中。

以上是关于动态分析基础的主要内容,如果未能解决你的问题,请参考以下文章

恶意代码分析实战——Lab03-01.exe基础动态分析篇

第3章-动态基础分析实验

第3章-动态分析基础技术

数据可视化之powerBI基础(十九)学会使用Power BI的参数,轻松搞定动态分析

递归:基础例题分析(及动态规划)

事物分析是一切问题解决的基础和起点