CybercentreCanada/assemblyline-service-oletools

GitHub: CybercentreCanada/assemblyline-service-oletools

Assemblyline 的 Office OLE/XML 文档分析服务,基于 oletools 提取宏、元数据与 IOC 并标记异常。

Stars: 3 | Forks: 7

[![Discord](https://img.shields.io/badge/chat-on%20discord-7289da.svg?sanitize=true)](https://discord.gg/GUAy9wErNu) [![](https://img.shields.io/discord/908084610158714900)](https://discord.gg/GUAy9wErNu) [![Static Badge](https://img.shields.io/badge/github-assemblyline-blue?logo=github)](https://github.com/CybercentreCanada/assemblyline) [![Static Badge](https://img.shields.io/badge/github-assemblyline\_service\_oletools-blue?logo=github)](https://github.com/CybercentreCanada/assemblyline-service-oletools) [![GitHub Issues or Pull Requests by label](https://img.shields.io/github/issues/CybercentreCanada/assemblyline/service-oletools)](https://github.com/CybercentreCanada/assemblyline/issues?q=is:issue+is:open+label:service-oletools) [![License](https://img.shields.io/github/license/CybercentreCanada/assemblyline-service-oletools)](./LICENSE) # Oletools 服务 该 Assemblyline 服务使用 Python 库 py-oletools 和 hachoir 提取 Microsoft OLE 和 XML 文档中的元数据和网络信息,并报告其中的异常情况。 ## 服务详情 ### 配置参数(由管理员设置): - MACRO_SCORE_MAX_FILE_SIZE:如果宏部分的大小超过此值,则在结果中不会标记该宏部分。 (默认值:5 * 1024**2) - MACRO_SCORE_MIN_ALERT:Chains.json 包含常见的英文三字母组。我们根据这些三字母组在代码中出现的频率(跳过一些常见关键字)对宏进行评分。低于此配置值的分数表示文本更加随机,而随机的变量/函数名在恶意宏中很常见。(默认值:0.6) - METADATA_SIZE_TO_EXTRACT:如果 OLE 元数据的大小(以字节为单位)超过此值,服务会将元数据内容提取为新文件(默认值:500) - IOC_PATTERN_SAFELIST:如果 IOC 包含列表中的某个字符串,Oletools 将忽略它,除非处于深度扫描模式。(默认值:[]) - IOC_EXACT_SAFELIST:如果 IOC 是列表中的某个字符串,Oletools 将忽略它,除非处于深度扫描模式。(默认值:[]) ### 执行 Oletools 服务将在存在以下信息时为每个文件报告: 1. 单个宏:(AL TAG:technique.macro) * 每个部分的 SHA256。(AL TAG:file.ole.macro.sha256) * 可疑字符串。(AL TAG:file.ole.macro.suspicious_strings) * 网络指标。 2. 嵌入式文档流和 OLE 信息: * 名称和元数据(作者、公司、最后保存时间等)。 AL TAGS: file.ole.summary.title, file.ole.summary.subject, file.ole.summary.author, file.ole.summary.comment, file.ole.summary.last_saved_by, file.ole.summary.last_printed, file.ole.summary.create_time, file.ole.summary.last_saved_time, file.ole.summary.manager, file.ole.summary.company, file.ole.summary.codepage * CLSID(标记已知的恶意值)。(AL TAG:file.ole.clsid) 3. 可疑的 XML/OLE 流特征: * FrankenStrings IOC Patterns 模块结果。 * Adobe Flash 内容。 * Base64 编码内容。 * 十六进制编码内容。 4. MSO DDE 链接(AL TAG:file.ole.dde_link) 5. 可能的 VBA stomping。当宏转储和 pcode 转储之间的可疑内容存在差异时确定。 6. 服务将提取: * 所有宏内容。 * 所有 pcode 内容。 * 可疑的 OLE 流和 xml。 * DDE 链接 7. 如果处于深度扫描模式,将提取所有 OLE 流,并且 hachoir 将运行其深度对象分析。 ## 镜像版本和标签 Assemblyline 服务构建自 [Assemblyline 服务基础镜像](https://hub.docker.com/r/cccs/assemblyline-v4-service-base), 该基础镜像基于带有 Python 3.11 的 Debian 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 Oletools \ --env SERVICE_API_HOST=http://`ip addr show docker0 | grep "inet " | awk '{print $2}' | cut -f1 -d"/"`:5003 \ --network=host \ cccs/assemblyline-service-oletools ``` 要将此服务添加到您的 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/ # Service Oletools Ce service Assemblyline extrait des métadonnées et des informations sur le réseau, et signale les anomalies dans les documents Microsoft OLE et XML à l'aide des bibliothèques Python py-oletools et hachoir. ## Service 详情 ### 配置参数(由管理员定义): - MACRO_SCORE_MAX_FILE_SIZE : Une section de macros ne sera pas signalée dans les résultats si sa taille est supérieure à cette valeur. (Valeur par défaut : 5 * 1024**2) - MACRO_SCORE_MIN_ALERT : Chains.json contient des trigraphes anglais courants. Nous évaluons les macros en fonction de la fréquence d'apparition de ces trigraphes dans le code, en ignorant certains mots-clés courants. Un score inférieur à cette valeur indique un texte plus aléatoire, et les noms de variables/fonctions aléatoires sont fréquents dans les macros malveillantes. (Valeur par défaut : 0.6) - METADATA_SIZE_TO_EXTRACT : Si les métadonnées OLE dépassent cette taille (en octets), le service extrait le contenu des métadonnées dans un nouveau fichier (valeur par défaut : 500). - IOC_PATTERN_SAFELIST : Si un IOC contient l'une des chaînes de la liste, Oletools l'ignorera à moins d'être en mode d'analyse approfondie. (Valeur par défaut : []) - IOC_EXACT_SAFELIST : Si un IOC est l'une des chaînes de la liste, Oletools l'ignorera à moins qu'il ne soit en mode d'analyse approfondie. (Valeur par défaut : []) ### 执行 Le service Oletools signale les informations suivantes pour chaque fichier lorsqu'il est présent : 1. Macros individuelles : (AL TAG : technique.macro) * SHA256 de chaque section. (AL TAG : file.ole.macro.sha256) * Chaînes suspectes. (AL TAG : file.ole.macro.suspicious_strings) * Indicateurs de réseau. 2. Flux de documents intégrés et informations OLE : * Nom et métadonnées (auteur, société, dernière heure de sauvegarde, etc.). AL TAGS : file.ole.summary.title, file.ole.summary.subject, file.ole.summary.author, fichier.ole.sommaire.commentaire, fichier.ole.summary.last_saved_by, file.ole.summary.last_printed, file.ole.summary.create_time, file.ole.summary.last_saved_time, file.ole.summary.manager, fichier.ole.summary.company, file.ole.summary.codepage * CLSIDs (drapeaux de valeurs malveillantes connues). (AL TAG : file.ole.clsid) 3. Caractéristiques des flux XML/OLE suspects : * FrankenStrings IOC Patterns résultats du module. * Contenu Adobe Flash. * Contenu codé en Base64. * Contenu codé en hexadécimal. 4. Liens DDE MSO (AL TAG : file.ole.dde_link) 5. Possibilité d'utilisation de VBA. Déterminé lorsqu'il existe une différence de contenu suspect entre le dump macro et le dump pcode. 6. Le service extrait : * Tout le contenu des macros. * Tout le contenu du pcode. * Les flux OLE et xml suspects. * Liens DDE 7. En mode d'analyse approfondie, tous les flux OLE seront extraits et hachoir effectuera une analyse approfondie des objets. ## 镜像变体和标签 Les services d'Assemblyline sont construits à partir de l'image de base [Assemblyline service](https://hub.docker.com/r/cccs/assemblyline-v4-service-base), qui est basée sur Debian 11 avec Python 3.11. Les services d'Assemblyline utilisent les définitions d'étiquettes suivantes: | **Type d'étiquette** | **Description** | **Exemple d'étiquette** | | :------------------: | :------------------------------------------------------------------------------------------------------------- | :------------------------: | | dernière version | La version la plus récente (peut être instable). | `latest` | | build_type | Type de construction utilisé. `dev` est la dernière version instable. `stable` est la dernière version stable. | `stable` ou `dev` | | série | Détails de construction complets, comprenant la version et le type de build: `version.buildType`. | `4.5.stable`, `4.5.1.dev3` | ## 运行此 Service Ce service est spécialement optimisé pour fonctionner dans le cadre d'un déploiement d'Assemblyline. Si vous souhaitez tester ce service localement, vous pouvez exécuter l'image Docker directement à partir d'un terminal: ``` docker run \ --name Oletools \ --env SERVICE_API_HOST=http://`ip addr show docker0 | grep "inet " | awk '{print $2}' | cut -f1 -d"/"`:5003 \ --network=host \ cccs/assemblyline-service-oletools ``` Pour ajouter ce service à votre déploiement d'Assemblyline, suivez ceci [guide](https://cybercentrecanada.github.io/assemblyline4_docs/fr/developer_manual/services/run_your_service/#add-the-container-to-your-deployment). ## 文档 La documentation générale sur Assemblyline peut être consultée à l'adresse suivante: https://cybercentrecanada.github.io/assemblyline4_docs/
标签:Assemblyline, DNS 反向解析, hachoir, HTTP工具, Microsoft Office安全, oletools, OLE分析, Python, VBA安全, XML文件分析, 元数据提取, 入侵指标(IOC), 威胁情报, 宏代码分析, 开发者工具, 恶意文档检测, 文件格式分析, 无后门, 沙箱集成, 网络安全, 网络安全审计, 自动化恶意软件分析, 请求拦截, 进程保护, 逆向工具, 钓鱼攻击防护, 隐私保护