A security researcher has disclosed a flaw that could be used to spoof website addresses in either Edge or Safari.
Rafay Baloch told The Register that while Microsoft has since patched the flaw (CVE-2018-8383) in its browser, Apple has been dragging its feet on a fix for Safari for weeks, and the browser remains vulnerable.
The vulnerability is the result of what Baloch describes as a race condition that would potentially allow the attacker to load a page and then re-write code in the body without changing the URL displayed in the address bar.
In the case of CVE-2018-8383, the flaw would allow the attacker to carry out the spoofing attack by exploiting a bug in the way calls to non-existent ports are made. In practice, this would allow an attacker to create fake log-ins or other forms that could harvest data from users who thought they were on a different page.
“During my testing, it was observed that upon requesting data from a non-existent port the address was preserved and hence due to a race condition over a resource requested from non-existent port combined with the delay induced by setInterval function managed to trigger address bar spoofing,” Baloch explained.
“It causes browser to preserve the address bar and to load the content from the spoofed page. The browser will however eventually load the resource, however the delay induced with setInterval function would be enough to trigger the address bar spoofing.”
The researcher has posted videos proof of concept for both Edge:
Baloch says that, because the browsers are closed-source, he doesn’t know exactly why Edge and Safari would contain the flaw but not, say, Chrome or Firefox. He notes that it could simply be down to when the browsers decide to display a page’s URL.
“Different browsers handle navigations differently, in this case Apple Safari and Edge browser allowed code to update the browser when the page is still loading,” Baloch told El Reg.
“This issue can be addressed when browsers would allow address bar to be updated once the page is completely loaded.”
Where the two companies differ, however, is in how they responded to the reports of the flaw. While Microsoft has already fixed the bug, Baloch has yet to get word that the flaw he reported to Cupertino back on June 2 has been fixed. We’ve yet to hear from Apple about the state of its flaw.
Now, with the customary 90 day window having come and gone, Baloch said he is disclosing the flaw but holding off on sharing proof-of-concept code until Apple finally does kick out a patch.