A Eulogy for Patch-Gapping Chrome

Authors: István Kurucsai and Vignesh S Rao


In 2019 we looked at patch gapping Chrome on two separate occasions. The conclusion was that exploiting 1day vulnerabilities well before the fixes were distributed through the stable channel is feasible and allows potential attackers to have 0day-like capabilities with only known vulnerabilities. This was the result of a combination of factors:


the 6-week release-cycle of Chrome that only included occasional releases in-between
the open-source development model that makes security fixes public before they are released to end-users
this is compounded by the fact that regression tests are often included with patches, reducing exploit development time significantly. It is often the case that achieving the initial corruption is the hardest part of a browser/JS engine exploit as the rest can be relatively easily reused

Mozilla seems to tackle the issue by withholding security-critical fixes from public source repositories right up to the point of a release and not including regressions tests with them. Google went with an aggressive release schedule, first to a biweekly cycle for stable, then pushing it even further with what appears to be weekly releases in February.


This post tries to examine if leveraging of 1day vulnerabilities in Chrome is still practical by analyzing and exploiting a vulnerability in TurboFan. Some details of v8 that were already discussed in our previous posts will be glossed over, so we would recommend reading them as a refresher.


The vulnerability


We will be looking Chromium issue 1053604 (restricted for the time being), fixed on the 19th of February. It h ..

Support the originator by clicking the read the rest link below.