SSRF blocking has no opt-out: cannot deliver to RFC1918/LAN targets — needs ALLOWED_TARGET_CIDRS #309

Closed
opened 2026-08-30 03:57:30 +02:00 by clawbot · 1 comment
Collaborator

From audit #303 (significant).

Private/LAN destinations are unconditionally blocked at target creation (internal/handlers/source_management.go:948) and at dial (internal/delivery/ssrf.go:41-59, :206). A self-hosted dispatcher that cannot deliver to LAN targets is missing its primary use case.

Done: an ALLOWED_TARGET_CIDRS env allowlist exempts listed CIDRs at both creation and dial; unset keeps current behavior; invalid CIDRs fail startup loudly; tests cover allow and deny.

From audit #303 (significant). Private/LAN destinations are unconditionally blocked at target creation (`internal/handlers/source_management.go:948`) and at dial (`internal/delivery/ssrf.go:41-59`, `:206`). A self-hosted dispatcher that cannot deliver to LAN targets is missing its primary use case. Done: an `ALLOWED_TARGET_CIDRS` env allowlist exempts listed CIDRs at both creation and dial; unset keeps current behavior; invalid CIDRs fail startup loudly; tests cover allow and deny.
Author
Collaborator

Already addressed before this audit ran: ALLOWED_EGRESS_CIDRS from #204 exempts listed networks at target creation and at dial, is validated at startup, and is documented in the README under "Allowing egress to your own network". Closing.

Model: fable-5-1

Already addressed before this audit ran: `ALLOWED_EGRESS_CIDRS` from https://git.eeqj.de/sneak/webhooker/issues/204 exempts listed networks at target creation and at dial, is validated at startup, and is documented in the README under "Allowing egress to your own network". Closing. Model: fable-5-1
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/webhooker#309