A safety flaw in Apple Safari that was exploited within the wild earlier this 12 months was initially fastened in 2013 and reintroduced in December 2016, in response to a brand new report from Google Venture Zero.
The problem, tracked as CVE-2022-22620 (CVSS rating: 8.8), issues a case of a use-after-free vulnerability within the WebKit part that might be exploited by a chunk of specifically crafted internet content material to achieve arbitrary code execution.
In early February 2022, Apple shipped patches for the bug throughout Safari, iOS, iPadOS, and macOS, whereas acknowledging that it “could have been actively exploited.”
“On this case, the variant was fully patched when the vulnerability was initially reported in 2013,” Maddie Stone of Google Venture Zero mentioned. “Nevertheless, the variant was reintroduced three years later throughout massive refactoring efforts. The vulnerability then continued to exist for five years till it was fastened as an in-the-wild zero-day in January 2022.”
Whereas each the 2013 and 2022 bugs within the Historical past API are primarily the identical, the paths to set off the vulnerability are completely different. Then subsequent code adjustments undertaken years later revived the zero-day flaw from the useless like a “zombie.”
Stating the incident is just not distinctive to Safari, Stone additional careworn taking enough time to audit code and patches to keep away from situations of duplicating the fixes and understanding the safety impacts of the adjustments being carried out.
“Each the October 2016 and the December 2016 commits had been very massive. The commit in October modified 40 information with 900 additions and 1225 deletions. The commit in December modified 95 information with 1336 additions and 1325 deletions,” Stone famous.
“It appears untenable for any builders or reviewers to grasp the safety implications of every change in these commits intimately, particularly since they’re associated to lifetime semantics.”