diff --git a/apps/api/plane/app/serializers/webhook.py b/apps/api/plane/app/serializers/webhook.py index ef193e24d..2aecebcde 100644 --- a/apps/api/plane/app/serializers/webhook.py +++ b/apps/api/plane/app/serializers/webhook.py @@ -34,7 +34,7 @@ class WebhookSerializer(DynamicBaseSerializer): for addr in ip_addresses: ip = ipaddress.ip_address(addr[4][0]) - if ip.is_loopback: + if ip.is_private or ip.is_loopback or ip.is_reserved or ip.is_link_local: raise serializers.ValidationError({"url": "URL resolves to a blocked IP address."}) # Additional validation for multiple request domains and their subdomains @@ -69,7 +69,7 @@ class WebhookSerializer(DynamicBaseSerializer): for addr in ip_addresses: ip = ipaddress.ip_address(addr[4][0]) - if ip.is_loopback: + if ip.is_private or ip.is_loopback or ip.is_reserved or ip.is_link_local: raise serializers.ValidationError({"url": "URL resolves to a blocked IP address."}) # Additional validation for multiple request domains and their subdomains