开源沙箱CuckooSandbox 介绍与部署
1. 介绍
1.1应用
在工作中很多时候需要自己对一些可以程序,可执行文件进行检测,当然我们可以通过VT,微步,等一些开源的平台进行检测。现在我们通过自己搭建的开源的沙箱进行检测。所谓沙箱,是分离运行程序的一种安全机制。他通常用于执行未经测试的代码,或来自第三方、供应商、不可信网站等的不可信程序。我们可以通过沙箱在一个隔离的环境运行,不可信程序,并且获取他做的信息。
恶意软件分析一般分为两种:静态分析和动态分析。沙箱是动态分析的应用,它不静态分析二进制文件,实时执行并且监控恶意软件。这可以帮助安全分析人员获取不可信软件的细节,比如网络行为等,静态和动态分析不可信程序。生成的结果可以更快帮助我们对恶意软件进行分析。
1.2 关于Cuckoo
Cuckoo是一个开源的自动恶意软件分析系统,我们可以用它来自动运行和分析文件,并可以获取到全面的分析结果,
Cuckoo 可以获取以下类型结果:
1.追踪由恶意软件产生的所有进程执行的调用
2.恶意软件在执行中增删改查情况
3.恶意软件进程的内存输出
4.PCAP包格式的网络流量跟踪
5.在执行软件关键截图
6.机器全部内存输出
1.3 Cuckoo模块和可分析样本类型:
• Generic Windows executables
• DLL files
• PDF documents
• Microsoft Office documents
• URLs and HTML files
• PHP scripts
• CPL files
• Visual Basic (VB) scripts
• ZIP files
• Java JAR
• Python files
• Almost anything else
1.4 体系结构
Cuckoo沙箱是由一个中心管理软件组成,处理样本执行和分析。每一个分析都在一个独立的虚拟或者物理机器中启动,Cuckoo主要组件时主机(用于管理软件)和一些客户机(虚拟机或者物理机进行分析)。
在主机中运行沙箱的核心组件,管理分析过程,客户机是隔离环境,恶意样本在其中隔离分析。Cockoo架构如下:

