HexBrain

Internet Bug Bounty · Report #1714979

DNS rebinding in --inspect (insufficient fix of CVE-2022-32212 affecting macOS devices)

Validstatus
highseverity
$4,200bounty
47upvotes
12 Jan 2023disclosed

Summary

DNS rebinding in --inspect (insufficient fix of CVE-2022-32212 affecting macOS devices) (High) (CVE-2022-32212, CVE-2018-7160)

The fix for CVE-2022-32212, covered the cases for routable IP addresses, however, there exists a specific behavior on macOS devices when handling the http://0.0.0.0 URL that allows an attacker-controlled DNS server to bypass the DNS rebinding protection by resolving hosts in the .local domain.

An attacker-controlled DNS server can, resolve <Computer Name>.local to any arbitrary IP address, and consequently cause the victim's browser to load arbitrary content at http://0.0.0.0. This allows the attacker to bypass the DNS rebinding protection.

Impacts:

All versions of the 18.x, 16.x, and 14.x release lines.

How it was found

The fix for CVE-2022-32212, covered the cases for routable IP addresses, however, there exists a specific behavior on macOS devices when handling the http://0.0.0.0 URL that allows an attacker-controlled DNS server to bypass the DNS rebinding protection by resolving hosts in the .local domain.

Original HackerOne report

Node.js Blog

Impact

Attacker with access to a compromised DNS server or the ability to spoof its responses can gain access to the Node.js debugger, which can result in remote code execution.

This report was disclosed publicly on HackerOne and belongs to its author and the program. See the original