blockedNetworks does not cover in-cloud provider service networks on public unicast, e.g. IBM Cloud 161.26.0.0/16 and 166.8.0.0/14 #244
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?
Flagged twice as out of scope during the reviews of #217, correctly — it is a gap in the DEFAULT BLOCKLIST, not in
alwaysBlockedNetworks, and it predates that PR.blockedNetworksininternal/delivery/ssrf.gocovers private and IANA-reserved space. It does not cover provider service networks that live on PUBLIC unicast addresses. IBM Cloud is the concrete case:161.26.0.0/16and166.8.0.0/14are IBM-owned public ranges carrying in-cloud VPC DNS, NTP and package mirrors, reachable from a delivery target today with no allowlist set at all.These are deliberately NOT candidates for
alwaysBlockedNetworks, under the criterion that PR records above that variable: they are the operator's own in-cloud service network, and reaching operator infrastructure is the featureALLOWED_EGRESS_CIDRSexists to provide. They also fail the "cannot collide with anything the operator runs" property that makes a host route free.So the question this issue exists to answer is narrower and genuinely open: should the default blocklist refuse an operator's own in-cloud service network?
Arguments for: a webhook destination has no business resolving to your VPC's DNS resolver or package mirror, and an SSRF guard that stops at RFC1918 gives a false sense of coverage on any cloud that uses public space internally. Arguments against: these are not credential-vending, blocking them by default breaks a legitimate forward to a service the operator does run there, and the list is unbounded — every cloud has some version of this, so a partial list invites exactly the over-promising that has already been corrected twice on #217.
Also reported, and NOT accepted, in the same reviews: a GKE Services range
34.118.224.0/20. The prefix is unverified and it is a Kubernetes Service CIDR rather than a provider metadata network — do not add it without evidence.Definition of done:
alwaysBlockedNetworksnow does