这是个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学习笔记的更多相关文章

  1. iOS 沙盒(sandbox)结构 使用 实例

    声明:该文档是经过自己查找网上的资料以及自己多年的经验后而总结出来的,希望对大家有所帮助,有什么不恰当支出还请大家多指点! iOS中的沙盒机制(SandBox)是一种安全体系,它规定了应用程序只能在为 ...

  2. 【计算机】基本概念的理解 —— 沙盒(sandbox)、交互式计算/编程/应用

    web scraper:网络铲: scraper:n. 刮刀:铲土机:守财奴: 1. 交互式计算/编程/应用(interactive computing/application/programming ...

  3. 【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!【2012-12-11日更新获取”产品付费数量等于0的问题”】

    转的别人的 看到很多童鞋问到,为什么每次都返回数量等于0?? 其实有童鞋已经找到原因了,原因是你在 ItunesConnect 里的 “Contracts, Tax, and Banking”没有完成 ...

  4. iOS 文件操作:沙盒(SandBox)、文件操作(FileManager)、程序包(NSBundle)

    版权声明:本文为博主原创文章,转载请声明出处:http://blog.csdn.net/jinnchang 1.沙盒机制介绍 iOS 中的沙盒机制(SandBox)是一种安全体系.每个 iOS 应用程 ...

  5. Swift iOS 文件操作:沙盒(SandBox)、程序包(NSBundle)

    1.沙盒机制介绍 iOS 中的沙盒机制(SandBox)是一种安全体系.每个 iOS 应用程序都有一个单独的文件系统(存储空间),而且只能在对应的文件系统中进行操作,此区域被称为沙盒.所有的非代码文件 ...

  6. 【精】iOS 文件操作:沙盒(SandBox)、文件操作(FileManager)、程序包(NSBundle)

    1.沙盒机制介绍 iOS 中的沙盒机制(SandBox)是一种安全体系. 每一个 iOS 应用程序都有一个单独的文件系统(存储空间).并且仅仅能在相应的文件系统中进行操作,此区域被称为沙盒. 全部的非 ...

  7. iOS沙盒(sandbox)

    iOS沙盒 每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,默认下iOS应用只能访问自己的沙盒 extenaion是iOS8新开放的一种对几个固定系统区域的扩展机制,它可以在一定程度上弥补 ...

  8. <转>iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!

    原文地址:http://blog.csdn.net/xiaominghimi/article/details/6937097 //——2012-12-11日更新   获取"产品付费数量等于0 ...

  9. 【转】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程

    http://blog.csdn.net/xiaominghimi/article/details/6937097 //——2012-12-11日更新   获取"产品付费数量等于0这个问题& ...

随机推荐

  1. tcp设置超时重传

    TCP超时和重传的基础是怎样根据给定连接RTT设置RTO,若TCP先于RTT开始重传,可能会在网络中引入不必要的重复数据,反之,若延迟至远大于RTT的间隔发送重传数据,整体网络利用率会随之下降.由于R ...

  2. luogu2513 逆序对数列

    我们令\(f[i][j]\)表示\(i\)的全排列中,逆序数为\(j\)的个数. 我们考虑在\(i-1\)的排列中插入\(i\).\(k\)是这次更新会导致增加多少逆序数. 则\(\begin{ali ...

  3. 资深专家深度剖析Kubernetes API Server第1章(共3章)

    欢迎来到深入学习Kubernetes API Server的系列文章,在本系列文章中我们将深入的探究Kubernetes API Server的相关实现.如果你对Kubernetes的内部实现机制比较 ...

  4. Kbuild、Kconfig、make menuconfig、.config、Makefile之间的关系

    今天突发奇想,想在这里分享下比喻分析Kbuild ---->去饭店吃饭的过程.   1.Kconfig --->饭店的菜单 2.条件编译选项--->菜单中的每一盘菜,可以选择这个菜的 ...

  5. Android自动化----adb shell,appium,uiautomator2

    1.区别 1,adb shell脚本的方式 不但可以在有电脑的情况下使用,通过数据线连接电脑然后adb shell命令,而且还可以打包成app,在手机的终端使用adb shell命令. 2,appiu ...

  6. eclipse字体

  7. 《C程序设计II》简易计算器,杨辉,数字杯子图形

    <C程序设计II>简易计算器,杨辉,数字杯子图形.<C程序设计II>简易计算器,杨辉,数字杯子图形.<C程序设计II>简易计算器,杨辉,数字杯子图形. <C程 ...

  8. CSS基础(续)

      老男孩第39天 老男孩 CSS  CSS的常用属性 4 文本属性 font-size: 10px; text-align: center; 横向排列 line-height: 200px; 文本行 ...

  9. C#获取单元格值(使用NPOI插件)

    /// <summary> /// 获取单元格的值 /// </summary> /// <param name="item"></par ...

  10. linux输入输出及vim管理

    一.理解系统的输入输出 输入输出系统是计算机重要组成部分,是沟通计算机与外界的桥梁. 二.管理输入输出的符号 1.输出重定向 >                       ##重定向正确输出 ...