deepfence/YaraHunter
GitHub: deepfence/YaraHunter
基于 YARA 规则的云原生恶意软件扫描器,可检测容器镜像、运行时容器和文件系统中的入侵指标。
Stars: 1324 | Forks: 157
[
](https://threatmapper.org/docs/yarahunter/)
[](https://github.com/deepfence/YaraHunter/blob/master/LICENSE)
[](https://github.com/deepfence/YaraHunter/stargazers)
[](https://github.com/deepfence/YaraHunter/issues)
[](https://join.slack.com/t/deepfence-community/shared_invite/zt-podmzle9-5X~qYx8wMaLt9bGWwkSdgQ)
# YaraHunter
Deepfence YaraHunter 扫描容器镜像、运行中的 Docker 容器和文件系统,以查找恶意软件的迹象。它使用 [YARA ruleset](https://github.com/deepfence/yara-rules) 来识别与已知恶意软件特征匹配的资源,这可能表明容器或文件系统已遭到破坏。
YaraHunter 可用于以下场景:
- **在构建和测试阶段**:扫描 CI/CD 流水线中的构建产物,报告可能的恶意软件迹象
- **在静态存储阶段**:扫描本地容器镜像,例如在部署前验证它们不包含恶意软件
- **在运行时阶段**:扫描运行中的 Docker 容器,例如当您观察到异常的网络流量或 CPU 活动时
- **针对文件系统**:YaraHunter 可以随时扫描本地文件系统以查找入侵指标
主要功能:
- 扫描运行中和静态存储的容器;扫描文件系统;在 CI/CD 构建操作期间进行扫描
- 随处运行:高度可移植的 Docker 容器形态
- 为自动化而设计:易于部署,易于解析的 JSON 输出
YaraHunter 是一个正在进行中的项目(请查看 [Roadmap](https://github.com/deepfence/YaraHunter/projects) 和 [issues list](issues)),并将集成到 [ThreatMapper](https://github.com/deepfence/ThreatMapper) 威胁发现平台中。我们欢迎任何有助于改进此工具的贡献。
## 快速开始
有关完整说明,请参阅 [YaraHunter 文档](https://threatmapper.org/docs/yarahunter/)。

## 示例:在容器镜像中发现入侵指标
镜像可能因安装了 XMRig 等挖矿软件而遭到破坏。在以下示例中,我们将扫描一个包含 xmrig 软件的合法挖矿镜像,该软件通常是通过漏洞利用安装的:
拉取官方 **yarahunter** 镜像:
```
docker pull quay.io/deepfenceio/deepfence_malware_scanner_ce:2.5.8
```
或者从源码构建,克隆此仓库并运行以下命令
```
make docker
```
### 扫描
拉取需要扫描的镜像,例如 `metal3d/xmrig` 并扫描它:
```
docker pull metal3d/xmrig
```
扫描镜像:
```
docker run -i --rm --name=deepfence-yarahunter \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /tmp:/home/deepfence/output \
quay.io/deepfenceio/deepfence_malware_scanner_ce:2.5.8 \
--image-name metal3d/xmrig:latest \
--output=json > xmrig-scan.json
```
返回结果中明确显示了 XMRig 的存在。请注意,我们存储输出 (`xmrig-scan.json`) 以便快速轻松地进行操作:
也可以通过挂载单独的路径并传递 `rules-path` 参数来缓存规则,以便下次运行时使用
```
docker run -i --rm --name=deepfence-yarahunter \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /tmp:/home/deepfence/output \
-v /tmp/rules:/tmp/rules \
quay.io/deepfenceio/deepfence_malware_scanner_ce:2.5.8 \
--image-name metal3d/xmrig:latest \
--output=json \
--rules-path=/tmp/rules > xmrig-scan.json
```
```
# 提取 IOC 数组值。从中提取 'Matched Rule Name' 键的值
cat /tmp/xmrig-scan.json | jq '.IOC[] | ."Matched Rule Name"'
```
这将返回我们在容器中扫描识别出的 IOC 列表。
要获取表格格式的输出,请省略 `--output=json` 标志
## 联系我们
感谢您使用 YaraHunter。
- [
](https://threatmapper.org/docs/yarahunter/) 从文档开始
- [
](https://join.slack.com/t/deepfence-community/shared_invite/zt-podmzle9-5X~qYx8wMaLt9bGWwkSdgQ) 有疑问或需要帮助?在 Slack 上找到 Deepfence 团队
- [](https://github.com/deepfence/YaraHunter/issues) 有功能请求或发现错误?提交一个 Issue
- [productsecurity _at_ deepfence _dot_ io](SECURITY.md):发现安全问题?请保密分享
## 安全与支持
对于 YaraHunter 项目中的任何安全问题,请联系 [productsecurity _at_ deepfence _dot_ io](SECURITY.md)。
请根据需要提交 GitHub Issues,并加入 Deepfence 社区 [Slack 频道](https://join.slack.com/t/deepfence-community/shared_invite/zt-podmzle9-5X~qYx8wMaLt9bGWwkSdgQ)。
## 许可证
Deepfence YaraHunter 项目(本仓库)采用 [Apache2 license](https://www.apache.org/licenses/LICENSE-2.0) 授权。
对 Deepfence YaraHunter 项目的 [贡献](CONTRIBUTING.md) 同样根据 Apache2 许可证接受,遵循 [GitHub 的 inbound=outbound 策略](https://docs.github.com/en/github/site-policy/github-terms-of-service#6-contributions-under-repository-license)。
# 免责声明
本工具不适用于黑客攻击。请仅将其用于合法目的,例如检测您拥有的基础设施上的入侵指标,而不是他人的基础设施。对于因 YaraHunter 不适用于任何目的或使用,或因其任何缺陷或不足而直接或间接导致的利润损失、业务损失、其他经济损失或任何其他损失或损害,DEEPFENCE 不承担任何责任。
标签:AI应用开发, AMSI绕过, Deepfence, DevSecOps, Docker, EVTX分析, NIDS, Vue, Web截图, YARA, 上游代理, 云资产可视化, 入侵指标, 威胁检测, 安全防御评估, 容器化, 容器安全, 恶意软件扫描, 数字取证, 数据集, 文件系统扫描, 日志审计, 活动识别, 网络信息收集, 网络安全, 自动化脚本, 请求拦截, 镜像扫描, 隐私保护