The SSRF blocklist has no escape hatch, so a self-hosted proxy cannot forward to your own network #204
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
internal/delivery/ssrf.go:38-72hardcodes the blocked ranges with no configuration field. RFC1918, loopback and CGNAT are permanently unreachable as delivery destinations.That guard is correct as a default and must stay the default — it is what #36, #68 and #69 bought. But webhooker is self-hosted software whose main use is receiving a public webhook and forwarding it to an internal service: a container on the same Docker network, a box on
10.x, a service on127.0.0.1. All of those are refused today, with no way to permit one.Concrete evidence of the bite: during the deployability run I could not point a target at a sink on the same host, because every address on it is in the blocklist. The end-to-end test had to use a public internet echo service instead.
Definition of done:
ALLOWED_EGRESS_CIDRS, defaulting empty) allows specific CIDRs through the guard