请选择 进入手机版 | 继续访问电脑版

技术控

    今日:8| 主题:61551
收藏本版 (1)
最新软件应用技术尽在掌握

[其他] Dorothy2:一个开源的僵尸网络分析框架

[复制链接]
活在當下 发表于 2016-12-2 15:02:12
270 1

Dorothy2:一个开源的僵尸网络分析框架

Dorothy2:一个开源的僵尸网络分析框架-1-技术控-Dorothy,沙箱,配置,分析,安装

  框架介绍

  Dorothy2是一款采用Ruby语言开发的恶意软件/僵尸网络分析框架,你可以使用Dorothy2框架来对可疑的二进制代码进行分析。该框架的最大优势就是其拥有非常灵活的模块化环境,并且配备有专门针对网络分析任务的可交互式调查框架。除此之外,它还可以通过对比此前生成的基线来识别新的进程。据了解,开发人员将在下一版本中添加两大功能,即静态代码分析以及改进的系统行为分析。Dorothy2在对二进制文件进行分析时,需要使用预设置的分析配置文件。
  这份分析配置文件主要有以下元素构成:

  沙箱系统类型
  沙箱系统版本
  沙箱系统语言
  固定的分析超时时间(恢复虚拟机前需等待多久)
  请求截图的数量(以及截图间隔时间)
  可支持的插件和扩展
  有了这份配置文件之后,研究人员就可以使用不同的环境来对二进制代码集合进行分析了。大家也知道,某些恶意软件只能在特定的环境下运行。一个计算机安全事件响应团队(CSIRT)也可以使用配置文件在某一特定环境中测试可疑的恶意软件。
  Dorothy2框架主要由五大模块组成,这些模块均可以单独运行。下面这张图片显示的是Dorothy2的框架结构图,其中的各个模块已相互连接:
  

Dorothy2:一个开源的僵尸网络分析框架

Dorothy2:一个开源的僵尸网络分析框架-2-技术控-Dorothy,沙箱,配置,分析,安装

   1.  代码读取模块(BFM)
  该模块负责从代码源读取出待测试的代码。“代码源”可以是系统文件夹、电子邮箱、或者是一台可以通过SSH访问的网络主机。当代码全部读入之后,BFM会将代码加入分析队列之中。
   2.  Dorothy分析引擎
  该模块通过在沙箱环境中执行待测试的代码来分析队列中的源码,然后将测试生成的网络流量和截图保存分析文件夹中。
   3.  网络数据提取模块(DEM)
  该模块负责解析pcaps文件,并将相关信息(流数据和IP信息等)保存至Dorothive之中。除此之外,它会将沙箱下载的文件提取出来,并将这些文件保存至代码文件中的分析文件夹内。
   4.  WebGUI(WGUI)
  该模块可以将所有获取到的数据以可交互的形式显示出来。警告:这个模块需要在受控环境下运行,作者强烈反对用户将其暴露在网络上。
   5.  TheJava Dorothy Drone(未发布)
   6.  僵尸网络渗透模块( 基本资料 )
  运行环境

  警告:当前版本的Dorothy使用了VMWareESX5来作为它的虚拟沙箱模块(VSM)。因此,Dorothy不支持免费版的ESXi,因为它使用的是vSphere 5 API。但是,整个框架是可以进行自定义设置的,配置之后就可以使用其他的虚拟化引擎了。Dorothy2是一个高度模块化的框架,用户可以对其进行自定义设置和修改。
  Dorothy的执行需要依赖于下列软件:

  -VMWare ESX >= 5.0
  -Ruby 1.9.3
  -Postgres >= 9.0
  -至少一台Windows虚拟机
  -一台类Unix设备,用于网络分析引擎(NAM)
   - pcapr-local (用于doroParser)
  -MaxMind代码库(用于doroParser)
  操作系统要求:

  -Dorothy可以在任何*nix系统上运行。目前,它可以在OSX和Linux系统上完美运行。
  -被用作沙箱环境的虚拟机系统必须是Windows。(建议使用XP)
  框架安装

  一、  设置ESX环境

  1. 基本设置(ssh)
  -在vSphere中设置:
  1. Configuration->SecurityProfile->Services->Proprieties->SSH->Options->Start and Stopwith host->Start->OK
复制代码
2. 设置两个独立的虚拟网络
  3. 配置Windows虚拟机
  禁用Windows防火墙
  安装VMWare
  配置静态IP
  配置完成之后,使用vSphere控制台创建一个沙箱虚拟机的快照。
  4. 在vSphere中创建一个Unix虚拟机,用于NAM模块
  -安装tcpdump和sudo
  1. #apt-get install tcpdump sudo
