Описание
OpenClaw affected by denial of service via unbounded URL-backed media fetch
Summary
URL-backed media fetch handling allocated the entire response payload in memory (arrayBuffer) before enforcing maxBytes, allowing oversized responses to cause memory exhaustion.
Affected Versions
openclaw(npm): <2026.2.14clawdbot(npm): <=2026.1.24-3
Patched Versions
openclaw(npm):2026.2.14
Fix Commit
openclaw/openclawmain:00a08908892d1743d1fc52e5cbd9499dd5da2fe0
Details
Affected component:
src/media/input-files.ts(fetchWithGuard)
When content-length is missing or incorrect, reading the body via response.arrayBuffer() buffers the full payload before a size check can run.
Proof of Concept
- Configure URL-based media input.
- Serve a response larger than
maxBytes(chunked transfer / nocontent-length). - Trigger the
fetchWithGuardURL fetch path.
Example local server (large response):
Impact
Availability loss via memory pressure from attacker-controlled remote media responses.
Mitigation
Until a patched release is available, disable URL-backed media inputs (or restrict to a tight hostname allowlist) and use conservative maxBytes limits.
Credits
Reported by @vincentkoc.
Пакеты
openclaw
< 2026.2.14
2026.2.14
Связанные уязвимости
OpenClaw versions prior to 2026.2.14 contain a denial of service vulnerability in the fetchWithGuard function that allocates entire response payloads in memory before enforcing maxBytes limits. Remote attackers can trigger memory exhaustion by serving oversized responses without content-length headers to cause availability loss.
Уязвимость функции fetchWithGuard() ИИ-агента OpenClaw (ранее - ClawdBot или MoltBot), позволяющая нарушителю вызвать отказ в обслуживании