2.部署
本篇采取docker 的部署方案(有时间下一篇用几台云主机测试)
2.1 依赖环境
• blacktop/yara:3.7
• blacktop/volatility:2.6
• Docker
• Docker-compose
• Ubuntu 16 STL 云主机
2.2 在Ubuntu16 TSL 云主机
安装 Homebrew
开始安装
git clone https://github.com/blacktop/docker-cuckoo
cd docker-cuckoo
docker-compose up -d
For docker-machine
curl $(docker-machine ip):/cuckoo/status
For Docker for Mac
curl localhost:/cuckoo/status
2.3 开始进入
浏览器中输入 http://ip
3. 使用介绍
3.1安装沙箱后,我们应该问自己要达到什么样的目标:
1.这是什么样的文件
2.希望处理多少分析
3.结合那些平台进行分析,各个分析平台各有优势,结合起来更加全面准确
4.对于本文件,预期要得到什么样的信息
4.使用
5.参考
https://github.com/cuckoosandbox/cuckoo
https://github.com/blacktop/docker-cuckoo#dependencies
https://cuckoo.sh/docs/installation/host/
https://cuckoo.sh/docs/installation/index.html
开源沙箱CuckooSandbox 介绍与部署的更多相关文章
- SonarQube介绍及部署
SonarQube介绍及部署 编写人:罗旭成 编写时间:2014-5-28 SonarQube简介 SonarQube是一个用于代码质量管理的开源平台(Java开发),用于管理源代码的质量,可以从七个 ...
- 开源项目renren-fast-vue开发环境部署(前端部分)
开源项目renren-fast-vue开发环境部署(前端部分) 说明:renren-fast是一个开源的基于springboot的前后端分离手脚架,当前版本是3.0 开发文档需要付费,官方的开发环境部 ...
- 开源项目renren-fast开发环境部署(后端部分)
开源项目renren-fast开发环境部署(后端部分) 说明:renren-fast是一个开源的基于springboot的前后端分离手脚架,当前版本是3.0 开发文档需要付费,官方的开发环境部署介绍相 ...
- Fixflow引擎解析(一)(介绍) - Fixflow开源流程引擎介绍
Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...
- 首发福利!全球第一开源ERP Odoo系统架构部署指南 电子书分享
引言 Odoo,以前叫OpenERP,是比利时Odoo S.A.公司开发的一个企业应用软件套件,开源套件包括一个企业应用快速开发平台,以及几千个Odoo及第三方开发的企业应用模块.Odoo适用于各种规 ...
- Redis介绍及部署在CentOS7上(一)
0.Redis目录结构 1)Redis介绍及部署在CentOS7上(一) 2)Redis指令与数据结构(二) 3)Redis客户端连接以及持久化数据(三) 4)Redis高可用之主从复制实践(四) 5 ...
- [转]基于C#的开源GIS项目介绍之SharpMap篇
我是一个刚毕业的GIS本科毕业生,目前在杭州从事GIS软件应用开发.在项目开发中总感觉自己的编程水平还不够,于是想找些开源GIS小项目来研究研究,借以提高自己的编程能力和项目开发能力.在网上搜了一下“ ...
- .NET 开源项目 StreamJsonRpc 介绍[下篇]
阅读本文大概需要 9 分钟. 大家好,这是 .NET 开源项目 StreamJsonRpc 介绍的最后一篇.上篇介绍了一些预备知识,包括 JSON-RPC 协议介绍,StreamJsonRpc 是一个 ...
- 手写开源ORM框架介绍
手写开源ORM框架介绍 简介 前段时间利用空闲时间,参照mybatis的基本思路手写了一个ORM框架.一直没有时间去补充相应的文档,现在正好抽时间去整理下.通过思路历程和代码注释,一方面重温下知识,另 ...
随机推荐
- MVC5+EF6 入门完整教程4 :EF基本的CRUD
上篇文章主要讲了如何配置EF, 我们回顾下主要过程: 创建Data Model ---> 创建Database Context --->创建databaseInitializer---&g ...
- 不可将布尔值直接与true或者1进行比较
不可将布尔值直接与TRUR.FALSE或者"0"."1"进行比较. 根据布尔值的定义,零值为"假"(记为FALSE),任何非零值都是&quo ...
- Java + Selenium 无头浏览器模式
我们说的无头模式,只是在爬虫执行的时候,不再弹出浏览器的界面,只是使用浏览器的内核进行爬取,下面是示例代码: //设置本地chromedriver地址 System.setProperty(" ...
- dfs题型二(迷宫问题)
取自:<王道论坛计算机考研机试指南>6.5节 例 6.7 Temple of the bone(九度 OJ 1461)时间限制:1 秒 内存限制:32 兆 特殊判题:否题目描述:The d ...
- 问题 I: 数字分组2
问题 I: 数字分组2 时间限制: 1 Sec 内存限制: 128 MB[命题人:admin] 题目描述 已知一堆魔法石的重量,问如何分成两堆,使得它们质量和之差最大,但不能大于(可以等于)这些数中 ...
- ansible笔记(7):常用模块之包管理模块
1.yum_repository模块 用于远程管理远程主机上的yum仓库. 参数解析: name:必须参数,用于指定要操作的唯一的仓库ID,也就是.repo配置文件中每个仓库对应的“中括号”内的仓库I ...
- eclipse中引入聚合工程
一般我们在导入项目的时候都是直接import project, 这对普通java 项目,还是 web 项目,或者是单体的项目都是没有问题的,但是在导入聚合项目的时候这样倒入会使maven的子模块没法被 ...
- 【转载】Java多线程
转自:http://www.jianshu.com/p/40d4c7aebd66 引 如果对什么是线程.什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内. 用多线程只有一个目 ...
- typedef基本用法
[代码演示] 例一 例二 例三
- Bugku-web进阶之phpcmsV9(一个靶机而已,别搞破坏。flag在根目录里txt文件里)
phpcmsV9 一个靶机而已,别搞破坏. flag在根目录里txt文件里 http://123.206.87.240:8001/