Agentic Detection Lookups

io.github.detection-forge由 GitHub 账号 detection-forge 发布v0.1.0更新于 Oct 24, 2026

LOLBAS, GTFOBins, and process parent-child lookups for detection engineering agents.

发布方自己的服务:agentic.no

已验证STDIO仅桌面安全与监控数据与分析

概览

AI 生成的概览

让助手查询 LOLBAS 与 GTFOBins 二进制文件,并检查进程父子关系,用于检测工程。

可以做什么
基于内置 CSV 数据提供只读查询:LOLBAS Windows 二进制、GTFOBins Linux 二进制,以及预期或可疑的进程父子关系基线。工具包括 detection_lookup_binary(返回风险、类别与 MITRE ATT&CK 编号)、detection_check_parent_child(给出研判建议),以及按类别、按技术和全文检索的工具,并可列出可用的查询文件。同一批 CSV 也可上传到 SIEM 平台用于数据富化。
适用场景
适合检测工程、威胁狩猎和 SOC 研判场景,让助手快速判断某个二进制是否常被滥用、某对进程父子关系是否可疑。也适用于为 CrowdStrike、Splunk、Elastic 或 Sentinel 准备查询表。
运行要求
以 Python 包形式通过 stdio 在本地运行:需要 Python 3.10 或更高版本、虚拟环境,并从项目源码安装。README 还提到 MCP 集成需要 VS Code 与 GitHub Copilot。未声明需要账号、API 密钥或网络访问。
安装前请注意
这些数据是研判参考而非结论;风险评分与父子关系基线由人工维护,可能滞后于实际环境。该服务器为只读且不索取凭据,但仅限桌面端,且必须指向本地代码目录路径。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Agentic Detection Lookups,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Agentic Detection Lookups

Machine-readable detection lookups for SIEM enrichment and AI agents. MCP-native.

Stop regex-matching 200+ binaries. Enrich in one match() call.
Feed it to your SIEM, your SOAR, your agent, or your LLM.

What is this?

A collection of structured CSV lookup files purpose-built for:

  • SIEM enrichment — one match()/lookup/join replaces entire rule categories
  • AI agent tooling — MCP server included, agents query detection context in real-time
  • Detection automation — consistent schema, CI-updated, deploy-ready

Lookup Files

FileEntriesOSDescription
lolbas_binaries.csv234WindowsLiving Off The Land Binaries and Scripts — risk-scored, categorized, MITRE-mapped
gtfobins.csv477LinuxGTFOBins Unix binaries — shell escape, priv-esc, file ops, MITRE-mapped
parent_child_baselines.csv98BothExpected/suspicious process parent→child relationships for Windows and Linux

Schema Contract

Every lookup file follows:

  1. First column = match key (the field you join on)
  2. Always includes risk or risk_if_unexpected column
  3. Always includes MITRE ATT&CK technique mapping
  4. No nested data — flat columns, pipe-delimited for multi-value
  5. UTF-8, no BOM, Unix line endings, header row always present

Quick Start

SIEM (copy-paste)

CrowdStrike NG-SIEM:

cql
#event_simpleName=ProcessRollup2| binary := lower(FileName)| match(file="lolbas_binaries.csv", field=binary, column=filename, include=[categories, mitre_ids, risk])| risk="high"

Splunk:

spl
index=crowdstrike event_simpleName=ProcessRollup2| rex field=FileName "(?<binary>[^\\\\]+)$"| lookup lolbas_binaries.csv filename AS binary OUTPUT categories mitre_ids risk| where risk="high"

Elastic (ES|QL):

esql
FROM logs-endpoint.events.process-*| WHERE event.action == "start"| ENRICH lolbas-policy ON process.name = filename WITH categories, risk| WHERE risk == "high"

Microsoft Sentinel:

kql
DeviceProcessEvents| extend binary = tolower(FileName)| join kind=inner (_GetWatchlist('lolbas_binaries')) on $left.binary == $right.filename| where risk == "high"

See queries/ for full query libraries per platform.

MCP Server (AI agents)

