Monday, October 14, 2024

CVE-2024-43683: MICROCHIP TIMEPROVIDER 4100 GRANDMASTER - URL REDIRECTION TO UNTRUSTED SITE ('Open Redirect') – CWE-601

Proceeding with the analysis of the “Microchip TimeProvider® 4100 Grandmaster TP4100” device, it was possible to identify a Host Header Injection vulnerability.

TimeProvider 4100 Grandmaster Device

The device fails to properly validate the Host header in HTTP GET and POST requests. This allows attackers to craft requests with arbitrary Host values, which the system accepts and processes without verification.

In observed cases, replacing the legitimate Host header with a malicious domain (e.g., pentester.com) results in the device accepting the request and redirecting users to the attacker-controlled domain.

This issue can be exploited to:

  • Perform phishing attacks by redirecting users to malicious websites that appear legitimate

  • Bypass access controls or URL-based filters in certain environments

  • Facilitate cache poisoning or other injection-based attacks

Since the device does not verify that the Host header matches its own hostname or expected domain, it becomes vulnerable to these types of manipulations.

Exploitation Steps

Here’s how an attacker could exploit this vulnerability:

  1. Craft an HTTP request (GET or POST) targeting the TimeProvider 4100’s web interface.

  2. Replace the Host header with a malicious domain under the attacker’s control—for example: Host: pentester.com

  1. Send the request to the device.

  2. The device processes the request and redirects the user to the attacker-specified domain.

  3. The victim may unknowingly land on a malicious page designed to mimic the legitimate interface or capture credentials.

This redirection can occur in browsers or applications that use absolute URLs based on the Host header, making it particularly dangerous in environments where external links are passed through the device.

The following image shows an example of a request containing a custom Host header owned by a malicious user. It's also possible to verify that the browser automatically redirects to the specified domain:


Request RAW:

GET /dashboard HTTP/1.1

Host: pentester.com

Cache-Control: max-age=0

Sec-Ch-Ua: "Chromium";v="121", "Not A(Brand";v="99"

Sec-Ch-Ua-Mobile: ?0

Sec-Ch-Ua-Platform: "Linux"

Upgrade-Insecure-Requests: 1

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.6167.85 Safari/537.36

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7

Sec-Fetch-Site: same-origin

Sec-Fetch-Mode: navigate

Sec-Fetch-User: ?1

Sec-Fetch-Dest: document

Accept-Encoding: gzip, deflate, br

Accept-Language: en-US,en;q=0.9

Priority: u=0, i

Connection: close


Recommendations:

  • Implement strict server-side validation of the Host header against an expected allowlist.

  • Reject or log requests with unexpected Host values.

  • Ensure any redirections or URL generations use fixed, server-side hostnames rather than user-supplied headers.

  • Apply firmware updates once an official patch is made available by Microchip.

Conclusion:

This vulnerability highlights a common but serious oversight: trusting user-supplied HTTP headers without validation. Host header injection can be leveraged for phishing, redirection, and other malicious activities—all without requiring access or authentication.

Reporting Information:

CVE Identifier: CVE-2024-43683
CVSS Score: 6.1
Affected Versions: Firmware 1.0 through 2.4.7
Vulnerability Status: Resolved in firmware release 2.4.7
NIST: https://nvd.nist.gov/vuln/detail/CVE-2024-43683
Vendor Reference: 
https://www.microchip.com/en-us/solutions/technologies/embedded-security/how-to-report-potential-product-security-vulnerabilities/timeprovider-4100-grandmaster-improper-verification-of-host-header
Reported by: Armando Huesca Prida, Marco Negro, Antonio Carriero, Vito Pistillo, Davide Renna, Manuel Leone, Massimiliano Brolli and TIM Security Red Team Research.