如何导出Rapid7 InsightIDR日志

如何导出Rapid7 InsightIDR日志

SOC Prime Team
SOC Prime Team linkedin icon 关注

使用日志搜索 API。发送 LEQL 查询以获取日志和时间窗口,网址为 https://<region>.rest.logs.insight.rapid7.com/query/logs/<log-key> ,将您的 API 密钥放入 X-Api-Key 标头中。API 会分页返回事件,并给出到下一页的链接。UI 中的日志搜索也可以导出结果。

InsightIDR 为 Rapid7 客户收集端点、网络和云日志,通常调查从日志搜索开始。Prime Core 为 InsightIDR 有 23,965 条检测规则,映射到 676 个 MITRE ATT&CK 技术。下面是如何导出日志,清理它们,并在 LogTotal 上免费调查它们的方法。

免费开始入门

在您开始之前

一个 API 密钥。 在 Insight 平台设置中创建一个具有 InsightIDR 访问权限的(组织密钥或用户密钥)。

您的地区。 主机取决于您的数据所在位置:us、us2、us3、eu、ca、au、ap。

日志键。 每个日志都有一个键,查询针对其中一个或多个运行。使用 API 列出它们,如下所示。

保留。 日志搜索的回溯时长取决于您的订阅。

使用日志搜索 API 导出

REGION=us
BASE="https://$REGION.rest.logs.insight.rapid7.com"
FROM=$(date -d '2026-10-19T00:00:00Z' +%s000)
TO=$(date -d '2026-10-20T00:00:00Z' +%s000)
Q=$(printf '%s' 'where(hostname=web-03)' | jq -sRr @uri)

# 列出日志及其键
curl -sS -H "X-Api-Key: $R7_KEY" "$BASE/management/logs" | jq -r '.logs[] | "(.id)  (.name)"'

# 查询一个日志,跟随页面
URL="$BASE/query/logs/<log-key>?query=$Q&from=$FROM&to=$TO&per_page=500"
while [ -n "$URL" ]; do
  RESP=$(curl -sS -H "X-Api-Key: $R7_KEY" "$URL")
  echo "$RESP" | jq -c '.events[]?'
  URL=$(echo "$RESP" | jq -r '.links[]? | select(.rel == "Next") | .href' | head -1)
done > r7_web03_1019.jsonl

长时间运行的查询可能首先用一个轮询链接而不是结果回答。每个事件的消息字段包含日志条目。源是文本时,用 jq -r ‘.message’ 提取它。

在 LogTotal 上上传、清理和查看

  1. 上传。 打开 logtotal.com 并拖入文件。
  2. 清理。 查看结果,然后继续。
  3. 审查。

这在真实数据上的样子。

当出现错误时

症状可能原因Fix
401 或 403密钥错误,或密钥没有 InsightIDR 访问权限检查密钥的产品访问权限
连接错误主机名中的地区错误使用您的数据地区
查询语法错误LEQL 未进行 URL 编码对其进行编码,如上面使用 @uri
仅第一个页面未跟随 Next 链接循环直到没有 Next 链接
没有早于特定日期的记录订阅保留检查您的计划保留

FAQ

我可以一次查询多个日志吗?

可以。API 也接受跨多个日志键或日志集的查询。

调查和警报怎么样?

它们有自己的 API。对于 LogTotal,导出其背后的日志事件。

加入 SOC Prime 的 Detection as Code 平台 以提高对与您的业务最相关的威胁的可见性。为了帮助您开始并带来即时价值,现在与 SOC Prime 专家预约会议。