Mind the gap: Google patches holes in Chrome – exploit already out there for one of them after duo spot code fix

Pair engineer malicious code from public source tweak before official binary releases

Mind the gap

Google has updated Chrome for Linux, Mac, and Windows to address three security vulnerabilities – and exploit code for one of them is already public, so get patching.

In a release note on Monday, Krishna Govind, a test engineer at Google, said Chrome version 80.0.3987.122 addresses three flaws identified by various researchers. Each is rated high severity.

One, reported by André Bargull, is an integer-overflow bug in International Components for Unicode (ICU), a set of libraries for C/C++ and Java that handle Unicode and globalization support. This bug earned a $5,000 bounty from Google for Bargull, and no CVE has been issued.

The second flaw, reported by Sergei Glazunov of Google's Project Zero team, is an out-of-bounds memory access in the streams component of the Chromium browser. It's designated CVE-2020-6407.

The third, reported by Clement Lecigne of Google's Threat Analysis Group, is a type-confusion bug in the TurboFan compiler for V8, the open-source Chromium JavaScript engine.

This particular remote-code execution vulnerability, CVE-2020-6418, was disclosed by Lecigne to the Chromium team on February 18, and quietly fixed a day later.

Rapper Jay-Z on stage

If you're running Windows, I feel bad for you, son. Microsoft's got 99 problems, better fix each one

READ MORE

Interestingly enough, at the time, this public source-code tweak was spotted and studied by Exodus Intelligence researchers István Kurucsai and Vignesh Rao, who hoped to see whether it's still practical to identify security bug fixes among code changes in the Chromium source tree and develop an exploit before the patch sees an official release, a practice known as patch-gapping.

As such, Kurucsai and Rao developed proof-of-concept exploit code for CVE-2020-6418 after spotting the fix buried in the source tree, and before Google could emit an official binary release. The duo have now shared their exploit code [ZIP] which can be used by white and black hats to target those slow to patch.

The bug arises from a side-effect of the JSCreate operation and the way it handles JavaScript objects; this can be abused by a malicious webpage to execute arbitrary code within the browser sandbox. This involves modifying the length of an array to an arbitrary value to get access to the V8 memory heap. A hacker would need to break out of the sandbox to hijack a device or PC, we note.

In their write-up, Kurucsai and Rao observe that it took three days to analyze the flaw and develop exploit code. "Considering that a potential attacker would try to couple this with a sandbox escape and also work it into their own framework, it seems safe to say that one-day vulnerabilities are impractical to exploit on a weekly or bi-weekly release cycle," they said.

According to Govind, Google is keeping the discussion of the V8 bug private until the update, usually distributed automatically, reaches the majority of Chrome users. The Googler noted the we giant "is aware of reports that an exploit for CVE-2020-6418 exists in the wild."

Google's most recent Chrome zero-day fix arrived last November, when the Chocolate Factory repaired a use-after-free vulnerability (CVE-2019-13720). ®

Sponsored: Webcast: Build the next generation of your business in the public cloud

SUBSCRIBE TO OUR WEEKLY TECH NEWSLETTER


Biting the hand that feeds IT © 1998–2020