GitHub Advisoryadvisory · npm

GHSA-7qf6-h84j-8fq4 OpenClaw: Microsoft Teams media fetch paths bypass shared SSRF guard model

LOW Published 2026-03-03 Modified 2026-03-03 Official page ↗
Ecosystem
npm
Packages
openclaw
Severity
Low
CVSS vector
CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:N/VI:N/VA:N/SC:L/SI:N/SA:N
Weaknesses
CWE-367, CWE-918
Reviewed
2026-03-03

Affected packages

• npm openclaw: < 2026.2.26 → fixed in 2026.2.26

Description

Impact Microsoft Teams media handling used mixed fetch paths for Graph metadata/content and attachment auth-retry flows. Some paths bypassed the shared SSRF guard model and created inconsistent host/DNS enforcement across redirect/fetch hops. Affected Packages / Versions • Package: `openclaw` (npm) • Latest published vulnerable version: `2026.2.25` • Affected range: `<= 2026.2.25` • Planned patched version for next release: `2026.2.26` Technical Details The Microsoft Teams attachment/media code previously relied on plugin-local fetch behavior in parts of the flow, instead of uniformly using shared guarded fetch logic with pinned DNS + policy checks. This could allow policy drift and SSRF boundary inconsistency between channel/plugin paths. The fix unifies this path by: • routing Microsoft Teams Graph message/hosted-content/attachment fetches through shared SSRF-guarded fetch paths, • routing auth-scope fallback attachment downloads through the same guarded policy model, • centralizing hostname-suffix allowlist policy helpers in `plugin-sdk` so channel/plugins use the same allowlist normalization and policy construction behavior. Fix Commit(s) • `57334cd7d85174d5f951de01114fd5801b063564` OpenClaw thanks @tdjackey for reporting.

Related

Weakness · CWE (2)

  • CWE-367 Time-of-check Time-of-use (TOCTOU) Race Condition weakness
  • CWE-918 Server-Side Request Forgery weakness

References