CybercentreCanada/assemblyline-service-virustotal
GitHub: CybercentreCanada/assemblyline-service-virustotal
Assemblyline 的一个服务组件,负责将文件/URL 提交给 VirusTotal 进行自动化分析并利用缓存优化查询。
Stars: 3 | Forks: 8
[](https://discord.gg/GUAy9wErNu)
[](https://discord.gg/GUAy9wErNu)
[](https://github.com/CybercentreCanada/assemblyline)
[](https://github.com/CybercentreCanada/assemblyline-service-virustotal)
[](https://github.com/CybercentreCanada/assemblyline/issues?q=is:issue+is:open+label:service-virustotal)
[](./LICENSE)
# Virustotal 服务
此 Assemblyline 服务用于检查(并可选地提交)文件/URL 到 VirusTotal 进行分析。
## 服务详情
**注意**:此服务**要求**您拥有自己的 API key(付费或免费)。
### 执行
此服务实际上会通过 v3 REST API 将文件提交给 VirusTotal 进行分析。
因为文件会离开 Assemblyline 基础设施,如果用户选择提交,系统会提示用户并通知他们其文件或与其文件相关的元数据将离开我们的系统。
### 配置
#### 服务配置
| 名称 | 描述 |
| :------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| api_key | 系统使用的全局 VirusTotal API key(如果提交者未提供自己的 key) |
| host | VirusTotal 主机默认为外部地址 `https://www.virustotal.com`,但也可指定用于测试或内部托管。 |
| proxy | 用于连接 VirusTotal 的 proxy |
| allow_dynamic_submit | 是否允许用户将文件提交到 VirusTotal? |
| av_config | 告诉服务忽略/重新映射文件报告中某些 AV 判定的配置块。有关更多详细信息,请参阅 [Service Manifest](./service_manifest.yml)。 |
| cache.backends | 包含 VirusTotal 数据缓存的数据库列表 |
| cache.cache_only | 仅使用缓存数据(不连接 VirusTotal) |
| cache.cache_interval | 执行结果缓存失效的间隔时间 |
##### VirusTotal 缓存
要配置服务使用 VirusTotal 数据的 `cache`,请参阅[此处](./virustotal/cache/)提到的支持的后端。
#### 提交参数
| 名称 | 描述 |
| :---------------: | :----------------------------------------------------------------------------------------------------------- |
| api_key | 个人的 VirusTotal API key |
| dynamic_submit | 指示服务在没有关于该提交的现有报告时将其提交给 VirusTotal |
| exhaustive_search | 查找与该文件关联的所有已标记网络 IOC(建议与缓存一起使用) |
## 镜像变体和标签
Assemblyline 服务是基于 [Assemblyline 服务基础镜像](https://hub.docker.com/r/cccs/assemblyline-v4-service-base)构建的,
该基础镜像基于 Debian 11 和 Python 3.11。
Assemblyline 服务使用以下标签定义:
| **标签类型** | **描述** | **示例标签** |
| :----------: | :----------------------------------------------------------------------------------------------- | :------------------------: |
| latest | 最新的构建版本(可能不稳定)。 | `latest` |
| build_type | 使用的构建类型。`dev` 是最新的不稳定构建。`stable` 是最新的稳定构建。 | `stable` 或 `dev` |
| series | 完整的构建详情,包括版本和构建类型:`version.buildType`。 | `4.5.stable`, `4.5.1.dev3` |
## 运行此服务
这是一个 Assemblyline 服务。它被设计为 Assemblyline 框架的一部分运行。
如果您想在本地测试此服务,可以直接在 shell 中运行 Docker 镜像:
```
docker run \
--name Virustotal \
--env SERVICE_API_HOST=http://`ip addr show docker0 | grep "inet " | awk '{print $2}' | cut -f1 -d"/"`:5003 \
--network=host \
cccs/assemblyline-service-virustotal
```
要将此服务添加到您的 Assemblyline 部署中,请遵循此
[指南](https://cybercentrecanada.github.io/assemblyline4_docs/developer_manual/services/run_your_service/#add-the-container-to-your-deployment)。
## 文档
Assemblyline 的一般文档可在以下地址找到:https://cybercentrecanada.github.io/assemblyline4_docs/
# Virustotal 服务
此 Assemblyline 服务用于检查(并可选地提交)文件/URL 到 VirusTotal 进行分析。
## 服务详情
**注意**:此服务**要求**您拥有自己的 API key
### 执行
此服务通过 v3 REST API 将文件提交给 VirusTotal 进行分析。
由于文件会离开 Assemblyline 基础设施,系统将警告用户并通知他们,文件和与提交相关的元数据将离开我们的环境。
### 配置
#### 服务配置
| 名称 | 描述 |
| :------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| api_key | 系统使用的全局 VirusTotal API key(如果提交者未提供自己的 API key)。 |
| host | VirusTotal 主机默认为外部地址 `https://www.virustotal.com`,但也可指定用于测试或内部托管。 |
| Proxy | 用于连接 VirusTotal 的 proxy。 |
| allow_dynamic_submit | 是否允许用户将文件提交到 VirusTotal? |
| av_config | 告诉服务忽略/重新映射文件报告中某些 AV 判定的配置块。有关更多详细信息,请参阅 [Service Manifest](./service_manifest.yml)。 |
| cache.backends | 包含 VirusTotal 数据缓存的数据库列表 |
| cache.cache_only | 仅使用缓存数据(不联系 VirusTotal) |
| cache.cache_interval | 执行结果缓存失效的间隔时间 |
#### 提交参数
| 名称 | 描述 |
| :---------------: | :-------------------------------------------------------------------------------------------------------------------------- |
| api_key | VirusTotal API key |
| dynamic_submit | 指示服务在没有关于该提交的现有报告时将其提交给 VirusTotal。 |
| exhaustive_search | 查找与该文件关联的所有已标记网络 IOC(建议与缓存一起使用) |
## 镜像变体和标签
Assemblyline 服务是基于 [Assemblyline 服务基础镜像](https://hub.docker.com/r/cccs/assemblyline-v4-service-base)构建的,
该基础镜像基于 Debian 11 和 Python 3.11。
Assemblyline 服务使用以下标签定义:
| **标签类型** | **描述** | **示例标签** |
| :------------------: | :------------------------------------------------------------------------------------------------------------- | :------------------------: |
| latest | 最新的构建版本(可能不稳定)。 | `latest` |
| build_type | 使用的构建类型。`dev` 是最新的不稳定构建。`stable` 是最新的稳定构建。 | `stable` 或 `dev` |
| series | 完整的构建详情,包括版本和构建类型:`version.buildType`。 | `4.5.stable`, `4.5.1.dev3` |
## 运行此服务
此服务专门优化为 Assemblyline 部署的一部分运行。
如果您想在本地测试此服务,可以直接从终端运行 Docker 镜像:
```
docker run \
--name Virustotal \
--env SERVICE_API_HOST=http://`ip addr show docker0 | grep "inet " | awk '{print $2}' | cut -f1 -d"/"`:5003 \
--network=host \
cccs/assemblyline-service-virustotal
```
要将此服务添加到您的 Assemblyline 部署中,请遵循此
[指南](https://cybercentrecanada.github.io/assemblyline4_docs/fr/developer_manual/services/run_your_service/#add-the-container-to-your-deployment)。
## 文档
关于 Assemblyline 的一般文档可在以下地址查阅:https://cybercentrecanada.github.io/assemblyline4_docs/
标签:Ask搜索, Assemblyline, VirusTotal, 威胁情报, 安全分析, 开发者工具, 恶意软件检测