| Summary: | A use-after-free vulnerability exists in the MediaRecorder API of Webkit WebKitGTK 2.40.5. A specially crafted web page can abuse this vulnerability to cause memory corruption and potentially arbitrary code execution. | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Security | Reporter: | vulndiscovery | ||||||
| Component: | Security | Assignee: | WebKit Security Group <webkit-security-unassigned> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | bfulgham, clopez, ddkilzer, eric.carlson, mcatanzaro, philn, webkit-bug-importer | ||||||
| Priority: | P2 | Keywords: | InRadar | ||||||
| Version: | WebKit Nightly Build | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Attachments: |
|
||||||||
|
Description
vulndiscovery
2023-08-24 01:51:19 PDT
Created attachment 467414 [details]
Proof of concept
cc'd @philn for visibility. In MediaRecorder::fetchData() we have this:
auto& privateRecorder = *m_private;
std::unique_ptr<MediaRecorderPrivate> takenPrivateRecorder;
if (takeRecorder == TakePrivateRecorder::Yes)
takenPrivateRecorder = WTFMove(m_private);
I wonder, is it safe to use privateRecorder after m_private was moved?
Answering myself, yes, seems safe. A bit convoluted though Hi, consider CCing bugs-noreply@webkitgtk.org on platform-specific security issues, or else we don't know about them. Anyway, this looks like a clear candidate for a CVE, so we will request one. (In reply to vulndiscovery from comment #0) > TALOS-2023-1831 > CVE-2023-39928 Hold up, we already have one :) Included in advisory https://webkitgtk.org/security/WSA-2023-0009.html |