malcontent
v1.7.1
_ _ _. . _ _ _ . ___ _. _ . ___
( | ) (_| |_ (_ (_) ( _) | (/_ ( _) |
subtle malware discovery tool
恶意发现通过上下文,差分分析和14,000多个Yara规则的魔术发现供应链妥协。
________ ________ ________ ________
| | | | | | | |
| v1.0.0 | => | v1.0.1 | => | v1.0.2 | => | v1.0.3 |
|________| |________| |________| |________|
unchanged HIGH-RISK decreased
risk increase risk
不良有3种操作模式:
diff :两个程序之间的风险加权差分分析analyze :对程序能力的深入分析scan :恶意内容的基本扫描恶意是在Linux上运行的最佳分析程序。尽管如此,它还是针对为其他Unix平台(例如MacOS)和较小程度上窗口设计的程序而表现出色的。
Malcontent发现恶意软件的最强大方法是通过针对CI/CD工件的差分分析。当在构建系统中使用时,恶意是与传统恶意软件扫描仪相比具有两个重要的上下文优势:
以3CX折衷为例,不符号的琐碎表面出乎意料地表达了libffmpeg的高风险:

以“ ++”开头的每条线代表新添加的功能。每个功能都根据恶意软件的独特性而具有风险分数。
像基于差异(1)命令一样,不良情况可以在两个二进制文件或目录之间差异。它还可以区分两个存档文件,甚至可以差异两个OCI映像。这里有一些有用的标志:
--format=markdown :在Markdown中输出以用于GitHub操作--min-file-risk=critical :仅显示关键级别更改的差异--quantity-increases-risk=false :禁用启发式方法,由于结果频率而增加文件的关键性--file-risk-change :仅在源文件和目标文件具有不同的风险时仅显示修改文件的差异--file-risk-increase :仅当目标文件的风险高于源文件时,仅显示修改文件的差异恶意软件的最基本功能扫描目录。在这种模式下,恶意是非常偏执的,所以期望一些假阳性:

您也可以扫描容器图像: mal scan -i cgr.dev/chainguard/nginx:latest
有用的标志:
--include-data-files :包括似乎不为程序的文件--processes :扫描主动过程二进制(实验)要列举程序的功能,请使用mal analyze 。例如:

分析模式散发出经常在恶意软件中看到的功能列表,并按风险水平进行分类。它与各种文件格式和脚本语言的程序一起使用。
CRITICAL发现应被视为恶意。有用的标志包括:
--format=json :输出到JSON进行数据解析--min-risk=high :仅显示高或关键的风险发现docker pull cgr.dev/chainguard/malcontent:latest
要求:
Linux或MacOS用户可以运行以下命令来安装必要的依赖项,除了GO:
brew install yara || sudo apt install libyara-dev
|| sudo dnf install yara-devel || sudo pacman -S yara
|| sudo zypper install yara安装不符号:
go install github.com/chainguard-dev/malcontent/cmd/mal@latest不良是开源的!如果您有兴趣贡献,请查看我们的开发指南。向我们发送拉动请求,其余的我们将为您提供帮助!