复制代码
-为Dorothy创建一个专有用户(例如“dorothy”)
  1. #useradd dorothy
复制代码
-在dorothy用户主目录下创建一个文件夹,用于保存网络数据
  1. #su dorothy
  2. $mkdir /home/dorothy/pcaps
复制代码
-添加dorothy用户权限
  1. #visudo
  2. add the following line:
  3. dorothy  ALL = NOPASSWD:/usr/sbin/tcpdump, /bin/kill, /usr/bin/killall
复制代码
-如果你打算在Linux系统上安装Dorothy,我建议你将pcapr和Dorothy gem安装在同一虚拟机中。
  1. #apt-get install ruby1.9.3 rubygems  tshark zip couchdb
复制代码
-开启couchdb服务器
  1. #/etc/init.d/couchdb start
复制代码
-安装pcapr-local
  1. #gem install pcapr-local
复制代码
-配置并开启pcapr-local,并配置用于保存网络输出数据的文件夹路径
  1. $startpcapr
  2. ....
  3. Which directory would you like to scan for indexable pcaps?[/root/pcapr.Local/pcaps]
  4. /home/dorothy/pcaps
复制代码
除此之外,建议允许pcapr访问所有的接口
  1. What IP address should pcapr.Local run on? Use 0.0.0.0 to listenon all interfaces [127.0.0.1] 0.0.0.0
复制代码
-设置全部正确的话,你应该可以访问下列url了
  1. #apt-get install tcpdump sudo0
复制代码
安装示例

   1.  基本安装-强烈建议用户采用下图所示的架构来安装Dorothy框架。
  

Dorothy2:一个开源的僵尸网络分析框架

Dorothy2:一个开源的僵尸网络分析框架-3-技术控-Dorothy,沙箱,配置,分析,安装

   2.  高级安装-建议企业环境下的用户采用下图所示的架构进行安装。
  

Dorothy2:一个开源的僵尸网络分析框架

Dorothy2:一个开源的僵尸网络分析框架-4-技术控-Dorothy,沙箱,配置,分析,安装

   二、  安装依赖软件

   1.  安装postgres
  1. #apt-get install tcpdump sudo1
复制代码

  1. #apt-get install tcpdump sudo2
复制代码
  2.  安装下列数据包
  1. #apt-get install tcpdump sudo3
复制代码
  3.  如果你想要安装pcapr的话,运行下列命令
  1. #apt-get install tcpdump sudo4
复制代码
三、  安装Dorothygem

  1. #apt-get install tcpdump sudo5
复制代码
四、  配置并开启Dorothy

   1.  安装Maxmind库
  -GeoLiteCity
  -GeoLite ASN
  -将GeoLiteCity.dat和GeoIPASNum.dat拷贝到Dorothy的etc/geo文件夹中
  2.开启Dorothy
  1. #apt-get install tcpdump sudo6
复制代码
3.按照下列顺序进行配置
  -环境变量(db和esx服务器等)
  -Dorothy源(获取新代码)
  -用于分析的ESX虚拟机
  五、使用Dorothy

  1.将.exe或.bat文件拷贝到$yourdorothyhome/opt/bins/manual/
  2.执行dorothy
  1. #apt-get install tcpdump sudo7
复制代码
Dorothy的使用:
  1. #apt-get install tcpdump sudo8
复制代码
执行样例:
  1. #apt-get install tcpdump sudo9
复制代码
Dorothy2首次执行时,它会指引用户对分析环境进行配置,相关配置步骤如下:
  配置环境变量($home/.dorothy.yml)
  配置BFM源($dorothyhome/etc/sources.yml)
  配置沙箱环境($dorothyhome/etc/sandboxes.yml)
  配置分析设置文件($dorothyhome/etc/profiles.yml)
  配置步骤完成之后,用户可以随时修改和编辑配置文件。
  许可证信息
  1. #useradd dorothy0
复制代码
  * 参考来源: Dorothy2 ,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM
刘素英 发表于 2016-12-9 19:20:02
医生叫我进行光合作用,不要熬夜了。
回复 支持 反对

使用道具 举报

我要投稿

推荐阅读


回页顶回复上一篇下一篇回列表
手机版/c.CoLaBug.com ( 粤ICP备05003221号 | 文网文[2010]257号 | 粤公网安备 44010402000842号 )

© 2001-2017 Comsenz Inc.

返回顶部 返回列表