Malheur 项目技术文档
1. 安装指南
依赖项
在安装 Malheur 之前,请确保系统中已安装以下依赖项:
- libconfig >= 1.4
- libarchive >= 3.1.2
Debian & Ubuntu Linux
在 Debian 和 Ubuntu 系统上,需要安装以下包:
gcc
libconfig9-dev
libarchive-dev
如果需要从 GIT 仓库引导 Malheur 或操作 automake/autoconf 配置,还需要安装以下包:
automake
autoconf
libtool
Mac OS X
在 Mac OS X 上,需要安装 Xcode 并确保 gcc
可用。此外,通过 Homebrew 安装以下包:
libconfig
libarchive
(来自 homebrew-alt)
OpenBSD
在 OpenBSD 上,需要安装以下包。注意,需要使用 gmake
而不是 make
来构建 Malheur:
gmake
libconfig
libarchive
如果需要从 GIT 仓库引导 Malheur,还需要安装以下包:
autoconf
automake
libtool
编译与安装
从 GIT 仓库
-
运行以下命令以引导项目:
$ ./bootstrap
-
配置、编译并安装:
$ ./configure [options] $ make $ make check $ make install
从 tarball
- 解压 tarball 后,运行以下命令:
$ ./configure [options] $ make $ make check $ make install
配置选项
--prefix=PATH
:设置安装目录的前缀。默认情况下,Malheur 安装在/usr/local
。如果需要安装到其他位置,可以使用此选项。
2. 项目使用说明
Malheur 是一个用于自动分析恶意软件行为的工具。它支持以下四种基本分析操作:
-
提取原型:从给定的报告集中,Malheur 识别出代表整个数据集的原型子集。这些原型提供了记录行为的快速概览,并可用于指导手动检查。
-
行为聚类:Malheur 自动识别包含相似行为的报告组(聚类)。聚类有助于发现新的恶意软件类别,并为制定特定的检测和防御机制(如反病毒签名)提供基础。
-
行为分类:基于先前聚类的报告,Malheur 能够将未知行为分配到已知的恶意软件组中。分类有助于识别新的和未知的恶意软件变种,并可用于在手动检查之前过滤程序行为。
-
增量分析:Malheur 可以增量方式应用于大数据集的分析。通过分块处理报告,可以显著减少运行时间和内存需求。这使得长期应用 Malheur(例如每日分析新到的恶意软件程序)成为可能。
3. 项目 API 使用文档
Malheur 提供了用于分析恶意软件行为的 API。以下是 API 的基本使用说明:
提取原型
$ malheur extract -i input_reports -o output_prototypes
-i input_reports
:指定输入的报告文件或目录。-o output_prototypes
:指定输出的原型文件。
行为聚类
$ malheur cluster -i input_reports -o output_clusters
-i input_reports
:指定输入的报告文件或目录。-o output_clusters
:指定输出的聚类结果文件。
行为分类
$ malheur classify -i input_reports -o output_classification
-i input_reports
:指定输入的报告文件或目录。-o output_classification
:指定输出的分类结果文件。
增量分析
$ malheur incremental -i input_reports -o output_incremental
-i input_reports
:指定输入的报告文件或目录。-o output_incremental
:指定输出的增量分析结果文件。
4. 项目安装方式
Malheur 可以通过以下两种方式安装:
-
从 GIT 仓库:
- 克隆仓库并运行
./bootstrap
。 - 配置、编译并安装:
$ ./configure [options] $ make $ make check $ make install
- 克隆仓库并运行
-
从 tarball:
- 解压 tarball 后,运行:
$ ./configure [options] $ make $ make check $ make install
- 解压 tarball 后,运行:
通过以上步骤,您可以成功安装并使用 Malheur 进行恶意软件行为的自动分析。
- mybatis-plusmybatis 增强工具包,简化 CRUD 操作。 文档 http://baomidou.com 低代码组件库 http://aizuda.comJava00
- open-eBackupopen-eBackup是一款开源备份软件,采用集群高扩展架构,通过应用备份通用框架、并行备份等技术,为主流数据库、虚拟化、文件系统、大数据等应用提供E2E的数据备份、恢复等能力,帮助用户实现关键数据高效保护。HTML055
- 每日精选项目🔥🔥 12.27日推荐:解锁高效测试的新工具-Shortest🔥🔥 每日推荐行业内最新、增长最快的项目,快速了解行业最新热门项目动态~~018
- Cangjie-Examples本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。Cangjie041
- 毕方Talon工具本工具是一个端到端的工具,用于项目的生成IR并自动进行缺陷检测。Python039
- PDFMathTranslatePDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/DockerPython03
- advanced-javaAdvanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。JavaScript0103
- taro开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/TypeScript09
- Yi-CoderYi Coder 编程模型,小而强大的编程助手HTML012
- excelizehttps://github.com/xuri/excelize Excelize 是 Go 语言编写的一个用来操作 Office Excel 文档类库,基于 ECMA-376 OOXML 技术标准。可以使用它来读取、写入 XLSX 文件,相比较其他的开源类库,Excelize 支持操作带有数据透视表、切片器、图表与图片的 Excel 并支持向 Excel 中插入图片与创建简单图表,目前是 Go 开源项目中唯一支持复杂样式 XLSX 文件的类库,可应用于各类报表平台、云计算和边缘计算系统。Go02