Repository navigation
v5.17.2 - Security fixes (GHSA-jw52-p54c-w7hj, CodeQL, ClawScan)
Security fixes
- GHSA-jw52-p54c-w7hj (Low):
McpStreamableServerCORS reflection. The Streamable HTTP MCP transport reflected alocalhost/127.0.0.1Originon any bind interface, so on a0.0.0.0bind a local page could readGET /toolsandGET /healthcross-origin. The localhost Origin is now reflected only on loopback binds, matching the v5.15.2 fix forMcpSseServer(GHSA-4pvg-m42h-c3x2). Reported by @mgjxwmxhn. - Egress proxy upstream URL (CodeQL
js/request-forgery). Upstream URLs are built from the operator's route origin; the agent only supplies the path and query. - Key-file creation (CodeQL
js/file-system-race).perpetual keygenclaims both key files with an exclusive create before writing; bounded reads use a single file descriptor. - ClawHub skill: Windows locking (SkillSpector / ClawScan).
blackboard.pynow uses the OS byte-range lock (msvcrt.locking) instead of a check-then-write marker. It is exclusive across processes and released automatically if the holder dies. - ClawHub skill: unsigned grants (ClawScan).
validate_token.pyrejects unsigned grants and grants it cannot verify, and rejects malformed records instead of crashing.
Changed
- The
scrubSecretEnvpattern is now grouped explicitly (CodeQLjs/regex/missing-regexp-anchor); matching is unchanged. - 4,190 tests across 43 suites.
Full details: CHANGELOG