
- 打开微信,搜索「软件教程管家」关注,或长按下方二维码关注
- 回复关键词 malcontent
- 公众号自动回复网盘链接,点击即可保存下载
打开微信扫一扫关注或搜索【软件教程管家】
如果团队需要在构建或审计流程里,检查二进制、源代码、归档文件和容器镜像中藏着的可疑能力,Malcontent 值得纳入候选。它是面向软件供应链检测的 Go 命令行工具,结合上下文分析、差异分析与 YARA 规则,把程序到底能干什么枚举出来,再把结果以 CI/CD 能直接消费的格式输出,尤其适合以 Linux 为主的供应链安全流程。
| 项目名称 | Malcontent |
|---|---|
| 仓库地址 | chainguard-dev/malcontent |
| 开发语言 | Go |
| 开源协议 | Apache-2.0 |
| Star 数 | 约 682(截至 2026-11-12,仍在增长) |
| 运行方式 | Go 命令行工具,可接入 CI/CD |
Malcontent 是什么
Malcontent 要解决的问题很具体:你拿到一个程序或一份代码,怎么知道它有没有被植入恶意能力?它的做法是把目标拆开看,分析程序调用了哪些系统能力、命中了哪些可疑行为模式,再用 YARA 规则做匹配,最后给出能力清单和风险提示,而不是只告诉你一句有问题或没问题。
它覆盖的输入类型很广:二进制文件、源代码、归档文件、容器镜像都能直接分析;输出格式也照顾了两种用法,人类可读的文本和终端界面,以及 JSON、YAML、Markdown 这类方便脚本和流水线处理的格式。
核心功能
- 三种工作模式:analyze 枚举程序能力,diff 做风险加权的差异分析,scan 按阈值扫描,三种模式可以组合进不同的检查流程。
- 多格式二进制分析:支持 a.out、ELF、Mach-O 和 PE 等常见二进制格式,不用先转换格式再分析。
- 多语言源码分析:能分析 Go、Python、Ruby、JavaScript/TypeScript、Shell,以及 AppleScript、C、PHP、Perl 等常见编程语言和脚本。
- 归档与容器镜像:支持归档文件与容器镜像分析,可以处理多平台镜像中的各个平台文件系统。
- 内置 YARA 规则:内置超过一万四千条 YARA 规则,规则来源包括 Avast、Elastic、FireEye、Mandiant、Nextron 和 ReversingLabs,并提供面向隔离网络的嵌入式规则支持。
- 多种输出格式:支持 JSON、YAML、Markdown、文本和终端界面,方便接入 CI/CD 或人工复核。
供应链检测:适用场景
- 构建流水线检查:在构建流程里扫描二进制与源代码,依赖或产物被改动时及时发现。
- 容器镜像发布前检查:镜像发布前先扫一遍,确认镜像里没有多余的可疑能力。
- 版本差异分析:用 diff 对比两个来源或两个版本的程序,定位新增的风险能力。
- 恶意样本能力枚举:拿到可疑样本后先枚举它能干什么,再决定深入分析的方向。
- 隔离网络检测:内网或隔离环境下用内置规则做检测,不依赖运行时从外部拉取规则。
上手步骤
Malcontent 以 Go 命令行工具形式运行,具体安装与命令用法以仓库 README 为准,大致流程如下:
- 准备运行环境:确认本机有 Go 命令行运行环境,以及待分析目标的访问权限。
- 按 README 安装:跟着仓库 README 的说明完成安装,确认 malcontent 命令可以正常执行。
- 先用 analyze 摸清能力:拿一个已知的干净目标跑一遍 analyze,熟悉能力枚举结果的输出形式。
- 用 diff 对比版本:准备新旧两个版本的目标,用 diff 看新增或变化的能力,确认风险加权结果是否符合预期。
- 用 scan 接入流水线:按团队的风险阈值配置 scan,固定输出格式(建议 JSON 或 YAML),把扫描接进 CI/CD。
- 容器镜像单独验证:如果要扫描容器镜像,先确认镜像拉取方式和注册表认证,再跑镜像扫描并复核多平台结果。
注意事项
- Linux 效果最好:README 明确表示该工具对 Linux 程序的分析最适用,对 macOS 等 UNIX 平台次之,对 Windows 的支持相对有限,核心目标是 Windows 样本分析时要先验证覆盖范围。
- 容器镜像扫的是运行时文件系统:扫描的是运行时由镜像层组装出的文件系统,被上层删除的文件不会被扫描,别把它当成镜像层的完整取证。
- 多平台镜像默认逐个平台扫描:如果只需要检查特定平台,记得使用平台筛选参数,否则会多花不少时间。
- 注册表认证要显式配置:容器注册表认证需要显式启用,并依赖指定环境变量,工具不会使用 ambient Docker keychain,私有镜像要提前配好。
- 规则更新与误报要持续复核:公开摘要没有完整说明规则更新、误报处理和自定义规则流程,接入流水线后要定期复核规则变化和扫描结果,阈值不要一次定死。
- 不能替代动态分析:如果核心目标是完整动态行为分析或复杂沙箱编排,Malcontent 的静态能力分析只是其中一环,需要配合其他工具使用。
同类工具对比
| 工具 | 主要用途 | 分析方式 | 适合场景 |
|---|---|---|---|
| Malcontent | 供应链入侵检测 | 能力枚举、差异分析、YARA 规则 | 构建流水线与发布前的可疑能力检查 |
| Trivy | 漏洞与配置扫描 | 对照已知漏洞库匹配 | 容器镜像与依赖的已知漏洞排查 |
| Syft | 生成软件物料清单 | 解析包与依赖关系 | 需要 SBOM 清单的合规与审计场景 |
| 直接编写 YARA 规则 | 自定义规则检测 | 手写规则匹配 | 有明确检测目标、愿意长期维护规则的团队 |
一句话总结:想知道程序到底能干什么、有没有被植入可疑能力,Malcontent 的能力枚举加差异分析是最直接的路子;如果只是查已知漏洞或出物料清单,Trivy 和 Syft 更对口,两类工具可以搭配着用。
下载与源码
GitHub 国内访问较慢,如打不开可多刷新几次

关注「软件教程管家」
回复软件名即取即下:网盘下载链接 + 提取码,一步直达,不用再跳转。
本站资源仅供个人学习交流,请勿用于商业用途。软件与资料版权归原作者所有;如有侵权,请通过公众号「软件教程管家」联系我们,我们将在 24 小时内下架处理。查看免责声明 ›
文章推荐
标签推荐
这款软件怎么样?
平均 暂无评分(0 人评)
取链次数:0
评分与投票来自真实访客,从 0 开始累计;觉得有用就点一下,帮更多人判断这款软件值不值得下。