json
{  "servers": {    "detection-lookups": {      "type": "stdio",      "command": "python",      "args": ["-m", "mcp_server"],      "cwd": "/path/to/agentic-detection-lookups"    }  }}

Then your agent can:

→ detection_lookup_binary("certutil.exe")← {source: "lolbas", risk: "medium", categories: ["Download"], mitre_ids: ["T1105"]}
→ detection_lookup_binary("python")← {source: "gtfobins", risk: "high", categories: ["shell", "reverse-shell", ...], mitre_ids: ["T1059"]}
→ detection_check_parent_child("winword.exe", "cmd.exe")← {expected: false, risk_if_unexpected: "critical", mitre_id: "T1204.002"}

MCP Tools

ToolInputOutput
detection_lookup_binaryfilenameRisk, categories, MITRE IDs, source (lolbas/gtfobins)
detection_check_parent_childparent, child, os_filterExpected/suspicious, risk level, triage guidance
detection_list_by_categorycategory, limit, offsetPaginated binaries in that abuse category (cross-platform)
detection_list_by_mitretechnique_id, limit, offsetPaginated binaries mapped to that technique (cross-platform)
detection_searchquery, limitMatches across all lookup data with total/has_more
detection_list_lookups—All files with row counts and columns

Data Sources

LookupSourceUpdate Frequency
LOLBAS binariesLOLBAS ProjectWeekly (automated)

Installation

Prerequisites

  • Python 3.10+
  • VS Code with GitHub Copilot (for MCP integration)

Install

bash
git clone https://github.com/detection-forge/agentic-detection-lookups.gitcd agentic-detection-lookupspython -m venv .venv# Windows:.venv\Scripts\activate# Linux/macOS:source .venv/bin/activatepip install -e .

Configure MCP Client (VS Code)

Add to your VS Code User settings (Ctrl+Shift+P → "Preferences: Open User Settings (JSON)") or ~/.vscode/mcp.json:

json
{  "servers": {    "detection-lookups": {      "type": "stdio",      "command": "/absolute/path/to/.venv/bin/python",      "args": ["-m", "mcp_server"],      "cwd": "/absolute/path/to/agentic-detection-lookups"    }  }}

Windows example:

json
{  "servers": {    "detection-lookups": {      "type": "stdio",      "command": "C:\\Code\\.venv\\Scripts\\python.exe",      "args": ["-m", "mcp_server"],      "cwd": "C:\\Code\\agentic-detection-lookups"    }  }}

Reload VS Code: Ctrl+Shift+P → "Reload Window"

Verify

In Copilot Chat (Agent mode):

Is certutil.exe a LOLBAS binary?

✅ Returns risk, categories, and MITRE mappings = working!

Run standalone (CLI)

bash
detection-lookups

This starts the MCP server on stdio transport (useful for piping JSON-RPC or connecting other MCP clients).

Upload to your SIEM

  • CrowdStrike NG-SIEM: Upload via API or UI (Settings → Lookup Files)
  • Splunk: Settings → Lookups → Lookup table files → Add new
  • Elastic: Create enrich index + ingest pipeline
  • Sentinel: Configuration → Watchlist → Add new

Project Structure

agentic-detection-lookups/├── lookups/                    # The data (CSV files)│   ├── lolbas_binaries.csv│   ├── gtfobins.csv│   └── parent_child_baselines.csv├── queries/                    # Copy-paste detection queries│   ├── crowdstrike_ngsiem.md│   ├── splunk.md│   ├── elastic.md│   └── microsoft_sentinel.md├── mcp_server/                 # MCP server for AI agents│   ├── server.py│   └── __init__.py├── scripts/                    # Update/maintenance scripts├── LICENSE                     # Apache 2.0├── NOTICE└── pyproject.toml

Contributing

PRs welcome. See CONTRIBUTING.md for guidelines.

To add a new lookup file:

  1. Follow the schema contract (match key first, include risk + MITRE columns)
  2. Include at least one query example per SIEM platform
  3. Add a tool to the MCP server

License

Apache 2.0 — See LICENSE and NOTICE.


Built by Gene Kazimiarovich | Part of Detection Forge

来源:README.md,提交 2dfb659

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Agentic 集成