There are several places where the New Edge UI might attempt to access a local IP address. These local IP addresses might correspond to private or otherwise protected resources that should not be exposed to external users:
- The Trace tool in the New Edge UI has the ability to send and receive API requests to any specified URL. In certain deployment scenarios where Edge components are co-hosted with other internal services, a malicious user may misuse the power of the Trace tool by making requests to private IP addresses.
- When creating an API proxy from an OpenAPI specification, the specification describes such elements of an API as its base path, paths and verbs, headers, and more. As part of the spec, a malicious user can specify a base path of the proxy that refers to a private IP address.
- When creating an API proxy from a WSDL file located on a private IP address or local network.
For security reasons, by default, the New Edge UI is prevented from referencing private IP addresses. The list of private IP addresses includes:
- Loopback address (127.0.0.1 or localhost)
- Site-Local Addresses (For IPv4 - 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
- Any Local Address (any address resolving to localhost).
If you want to enable the New Edge UI to access private IP addresses, set the following tokens:
- For the Trace tool, the
conf_uebe_trace_for_internal_addressesproperty is disabled (false) by default. Set it totrueto enable the Trace tool access to private IP addresses. - For OpenAPI specs, the
conf_uebe_openapi_for_internal_addressesproperty is disabled (false) by default. Set it totrueto enable OpenAPI access to private IP addresses. - For WSDL files, the
conf_uebe_wsdl_for_internal_addressesproperty is disabled (false) by default. Set it totrueto enable fetching a WSDL file from private IP addresses.
To set these properties to true:
- Open the
management-ui.propertiesfile in an editor. If the file does not exist, create it:vi /opt/apigee/customer/application/management-ui.properties
- Set the following properties to
true:conf_uebe_trace_for_internal_addresses=true conf_uebe_openapi_for_internal_addresses=true conf_uebe_wsdl_for_internal_addresses=true
- Save your changes to
management-ui.properties. - Make sure the properties file is owned by the
apigeeuser:chown apigee:apigee /opt/apigee/customer/application/management-ui.properties
- Restart the New Edge UI:
/opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart
The New Edge UI can now access local IP addresses.