Skip to content

v0.2.2

Choose a tag to compare

@github-actions github-actions released this 28 Oct 15:42
· 5 commits to main since this release
31483b9

Security hardening

  • Bearer scheme (RFC 7235). The agent token is read from Authorization: Bearer <token>; the scheme
    is case-insensitive and one or more spaces may follow it. In config-file mode an Authorization
    header with any other scheme, or a bare token without Bearer, now answers
    401 {"error":"invalid_scheme"} instead of being compared with the agent tokens.
    Breaking for a client that sent the bare token (Authorization: OWE_…): send
    Authorization: Bearer OWE_… (every OpenAI/OpenRouter SDK already does). The control-plane mode is
    unchanged (invalid_token).
  • Every 401 carries WWW-Authenticate: Bearer.
  • SSRF: numeric IP spellings Go does not parse as an IP (2130706433, 0x7f000001, 127.1,
    0177.0.0.1, 127.0.0.01) are refused before any DNS lookup (403 ssrf_blocked). Hex-dotted
    spellings (0x7f.1) still go to the resolver; the dial-time check refuses a private result.
  • Fail-fast configuration: the gateway does not start when a target's base_url is not an absolute
    http(s) URL with a host, a target has no host, or an agent's allowed_targets names a target that
    does not exist (checked only when the file defines targets). The error names the target or agent.

The error codes are listed in the README.

Image: ghcr.io/openwaf-dev/egress:0.2.2 (linux/amd64, linux/arm64). Binaries with SHA256SUMS
attached.