恶意软件分析工具 Cuckoo 和 Malwasm

简介: 分析恶意软件(malicious ware)有很多方法。请容我不自量力推荐两个开放源代码的免费系统 Cuckoo 和 MalWasm 。这是一个虚拟化环境下的恶意软件分析系统。

分析恶意软件(malicious ware)有很多方法。请容我不自量力推荐两个开放源代码的免费系统 Cuckoo 和 MalWasm 。这是一个虚拟化环境下的恶意软件分析系统。


基于虚拟化进行程序分析有很多优点:

  • 整机内存可以dump出来,并且可以随时做snapshot;
  • 多数网络通讯可以分析;
  • 无论杀毒软件如何吹嘘它们的启发式分析引擎,但是xss的故事已经证明区区XOR加密就可以将他们全部bypass。但是行为分析锁定的是行为不是吗?
  • 综上,对浏览器的攻击可以通过分析文件行为进行。攻击浏览器不是什么新鲜事了,但是浏览器和游戏程序差不多庞大、多种运行机制(JS和flash、各种网银的activeX都有自己的Rendor),直接使用键盘调试恐怕是要按到手抽筋!
  • 效率和人性化,真的是很赞!


言归正传,继续看本文的主角Cuckoo和MalMAsm吧!

Cuckoo 的全称是OpenSource Cuckoo Sandbox Project。它由我所尊敬的一些安全先驱开发,其中一些人也是开源honeyspot 的contributor。实际上在2010年的时候Cuckoo还是honeyNET的一个子项目。这些前辈独到的蜜罐网络研发的技巧,让Cuckoo可以轻而易举的进行URL分析、网络通讯分析、程序分析、pdf分析。


整体上,Cuckoo基于虚拟机技术,使用中央控制系统和模块设计,结合python的自动化特征,已经是颇为自动化的恶意软件行为研究环境。


出于研发历史的考量,个人推荐使用debian或ubuntu主机安装virtualbox当作Cuckoo Host,WinXP做guest。实际上Cuckoo也支持Macox和KVM 等其他环境,也支持Windows7做guest—不过调试环境还是稳定优先吧?

image.png

如果只是纯粹为程序的抽象行为做分析,则也有傻瓜的平方级别的工具MalWAsm。按照官方的document进行安装之后,

  • 在CuckooSandbox环境直接运行可疑的东西;
  • MalMasm会利用pintool将程序行为全部log;
  • MalMasm将所有行为存储在PostGres数据库;
  • MalMAsm 有web front,研究员可以直接在网页里查看程序行为;


要说您不懂汇编也想分析分析软件、网页什么的,这2款开源环境应该够您用了。

如果说您是资深分析人士,利用这些环境应该可以大大提升分析效率。哪怕是程序进行了加密,行为级别的记录也很有帮助吧!


不过有3点提醒:

  1. virtualization 是guest awareness 的。如果恶意软件的作者有足够的反调试经验,则在虚拟机上运行程序的时候,它的行为会与在物理机上运行的行为将不一样。虽然说足够聪明的您也有足够的手段让程序不awared,但是程序作弊的可能还是需要考虑。
  2. 加密的tcp通讯几乎不可能直接分析。在进行进一步研究之前,还是看看程序行为再找调试点比较好。例如我发在qq空间的帖子说过,https是http+ssl,截获ssl封装之前的http通讯就基本够专业了—具体方法可以网上搜索。当然碰见利用SOAP的人渣还要再比他们还要人渣一点才能分析—话说恶意软件一般会写那么庞大吗(我可不识数)?
  3. 干这行的人渣比较多,关系比较硬的也很打不死的也存在哦。不是说你发现什么问题就可以公开的是不是?人家是老虎你还不如苍蝇的可能性绝对存在是不是?低调比较必要是不是?


我听见哪位读着说“再傻瓜一些的傻瓜三次方的分析环境”您也需要?哎呀,三次元的傻瓜是啥意思来的?

