【杜鹃沙盒】Cuckoo SandBox学习笔记
这是个github上开源前十的项目之一,笔者只完成学习了部分功能,前来分享点经验
整个工程 连接地址 :https://github.com/cuckoosandbox/cuckoo
0x01调试运行 学习代码很关键的就是调试了 所以首先奉上点调试小技巧
一个编译器最基本的就是调试了,所以先介绍下基本的调试啊
F9:调试运行,调试运行的过程中按F9,会直接走到下一个断点。
F8:单步运行,相当于VS的F10
F7:也是单步运行,不过近函数,相当于VS的F11
Ctrl+Alt+B:进函数 查看函数的具体内荣,相当实用,必备
Ctrl+F:搜索关键的变量函数,查看函数或者变量之间拖拽到watches里面进去就行了

0x02 函数讲解篇
首先是读配置文件的信息
第一箭头,合成的绝对路径


读的过程很明细了 调试结合配置文件信息
Section = config(文件名),Key = hello_world此类的 keyvalue=on
这样变历就可以把配置文件关键信息一一读取出来


然后设置Server的信息 定了个类,配置Server类的相关信息,端口,IP,注入文件的路径,分析包的类型什么的

然后判断是否PE文件 exe.sys.dll中一个,这是属于分析PE文件那一块儿的

接下就是同样相似的步骤配置我们的虚拟机的相关信息,过程差不多,这里就不贴代码讲解了
然后是利用TCP 绑定端口,开启线程监听

对端口进行监听,然后就可以开启我们的XML-RPC构建主机方面的连接了 url = http://192.168.1.10:8000

既然你要连接人家,构建好了好之后当然要进行连接,下面是等待虚拟机的连接
用了个延迟等待的函数,然后判断GetSatutau()得到链接状态,一旦连接上 退出等待 开始分析

然后构建需要传输文件的路径,遍历,压缩 ,使用xmlrpclib.Binary(zip_Data.getvalue())
传送压缩包.os_walk遍历路径,压缩传送分析目录的所有文件

虚拟机进行解压

虚拟机接受到相应需要分析的文件后就可以开始注入分析了
接下来就可以构建分析线程文件的路径,subprocess.Popen.开启线程,启动分析

而客户端主要是这几句,使用SimpleXMLRPCServer,构建RPC连接 函数的调用都在服务端

Analyzer.py分析过程不是很难,提权,创建管道,进程间通信,然后调用写好的,LoadExe.exe,Target.exe,Dll,进行注入就OK了 ,大部分注入的功能都实现在C++里面,主要有远程注入和APC注入;

最后附上 成功运行结果 希望对学习 这款恶意分析系统的人有所帮助

