fix: private ip address check for webhook creation (#793)

This commit is contained in:
Rajat Ahuja 2026-06-11 10:35:20 -04:00 committed by GitHub
parent 6aa6033a16
commit 44c85fa3e2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 11 additions and 4 deletions

View File

@ -681,10 +681,17 @@ class WebhookEndpointCreate(WebhookEndpointBase):
if parsed.hostname:
try:
ip_address = ipaddress.ip_address(parsed.hostname)
if ip_address.is_private:
raise ValueError("Private IP addresses are not allowed")
except ValueError: # Not an IP address, might be a hostname
pass
except ValueError: # Not an IP literal — a hostname, leave it alone
ip_address = None
if ip_address is not None and (
ip_address.is_private
or ip_address.is_loopback
or ip_address.is_link_local
or ip_address.is_reserved
or ip_address.is_multicast
or ip_address.is_unspecified
):
raise ValueError("Private/internal IP addresses are not allowed")
return v