hermes - 💡(How to fix) Fix [a2a_fleet] CRITICAL: auth_required defaults to false on a cross-machine surface

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Fix Action

Fix

  • Default auth_required to True; or refuse to bind a non-loopback bind_host while auth_required is false.
  • Document the plaintext-bearer-over-HTTP risk in the server module docstring (no TLS in v0.1).
  • Return 401/503 with a generic message for auth-misconfig; do not disclose token_env state.

Filed from opus-4.8 plugin audit (a2a_fleet).

RAW_BUFFERClick to expand / collapse

Severity: CRITICAL (security — insecure default)

Inbound /jsonrpc auth is off by default on a surface explicitly designed for cross-machine peers.

Evidence

  • plugins/a2a_fleet/fleet_config.py:111auth_required defaults to False.
  • plugins/a2a_fleet/server.py:108-111_check_bearer returns None (allows) when auth_required is false.
  • plugins/a2a_fleet/server.py:3-7 — module docstring markets the surface for cross-machine access; README/agent-card advertise bearer auth.

Default-open + intended off-host binding = unauthenticated /jsonrpc exposed to the LAN whenever bind_host is set non-loopback.

Related (A2A-8, folded)

server.py:117-127 returns HTTP 500 for the auth-misconfig case (other auth failures return 401) and the 500 message discloses that token_env is unset — config-state leak.

Fix

  • Default auth_required to True; or refuse to bind a non-loopback bind_host while auth_required is false.
  • Document the plaintext-bearer-over-HTTP risk in the server module docstring (no TLS in v0.1).
  • Return 401/503 with a generic message for auth-misconfig; do not disclose token_env state.

Filed from opus-4.8 plugin audit (a2a_fleet).

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING