You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Cherry-pick of patch originally reviewed on
https://chromium-review.googlesource.com/c/chromium/src/+/6049756:
Fix UaF in Linux accessibility code.
Linux accessibility maintains a list of open menus; this list is used to
compute the top level active frame by checking what frame owns any
visible menu; it's also used for general checks about whether there's a
menu open.
It seems that in some circumstances requests arrive from the Linux
accessibility APIs which confuse this list - the exact circumstances are
not known, but it seems likely to be a race condition in when "menu
open" and "menu close" messages arrive when there are UI interactions
involving two menus. Unfortunately at the moment this may cause a
use-after-free bug.
This CL doesn't really attempt to resolve the underlying problem, but
ensures we can't have a use-after-free bug in these circumstances, by
ensuring we never keep a reference to a menu's ATK object. This may
possibly confuse subsequent logic, but that seems preferable to a
use-after-free bug, and in any case the list of menus seems like it
should reflect the destruction of a menu.
This problem has primarily been encountered during fuzzing, but has also
been reported from unit testing and from users in the field.
Bug: 359992017, 352530112, 40104941
Change-Id: I244270548df73898149b86d06e1853236d8ce835
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6049756
Reviewed-by: Greg Thompson <[email protected]>
Commit-Queue: Adrian Taylor <[email protected]>
Auto-Submit: Adrian Taylor <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1388727}
Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/624499
Reviewed-by: Anu Aliyas <[email protected]>
0 commit comments