相关文章
|
JavaScript 前端开发 数据安全/隐私保护
Vue封装组件并发布到npm仓库
前言 使用Vue框架进行开发,组件封装是一个很常规的操作。一个封装好的组件可以在项目的任意地方使用,甚至我们可以直接从npm仓库下载别人封装好的组件来进行使用,比如iview、element-ui这一类的组件库。但是每个公司的业务场景可能不同,开发人员还是得必须封装自己得组件,如果换了一个项目,那么我们就只能复制组件代码到新的项目里面去了,这样稍显麻烦,其实我们可以将组建上传到npm仓库,要用的时候可以直接从npm安装使用。 总结下来有两点好处: 方面使用,任何项目无缝衔接。 可作为开源项目,积累经验。
1225 0
Vue封装组件并发布到npm仓库
|
11月前
|
机器学习/深度学习 搜索推荐 算法
用数据给婚恋 App 把把脉:让匹配更靠谱、聊天更顺畅、留存更健康
用数据给婚恋 App 把把脉:让匹配更靠谱、聊天更顺畅、留存更健康
769 8
|
自然语言处理 安全 数据挖掘
通过 MCP 构建企业级数据分析 Agent
本文介绍了使用阿里云实时数仓 Hologres、函数计算 FC 和通义大模型 Qwen3 构建企业级数据分析 Agent 的方法。通过 MCP(模型上下文协议)标准化接口,解决大模型与外部工具和数据源集成的难题。Hologres 提供高性能数据分析能力,支持实时数据接入和湖仓一体分析;函数计算 FC 提供弹性、安全的 Serverless 运行环境;Qwen3 具备强大的多语言处理和推理能力。方案结合 ModelScope 的 MCP Playground,实现高效的服务化部署,帮助企业快速构建跨数据源、多步骤分解的数据分析 Agent,优化数据分析流程并降低成本。
1530 30
|
数据挖掘 Python
【Python】已解决:Python pandas读取Excel表格某些数值字段结果为NaN问题
【Python】已解决:Python pandas读取Excel表格某些数值字段结果为NaN问题
2085 0
|
SQL 关系型数据库 MySQL
MySQL Workbench的安装与配置
MySQL Workbench的安装与配置
|
存储 数据采集 数据处理
【数据结构进阶】位图
位图是一种高效的数据结构,通过二进制的0和1表示数据的存在状态,适用于海量数据的压缩存储与快速检索。本文从概念、实现到应用场景全面解析位图。核心思想是将数据映射到位图的比特位,利用位运算实现O(1)时间复杂度的增删查操作。文章通过C++代码示例展示了位图的三大接口(set、unset、test)实现,并对比自定义位图与标准库`bitset`的异同。位图优点在于极高的时间和空间效率,但仅适用于整型数据。它为布隆过滤器等高级结构奠定了基础,在数据处理领域具有重要价值。
1117 1
|
人工智能 自然语言处理 前端开发
三大行业案例:AI大模型+Agent实践全景
本文将从AI Agent和大模型的发展背景切入,结合51Talk、哈啰出行以及B站三个各具特色的行业案例,带你一窥事件驱动架构、RAG技术、人机协作流程,以及一整套行之有效的实操方法。具体包含内容有:51Talk如何让智能客服“主动进攻”,带来约课率、出席率双提升;哈啰出行如何由Copilot模式升级为Agent模式,并应用到客服、营销策略生成等多个业务场景;B站又是如何借力大模型与RAG方法,引爆了平台的高效内容检索和强互动用户体验。
4619 5
|
机器学习/深度学习 数据采集 DataWorks
数据分析经典案例重现:使用DataWorks Notebook 实现Kaggle竞赛之房价预测,成为数据分析大神!
Python是目前当之无愧的数据分析第一语言,大量的数据科学家使用Python来完成各种各样的数据科学任务。本文以Kaggle竞赛中的房价预测为例,结合DataWorks Notebook,完成数据加载、数据探索、数据可视化、数据清洗、特征分析、特征处理、机器学习、回归预测等步骤,主要Python工具是Pandas和SKLearn。本文中仅仅使用了线性回归这一最基本的机器学习模型,读者可以自行尝试其他更加复杂模型,比如随机森林、支持向量机、XGBoost等。
1226 8
|
Java
如何获取第三方应用授权app_auth_token
一,说明    1.第三方应用文档:[url]https://docs.open.alipay.com/20160728150111277227/intro[/url]     2.作用:代替商户发起相关逻辑请求 二,配置    1.
6295 12
|
存储 弹性计算 固态存储
阿里云服务器按量付费是什么?划算吗?
阿里云ECS按量付费模式,先使用后付费,按小时结算,适合临时扩展、测试、电商抢购等短期应用。开通需账户余额不低于100元。实例、镜像、云盘、带宽等支持按量计费,价格根据配置和地区而异。可随时转为包年包月。
2823 1