iocx-dev/iocx
GitHub: iocx-dev/iocx
这是一个用于从PE二进制文件和文本中静态提取威胁指标(IOC)的轻量级、可扩展引擎。
Stars: 1 | Forks: 1
# 官方 IOCX 项目
这是用于静态 IOC 提取和 PE 分析的**原始 IOCX 引擎**。
- PyPI: [https://pypi.org/project/iocx/](https://pypi.org/project/iocx/)
- Github: [https://github.com/iocx-dev/iocx](https://github.com/iocx-dev/iocx)
- Website: [https://iocx.dev/](https://iocx.dev/)
任何其他使用 "iocx" 名称的仓库均**不属于**本项目。
# IOCX — 针对二进制文件、文本和工件的静态 IOC 提取
**为 DFIR、SOC 自动化和大规模威胁分析提供快速、安全、确定性的 IOC 提取。**
IOCX 是一个轻量级、可扩展的引擎,用于使用**纯静态分析**提取威胁指标 (IOC) 和结构元数据。无需执行。无需沙箱。零风险。
专为以下场景构建:
- DFIR 工作流
- SOC 自动化
- 威胁情报流水线
- CI/CD 安全检查
- 大规模批处理
IOCX 是 MalX Labs 生态系统的核心组件,旨在提供可扩展的现代威胁分析工具。
## 为何选择 IOCX?
IOCX 专为重视**安全性、确定性和自动化**的环境而设计。与仅处理原始文本的提取器不同,IOCX 包含**感知二进制的静态分析**、**插件友好的规则系统**以及适用于流水线和长期集成的**稳定 JSON schema**。
### 主要优势
- **纯静态设计** — 从不执行不受信任的代码
- **二进制解析** — 感知 PE 的提取,包含节分析、熵和混淆提示
- **分析级别** — 基础、深度和完整 (future-ready),用于性能调优的工作流
- **确定性行为** — 稳定的输出和可预测的性能
- **可扩展规则引擎** — 自定义检测器、解析器和插件
- **一致的 JSON schema** — 与 SIEM/SOAR 干净集成
- **低依赖占用** — 对企业环境安全
- **流水线就绪** — 快速启动,高吞吐量
## IOCX *不是* 什么
为了避免混淆:
- 不是沙箱
- 不是恶意软件模拟器
- 不是行为分析工具
- 不是增强引擎 (该功能位于 MalX Cloud 平台中)
IOCX 在设计上**仅进行静态提取**。
## 用例
### SOC 和事件响应
- 从电子邮件、警报或分析师剪贴板文本中提取指标
- 将报告中的 IOC 解析为结构化 JSON
- 在不执行的情况下安全检查恶意软件样本
### 威胁情报处理
- 标准化来自情报源 的指标
- 批量处理非结构化文本
- 在确定性输出之上构建增强流水线
### CI/CD 和 DevSecOps
- 在发布之前扫描二进制文件中嵌入的指标
- 将 IOC 提取集成到自动检查中
- 检测构建中意外包含的 URL 或地址
### 批量自动化和脚本
- 通过 IOCX 管道传输日志或工件
- 使用 Python API 进行 ETL 或批处理工作流
- 使用自定义检测器扩展以检测内部模式
## 版本亮点
### v0.5.0 — 分析级别、PE 节分析、混淆提示
- 新的分析级别系统:basic、deep(默认)和 full(future-ready)
- PE 结构分析:节布局、原始/虚拟大小、熵
- 混淆启发式:异常节模式、仅虚拟节、熵异常
- 为未来的加壳器/TLS/反调试模块扩展的分析存根
- 干净、稳定的 JSON schema,包含可选的分析块
- 无标志模式保持快速和极简,适用于流水线使用
### v0.4.0 — 插件架构、自定义检测器、更简洁的内部实现
- 引入了支持插件的规则引擎,允许自定义 IOC 检测器和解析器
- 在一致、可扩展的接口下统一了内部检测流程
- 增加了对用户定义的正则检测器和轻量级解析模块的支持
- 改进了核心引擎、检测器和输出格式之间的分离
- 减少了模块间的耦合,以支持长期可扩展性
- 保持了相同快速、确定性的性能特征
### v0.3.0 — 更强的架构、新的加密货币 IOC 检测
- Ethereum 和 Bitcoin 钱包检测
- 改进了长期可扩展性的架构
- 在多 MB 输入上保持同样极快的性能
### v0.2.0 — 高可靠性 IP 检测
在嘈杂、格式错误和混合内容环境中,对 IPv4/IPv6 提取进行了重大改进
## 真实 CLI 输出 (Chaos Corpus 样本)
```
$ iocx chaos_corpus.json
{
"file": "examples/samples/structured/chaos_corpus.json",
"type": "text",
"iocs": {
"urls": [
"http://[2001:db8::1]:443"
],
"domains": [],
"ips": [
"2001:db8::1",
"2001:db8::1:443",
"10.0.0.1",
"192.168.1.10",
"fe80::dead:beef%eth0",
"1.2.3.4",
"fe80::1%eth0",
"192.168.1.110",
"fe80::1%eth0fe80",
"::2%eth1",
"2001:db8::"
],
"hashes": [],
"emails": [],
"filepaths": [],
"base64": []
},
"metadata": {}
}
```
| Input | Extracted Output | Explanation | |---------------------------------------|------------------------------------------|---------------------------------------------| | fe80::dead:beef%eth0/garbage | fe80::dead:beef%eth0 | 恢复有效的 IPv6,忽略垃圾内容。 | | xxx192.168.1.10yyy | 192.168.1.10 | 垃圾文本中的 IPv4。 | | DROP:client=10.0.0.1;;;ERR | 10.0.0.1 | 来自嘈杂日志字段的 IPv4。 | | [2001:db8::1]::::443 | 2001:db8::1 | 提取了 IPv6 和 IPv6+port。 | | | 2001:db8::1:443 | | | GET http://[2001:db8::1]:443/index | http://[2001:db8::1]:443 | 正确解析了带有 IPv6 的 URL。 | | udp://[fe80::1%eth0]::::53 | fe80::1%eth0 | 拼接的 IPv6 被拆分。 | | 192.168.1.110.0.0.1 | 192.168.1.110 | 恢复了组合的 IP 段。 | | fe80::1%eth0fe80::2%eth1 | fe80::1%eth0fe80, ::2%eth1 | 拼接的 IPv6 被拆分。 | | 2001:db8::12001:db8::2 | 2001:db8:: | 找到了最长的有效 IPv6 前缀。 | | 256.256.256:256 | — | 忽略了无效指标。 |
所有测量数据均来自最新的性能测试套件: | Sample Type | Time | |------------------------------|----------| | 1 MB mixed‑content sample | 0.0053s | | Pathological IPv6 blob | 0.0055s | | 100 KB sample | 0.0006s | | 300 KB sample | 0.0017s | | 600 KB sample | 0.0031s | | 1 MB sample | 0.0055s | - **Throughput:** ~200 MB/s - **Worst‑case IPv6 blob:** ~0.5 ms - **Linear scaling:** 从 100 KB → 1 MB 几乎呈完美的线性扩展
所有测量数据均来自最新的性能测试套件: | Sample Type | Time | |------------------------------|----------| | **IP** | | | 1 MB mixed‑content sample | 0.0070s | | Pathological IPv6 blob | 0.0004s | | 100 KB sample | 0.0008s | | 300 KB sample | 0.0021s | | 600 KB sample | 0.0038s | | 1 MB sample | 0.0068s | | **Filepath** | | | 1 MB mixed‑content sample | 0.0040s | | Pathological deep unix path | 0.0237s | | 300 KB sample | 0.0011s | | 600 KB sample | 0.0022s | | 1000 KB sample | 0.0038s | | 1500 KB sample | 0.0055s | | **Crypto** | | | 1 MB mixed‑content sample | 0.0021s | | Pathological ETH-like blob | 0.0012s | | 300 KB sample | 0.0006s | | 600 KB sample | 0.0012s | | 1000 KB sample | 0.0020s | | 1500 KB sample | 0.0031s | - **Throughput:** ~200 MB/s - **Worst‑case IPv6 blob:** ~0.5 ms - **Worst‑case filepath blob:** ~23 ms - **Worst‑case crypto blob:** ~1 ms - **Linear scaling:** 从 100 KB → 1 MB 几乎呈完美的线性扩展
## 项目标识与命名
IOCX 是发布在以下位置的官方静态 IOC 提取引擎的名称:
- **PyPI**: https://pypi.org/project/iocx/
- **GitHub**: https://github.com/iocx-dev/iocx
IOCX 的名称、品牌和项目标识**仅**指代本项目及其相关软件包、文档和发布版本。
为了防止用户混淆并维护健康的生态系统:
### 第三方项目**不得**做的事
- 使用 `iocx` 作为其仓库名称
- 发布名为 "iocx" 但并非本项目的工具
- 声称自己是 IOCX 的创建者或维护者
- 使用官方 `iocx` 软件包的 PyPI 徽章
- 未经许可暗示官方隶属关系或认可
这些行为会误导用户并侵犯项目的标识。
### 允许且鼓励的做法
欢迎使用第三方工具、插件和集成。
为了避免混淆,它们应遵循以下命名模式:
- `iocx-`
- `iocx-plugin-`
- `iocx-extension-`
示例:
- `iocx-osint-enricher`
- `iocx-detector-custom`
### 这为何重要
IOCX 被用于 DFIR、SOC 自动化、CI/CD 流水线和威胁情报工作流。
清晰的命名可确保:
- 用户知道哪个工具是**官方** IOCX 引擎
- 第三方工具易于发现且不会引起混淆
- 生态系统以结构化、健康的方式发展
如果您正在构建与 IOCX 集成的工具,并希望获得有关命名或归属的指导,请随时提 issue
## 官方 IOCX 仓库
- Core Engine: https://github.com/iocx-dev/iocx
- Plugins Meta‑Repo: https://github.com/iocx-dev/iocx-plugins
- Documentation: https://github.com/iocx-dev/iocx/tree/main/docs/specs
- PyPI Package: https://pypi.org/project/iocx/
## 功能
### IOC 提取
- URLs
- Domains
- IPv4 / IPv6 地址
- 文件路径 (Windows, Linux, UNC, env-vars)
- Hashes (MD5 / SHA1 / SHA256 / SHA512 / Generic Hex)
- Email 地址
- Base64 字符串
- Crypto wallets (Ethereum / Bitcoin)
### 感知二进制的静态分析
- Windows PE 文件 (`.exe`, `.dll`)
- 从二进制文件中提取的字符串
- 导入、节、资源、元数据
- **分析级别:**
- `basic` - 节布局 + 熵
- `deep` - 增加混淆启发式
- `full` - 扩展分析存根 (*future-ready*)
### 性能与缓存
- 快速启动和高吞吐量
- 针对重复扫描的可选缓存
- 适用于 CI/CD 和大批量工作流
### 对开发者友好
- 干净、稳定的 JSON 输出
- CLI + Python API
- 模块化、可扩展的规则系统
- 最小的依赖占用
### 安全优先
- 零恶意软件执行
- 对不受信任的输入安全
- 流水线确定性行为
### 为何仅限静态?
静态分析确保**安全性**、**确定性**和**CI 友好的操作**。无需沙箱、无需执行,且没有触发恶意软件行为的风险。
## 快速开始
### 安装
```
pip install iocx
```
### 从文件中提取 IOC
显示示例 JSON 输出
``` { "file": "suspicious.exe", "type": "PE", "iocs": { "urls": [], "domains": [], "ips": [], "hashes": [], "emails": [], "filepaths": [ "C:\\Windows\\System32\\cmd.exe", "D:\\Temp\\payload.bin", "E:/Users/Bob/AppData/Roaming/evil.dll", "F:\\Program Files\\SomeApp\\bin\\run.exe", "C:\\Users\\Alice\\Desktop\\notes.txt", "Z:\\Archive\\2024\\logs\\system.log", "\\\\SERVER01\\share\\dropper.exe", "\\\\192.168.1.44\\c$\\Windows\\Temp\\run.ps1", "\\\\FILESRV\\public\\docs\\report.pdf", "\\\\NAS01\\data\\backups\\2024\\config.json", "/usr/bin/python3.11", "/etc/passwd", "/var/lib/docker/overlay2/abc123/config.v2.json", "/tmp/x1/x2/x3/x4/x5/script.sh", "/opt/tools/bin/runner", "/home/alice/.config/evil.sh", ".\\payload.exe", "..\\lib\\config.json", "./run.sh", "../bin/loader.so", ".\\scripts\\install.ps1", "%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\evil.lnk", "%TEMP%\\payload.exe", "%USERPROFILE%\\Downloads\\file.txt", "$HOME/.config/evil.sh", "$HOME/bin/run.sh", "$TMPDIR/cache/tmp123.bin", "C:\\Windows\\Temp\\payload.bin", "/home/alice/.config/evil" ], "base64": [], "crypto.btc": [], "crypto.eth": [] }, "metadata": { "file_type": "PE", "imports": [ "KERNEL32.dll", "msvcrt.dll" ], "sections": [ ".text", ".data", ".rdata", ".pdata", ".xdata", ".bss", ".idata", ".CRT", ".tls", ".rsrc", ".reloc" ], "resource_strings": [ "C:\\Windows\\System32\\cmd.exe", "\\\\SERVER01\\share\\dropper.exe", "/home/alice/.config/evil.sh@%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\evil.lnk" ] }, "analysis": { "sections": [ { "name": ".text", "raw_size": 7168, "virtual_size": 6712, "characteristics": 1610612832, "entropy": 5.790750971742716 }, { "name": ".data", "raw_size": 512, "virtual_size": 464, "characteristics": 3221225536, "entropy": 2.094202310841767 }, { "name": ".rdata", "raw_size": 3584, "virtual_size": 3408, "characteristics": 1073741888, "entropy": 4.545752258688727 }, { "name": ".pdata", "raw_size": 1024, "virtual_size": 540, "characteristics": 1073741888, "entropy": 2.327719716055491 }, { "name": ".xdata", "raw_size": 512, "virtual_size": 488, "characteristics": 1073741888, "entropy": 4.1370410751038245 }, { "name": ".bss", "raw_size": 0, "virtual_size": 384, "characteristics": 3221225600, "entropy": 0.0 }, { "name": ".idata", "raw_size": 1536, "virtual_size": 1472, "characteristics": 3221225536, "entropy": 3.7542599473501452 }, { "name": ".CRT", "raw_size": 512, "virtual_size": 96, "characteristics": 3221225536, "entropy": 0.2718922950073886 }, { "name": ".tls", "raw_size": 512, "virtual_size": 16, "characteristics": 3221225536, "entropy": 0.0 }, { "name": ".rsrc", "raw_size": 512, "virtual_size": 416, "characteristics": 1073741888, "entropy": 2.6481096709923975 }, { "name": ".reloc", "raw_size": 512, "virtual_size": 188, "characteristics": 1107296320, "entropy": 2.2248162937403557 } ], "obfuscation": [ { "value": "abnormal_section_layout_virtual_only", "start": 0, "end": 0, "category": "obfuscation_hint", "metadata": { "section": ".bss", "raw_size": 0, "virtual_size": 384 } } ] } } ``` ## 架构 ``` iocx/ │ ├── examples/ # Sample files + generators ├── docs/ # Detector contracts, overlap suppression rules, and plugin authoring guidelines ├── tests/ # Unit, integration, fuzz, robustness, and performance tests ├── iocx ├── detectors/ # Regex-based IOC detectors ├── parsers/ # PE parsing, string extraction ├── plugins/ # Plugin API and registry ├── cli/ # Command-line interface ├── analysis/ # PE static-analysis modules ``` 该引擎特意采用模块化设计,以便轻松扩展或替换组件。 ## 扩展 IOCX 请参阅 `docs/specs/` 了解: - 检测器契约 - 重叠抑制规则 - 插件编写指南 ## 安全测试 (无需恶意软件) 所有测试样本均为: - 合成的 - 良性的 - 公开安全的 (EICAR, GTUBE) - 旨在避免意外处理恶意软件 ## 贡献 我们欢迎: - 新的 IOC 检测器 - 解析器改进 - Bug 报告 - 文档更新 - 合成测试样本 完整指南请参阅 CONTRIBUTING.md。 ## 安全 如果您发现安全问题,请勿提 GitHub issue。 请按照 SECURITY.md 中的说明操作。 ## 许可证 根据 MIT 许可证授权。有关详细信息,请参阅 LICENSE。 *IOCX 名称和项目标识仅指代由 iocx-dev 组织维护的 IOCX 引擎*
Chaos Corpus: 输入 → 提取输出 → 说明
| Input | Extracted Output | Explanation | |---------------------------------------|------------------------------------------|---------------------------------------------| | fe80::dead:beef%eth0/garbage | fe80::dead:beef%eth0 | 恢复有效的 IPv6,忽略垃圾内容。 | | xxx192.168.1.10yyy | 192.168.1.10 | 垃圾文本中的 IPv4。 | | DROP:client=10.0.0.1;;;ERR | 10.0.0.1 | 来自嘈杂日志字段的 IPv4。 | | [2001:db8::1]::::443 | 2001:db8::1 | 提取了 IPv6 和 IPv6+port。 | | | 2001:db8::1:443 | | | GET http://[2001:db8::1]:443/index | http://[2001:db8::1]:443 | 正确解析了带有 IPv6 的 URL。 | | udp://[fe80::1%eth0]::::53 | fe80::1%eth0 | 拼接的 IPv6 被拆分。 | | 192.168.1.110.0.0.1 | 192.168.1.110 | 恢复了组合的 IP 段。 | | fe80::1%eth0fe80::2%eth1 | fe80::1%eth0fe80, ::2%eth1 | 拼接的 IPv6 被拆分。 | | 2001:db8::12001:db8::2 | 2001:db8:: | 找到了最长的有效 IPv6 前缀。 | | 256.256.256:256 | — | 忽略了无效指标。 |
性能基准 (v0.2.0)
所有测量数据均来自最新的性能测试套件: | Sample Type | Time | |------------------------------|----------| | 1 MB mixed‑content sample | 0.0053s | | Pathological IPv6 blob | 0.0055s | | 100 KB sample | 0.0006s | | 300 KB sample | 0.0017s | | 600 KB sample | 0.0031s | | 1 MB sample | 0.0055s | - **Throughput:** ~200 MB/s - **Worst‑case IPv6 blob:** ~0.5 ms - **Linear scaling:** 从 100 KB → 1 MB 几乎呈完美的线性扩展
性能基准 (v0.3.0)
所有测量数据均来自最新的性能测试套件: | Sample Type | Time | |------------------------------|----------| | **IP** | | | 1 MB mixed‑content sample | 0.0070s | | Pathological IPv6 blob | 0.0004s | | 100 KB sample | 0.0008s | | 300 KB sample | 0.0021s | | 600 KB sample | 0.0038s | | 1 MB sample | 0.0068s | | **Filepath** | | | 1 MB mixed‑content sample | 0.0040s | | Pathological deep unix path | 0.0237s | | 300 KB sample | 0.0011s | | 600 KB sample | 0.0022s | | 1000 KB sample | 0.0038s | | 1500 KB sample | 0.0055s | | **Crypto** | | | 1 MB mixed‑content sample | 0.0021s | | Pathological ETH-like blob | 0.0012s | | 300 KB sample | 0.0006s | | 600 KB sample | 0.0012s | | 1000 KB sample | 0.0020s | | 1500 KB sample | 0.0031s | - **Throughput:** ~200 MB/s - **Worst‑case IPv6 blob:** ~0.5 ms - **Worst‑case filepath blob:** ~23 ms - **Worst‑case crypto blob:** ~1 ms - **Linear scaling:** 从 100 KB → 1 MB 几乎呈完美的线性扩展
``` { "file": "suspicious.exe", "type": "PE", "iocs": { "urls": [], "domains": [], "ips": [], "hashes": [], "emails": [], "filepaths": [ "C:\\Windows\\System32\\cmd.exe", "D:\\Temp\\payload.bin", "E:/Users/Bob/AppData/Roaming/evil.dll", "F:\\Program Files\\SomeApp\\bin\\run.exe", "C:\\Users\\Alice\\Desktop\\notes.txt", "Z:\\Archive\\2024\\logs\\system.log", "\\\\SERVER01\\share\\dropper.exe", "\\\\192.168.1.44\\c$\\Windows\\Temp\\run.ps1", "\\\\FILESRV\\public\\docs\\report.pdf", "\\\\NAS01\\data\\backups\\2024\\config.json", "/usr/bin/python3.11", "/etc/passwd", "/var/lib/docker/overlay2/abc123/config.v2.json", "/tmp/x1/x2/x3/x4/x5/script.sh", "/opt/tools/bin/runner", "/home/alice/.config/evil.sh", ".\\payload.exe", "..\\lib\\config.json", "./run.sh", "../bin/loader.so", ".\\scripts\\install.ps1", "%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\evil.lnk", "%TEMP%\\payload.exe", "%USERPROFILE%\\Downloads\\file.txt", "$HOME/.config/evil.sh", "$HOME/bin/run.sh", "$TMPDIR/cache/tmp123.bin", "C:\\Windows\\Temp\\payload.bin", "/home/alice/.config/evil" ], "base64": [], "crypto.btc": [], "crypto.eth": [] }, "metadata": { "file_type": "PE", "imports": [ "KERNEL32.dll", "msvcrt.dll" ], "sections": [ ".text", ".data", ".rdata", ".pdata", ".xdata", ".bss", ".idata", ".CRT", ".tls", ".rsrc", ".reloc" ], "resource_strings": [ "C:\\Windows\\System32\\cmd.exe", "\\\\SERVER01\\share\\dropper.exe", "/home/alice/.config/evil.sh@%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\evil.lnk" ] }, "analysis": { "sections": [ { "name": ".text", "raw_size": 7168, "virtual_size": 6712, "characteristics": 1610612832, "entropy": 5.790750971742716 }, { "name": ".data", "raw_size": 512, "virtual_size": 464, "characteristics": 3221225536, "entropy": 2.094202310841767 }, { "name": ".rdata", "raw_size": 3584, "virtual_size": 3408, "characteristics": 1073741888, "entropy": 4.545752258688727 }, { "name": ".pdata", "raw_size": 1024, "virtual_size": 540, "characteristics": 1073741888, "entropy": 2.327719716055491 }, { "name": ".xdata", "raw_size": 512, "virtual_size": 488, "characteristics": 1073741888, "entropy": 4.1370410751038245 }, { "name": ".bss", "raw_size": 0, "virtual_size": 384, "characteristics": 3221225600, "entropy": 0.0 }, { "name": ".idata", "raw_size": 1536, "virtual_size": 1472, "characteristics": 3221225536, "entropy": 3.7542599473501452 }, { "name": ".CRT", "raw_size": 512, "virtual_size": 96, "characteristics": 3221225536, "entropy": 0.2718922950073886 }, { "name": ".tls", "raw_size": 512, "virtual_size": 16, "characteristics": 3221225536, "entropy": 0.0 }, { "name": ".rsrc", "raw_size": 512, "virtual_size": 416, "characteristics": 1073741888, "entropy": 2.6481096709923975 }, { "name": ".reloc", "raw_size": 512, "virtual_size": 188, "characteristics": 1107296320, "entropy": 2.2248162937403557 } ], "obfuscation": [ { "value": "abnormal_section_layout_virtual_only", "start": 0, "end": 0, "category": "obfuscation_hint", "metadata": { "section": ".bss", "raw_size": 0, "virtual_size": 384 } } ] } } ``` ## 架构 ``` iocx/ │ ├── examples/ # Sample files + generators ├── docs/ # Detector contracts, overlap suppression rules, and plugin authoring guidelines ├── tests/ # Unit, integration, fuzz, robustness, and performance tests ├── iocx ├── detectors/ # Regex-based IOC detectors ├── parsers/ # PE parsing, string extraction ├── plugins/ # Plugin API and registry ├── cli/ # Command-line interface ├── analysis/ # PE static-analysis modules ``` 该引擎特意采用模块化设计,以便轻松扩展或替换组件。 ## 扩展 IOCX 请参阅 `docs/specs/` 了解: - 检测器契约 - 重叠抑制规则 - 插件编写指南 ## 安全测试 (无需恶意软件) 所有测试样本均为: - 合成的 - 良性的 - 公开安全的 (EICAR, GTUBE) - 旨在避免意外处理恶意软件 ## 贡献 我们欢迎: - 新的 IOC 检测器 - 解析器改进 - Bug 报告 - 文档更新 - 合成测试样本 完整指南请参阅 CONTRIBUTING.md。 ## 安全 如果您发现安全问题,请勿提 GitHub issue。 请按照 SECURITY.md 中的说明操作。 ## 许可证 根据 MIT 许可证授权。有关详细信息,请参阅 LICENSE。 *IOCX 名称和项目标识仅指代由 iocx-dev 组织维护的 IOCX 引擎*
标签:CI/CD安全, DAST, DNS枚举, IOC提取, Llama, PE分析, Python, Python 3.12, SOC自动化, SolidJS, 二进制分析, 云安全监控, 云安全运维, 反病毒, 可扩展引擎, 威胁分析, 威胁情报, 开发者工具, 恶意软件分析, 批量处理, 数字取证, 文本分析, 无后门, 无风险分析, 溯源分析, 网络安全, 网络安全工具, 自动化侦查工具, 自动化脚本, 调试插件, 逆向工具, 隐私保护, 静态分析