← LeisureLinux 文章索引
LeisureLinux · 微信公众号文章

告别 VirusTotal 限制:手把手教你搭建开源恶意软件扫描平台 Malice

安全/漏洞 阅读原文(微信)↗

Malice 被誉为"开源版的 VirusTotal",它通过 Docker 容器化技术,将各种开源和商业的扫描引擎(如 ClamAV、Sophos、Comodo 等)集成在一起,提供了一个高度可扩展的反恶意软件分析框架。

一、 什么是 Malice? 在恶意软件分析领域,VirusTotal 是标配。但对于安全研究员来说,VT 存在两个痛点:隐私泄露(上传的文件会被各厂商获取)和API 成本。 Malice 应运而生。它是一个基于 Go 语言开发、完全容器化的开源框架。其核心理念是:"让恶意软件分析变得像运行一个 Docker 容器一样简单。" 二、 核心架构分析 Malice 的精妙之处在于它的插件化设计: * Container Based: 每一个扫描引擎(Avira, ESET, Kaspersky 等)都被封装在一个独立的 Docker 容器中。 * 数据存储: 扫描结果默认存储在 Elasticsearch 中,前端通过 Kibana 或 Malice 自带的 Web UI 进行展示。 * 管道化工作流: 样品的上传、静态分析、动态扫描、结果汇总,全部通过自动化流水线完成。 三、 环境搭建(以 Linux 为例) 作为安全研究员,我们建议在隔离的 Linux 环境(如 Ubuntu)中部署。由于 Malice 严重依赖 Docker,请确保已安装最新版 Docker。 # 下载 Malice 二进制文件 wget https://github.com/maliceio/malice/releases/download/v0.x.x/malice_linux_64-bit

chmod +x malice_linux_64-bit\
sudo mv malice_linux_64-bit /usr/local/bin/malice\

# 启动 Malice 基础服务(Elasticsearch 等) malice elk

四、 如何高效利用 Malice? 1. 基础扫描:多引擎并行测试 当你拿到一个可疑的 sample.exe,无需手动上传,只需一行命令: malice scan sample.exe

Malice 会自动调用所有已激活的引擎镜像进行并发扫描,并实时返回结果。 2. 构建私有分析流水线 你可以通过编写简单的脚本,将 Malice 集成到你的蜜罐或邮件网关中。一旦捕获样本,自动触发 Malice 扫描,并将告警推送到 Slack 或 Webhook。 3. 自定义插件开发 Malice 支持自定义插件。如果你发现了一个新的 YARA 规则或者开发了一个特定的脱壳工具,可以将其打包成 Docker 镜像,只需符合 Malice 的输入输出规范,即可无缝集成。

五、 总结与展望 Malice 虽然在几年前更新较为频繁,但其设计思路在今天依然领先。对于企业内部建立私有化、不泄密的病毒检测平台,它是最佳的基石。

安全研究员点评: Malice 的价值不在于它取代了谁,而在于它提供了一种"工程化"处理样本的思维。在处理大规模样本集时,这种容器化的扩展能力是无与伦比的。

给读者的彩蛋(LeisureLinux 关注者专属) 如果你在 Linux 环境下配置 Docker 或遇到网络代理导致镜像拉取失败等问题,可以移步 B 站同名频道"LeisureLinux"。我们在往期视频中分享过大量关于 Linux 系统优化和容器排障的干货技巧,助你快速搞定 Malice 的部署环境!

本文整理自微信公众号 LeisureLinux 的原创内容(Linux / AI / 安全 硬核技术)。

· 阅读原文(微信公众号)

· 关注公众号 LeisureLinux,第一时间获取技术深度内容。

LeisureLinux 公众号二维码(微信扫一扫关注)