【杜鹃沙盒】Cuckoo SandBox学习笔记的更多相关文章
- iOS 沙盒(sandbox)结构 使用 实例
声明:该文档是经过自己查找网上的资料以及自己多年的经验后而总结出来的,希望对大家有所帮助,有什么不恰当支出还请大家多指点! iOS中的沙盒机制(SandBox)是一种安全体系,它规定了应用程序只能在为 ...
- 【计算机】基本概念的理解 —— 沙盒(sandbox)、交互式计算/编程/应用
web scraper:网络铲: scraper:n. 刮刀:铲土机:守财奴: 1. 交互式计算/编程/应用(interactive computing/application/programming ...
- 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!【2012-12-11日更新获取”产品付费数量等于0的问题”】
转的别人的 看到很多童鞋问到,为什么每次都返回数量等于0?? 其实有童鞋已经找到原因了,原因是你在 ItunesConnect 里的 “Contracts, Tax, and Banking”没有完成 ...
- iOS 文件操作:沙盒(SandBox)、文件操作(FileManager)、程序包(NSBundle)
版权声明:本文为博主原创文章,转载请声明出处:http://blog.csdn.net/jinnchang 1.沙盒机制介绍 iOS 中的沙盒机制(SandBox)是一种安全体系.每个 iOS 应用程 ...
- Swift iOS 文件操作:沙盒(SandBox)、程序包(NSBundle)
1.沙盒机制介绍 iOS 中的沙盒机制(SandBox)是一种安全体系.每个 iOS 应用程序都有一个单独的文件系统(存储空间),而且只能在对应的文件系统中进行操作,此区域被称为沙盒.所有的非代码文件 ...
- 【精】iOS 文件操作:沙盒(SandBox)、文件操作(FileManager)、程序包(NSBundle)
1.沙盒机制介绍 iOS 中的沙盒机制(SandBox)是一种安全体系. 每一个 iOS 应用程序都有一个单独的文件系统(存储空间).并且仅仅能在相应的文件系统中进行操作,此区域被称为沙盒. 全部的非 ...
- iOS沙盒(sandbox)
iOS沙盒 每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,默认下iOS应用只能访问自己的沙盒 extenaion是iOS8新开放的一种对几个固定系统区域的扩展机制,它可以在一定程度上弥补 ...
- <转>iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!
原文地址:http://blog.csdn.net/xiaominghimi/article/details/6937097 //——2012-12-11日更新 获取"产品付费数量等于0 ...
- 【转】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程
http://blog.csdn.net/xiaominghimi/article/details/6937097 //——2012-12-11日更新 获取"产品付费数量等于0这个问题& ...
随机推荐
- delay JS延迟执行
window.onscroll = function () { throttle(trrigerAdd,window);};function trrigerAdd(){ var $dHei ...
- springboot mybatis自定义枚举enum转换
原文链接:https://blog.csdn.net/u014527058/article/details/62883573 一.概述 在利用Spring进行Web后台开发时,经常会遇到枚举类型的绑定 ...
- eclipse项目中的java文件导入后变为空心J问题
1,选择工程名字右键——>属性——>JavaBuild Path会看到右侧Source标签中为空白 2,点击Add Folder...选择如图所示的src包和相关的配置文件包,点击确定: ...
- POJ3074 Sudoku 剪枝深(神?)搜
emm...挺秀的...挺神的? 每行,每列,每宫用一个二进制数表示选或没选的状态,刚开始设没选为1,然后更改状态的时候异或一下就好了: 这样可以通过lowbit取出每一个没有选过的数:(妙啊? 关于 ...
- 2016 Multi-University Training Contest 10 [HDU 5861] Road (线段树:区间覆盖+单点最大小)
HDU 5861 题意 在n个村庄之间存在n-1段路,令某段路开放一天需要交纳wi的费用,但是每段路只能开放一次,一旦关闭将不再开放.现在给你接下来m天内的计划,在第i天,需要对村庄ai到村庄bi的道 ...
- Hie with the Pie(状压DP+可以经过多次相同的点要全部走过的最短回路)
大意:一个人要送n份货,给出一个矩阵,表示任意两个点间的直接路径长度,求从起点0送完这n份货(到达指定的n个地点)再回到起点0的最短时间.经过任意顶点的次数不限. 分析:既然是可以过多个点,那我们可以 ...
- ajax加载菊花loading效果
Ajax异步请求的时候,一般都会利用一个动态的gif小图片来制作一个Ajax Loading,以便增加用户体验. 这里我们可以使用Spin.js,该js脚本压缩后5k,可以不用任何图片,任何外部CSS ...
- caffe 日志保存以及matlab绘制方法(windows以及ubuntu下)
caffe 用matlab解析日志画loss和accuracy clc; clear; % load the log file of caffe model fid = fopen('log-prev ...
- FCN用卷积层代替FC层原因(转)
分类任务 CNN对于常见的分类任务,基本是一个鲁棒且有效的方法.例如,做物体分类的话,入门级别的做法就是利用caffe提供的alexnet的模型,然后把输出的全连接层稍稍修改称为自己想要的类别数,然后 ...
- Windows下 virtualenv 使用
Windows下 virtualenv 使用 win python virtualenv 首先在电脑上安装两个不同版本的python mkvirtualenv --python C:\Python34 ...