vendor:
Edge
by:
Yuki Chen
8.8
CVSS
HIGH
Edge URL Utils Insecure URL Check
20
CWE
Product Name: Edge
Affected Version From: Build 17692.rs_prerelease.180609-1317
Affected Version To: Build 17692.rs_prerelease.180609-1317
Patch Exists: Yes
Related CWE: N/A
CPE: N/A
Metasploit:
N/A
Other Scripts:
N/A
Platforms Tested: Windows
2018
Content process -> Privileged content process (first_stage.js)
When spawning a new Edge content process, its privilege is determined by its URL. This URL check is performed by the LCIEUrlPolicy::GetPICForPrivilegedInternalPage method in eModel.dll. The method calls several another methods to check the URL. One of them EdgeUrlUtils::IsAboutFlagsResUri is vulnerable. Since it only checks the scheme and whether the URL ends with "/edgehtml.dll/flags.htm", the following URL which will execute arbitrary JavaScript code will be considered to need to spawn a privileged content process. As a navigation triggered from JavaScript to the "res" scheme is not allowed, an additional renderer exploit is required. I used issue 1588 for it.
Mitigation:
Ensure that the URL check is performed securely and that all parameters are properly validated.