Mozilla Foundation Security Advisory 2021-33
Security Vulnerabilities fixed in Firefox 91
- Announced
- August 10, 2021
- Impact
- high
- Products
- Firefox
- Fixed in
-
- Firefox 91
#CVE-2021-29986: Race condition when resolving DNS names could have led to memory corruption
- Reporter
- pahhur
- Impact
- high
Description
A suspected race condition when calling getaddrinfo
led to memory corruption and a potentially exploitable crash.
Note: This issue only affected Linux operating systems. Other operating systems are unaffected.
References
#CVE-2021-29981: Live range splitting could have led to conflicting assignments in the JIT
- Reporter
- Gary Kwong
- Impact
- high
Description
An issue present in lowering/register allocation could have led to obscure but deterministic register confusion failures in JITted code that would lead to a potentially exploitable crash.
References
#CVE-2021-29988: Memory corruption as a result of incorrect style treatment
- Reporter
- Irvan Kurniawan
- Impact
- high
Description
Firefox incorrectly treated an inline list-item element as a block element, resulting in an out of bounds read or memory corruption, and a potentially exploitable crash.
References
#CVE-2021-29983: Firefox for Android could get stuck in fullscreen mode
- Reporter
- Irvan Kurniawan
- Impact
- high
Description
Firefox for Android could get stuck in fullscreen mode and not exit it even after normal interactions that should cause it to exit.
Note: This issue only affected Firefox for Android. Other operating systems are unaffected.
References
#CVE-2021-29984: Incorrect instruction reordering during JIT optimization
- Reporter
- Lukas Bernhard
- Impact
- high
Description
Instruction reordering resulted in a sequence of instructions that would cause an object to be incorrectly considered during garbage collection. This led to memory corruption and a potentially exploitable crash.
References
#CVE-2021-29980: Uninitialized memory in a canvas object could have led to memory corruption
- Reporter
- Irvan Kurniawan
- Impact
- high
Description
Uninitialized memory in a canvas object could have caused an incorrect free() leading to memory corruption and a potentially exploitable crash.
References
#CVE-2021-29987: Users could have been tricked into accepting unwanted permissions on Linux
- Reporter
- Irvan Kurniawan
- Impact
- moderate
Description
After requesting multiple permissions, and closing the first permission panel, subsequent permission panels will be displayed in a different position but still record a click in the default location, making it possible to trick a user into accepting a permission they did not want to.
This bug only affects Firefox on Linux. Other operating systems are unaffected.
References
#CVE-2021-29985: Use-after-free media channels
- Reporter
- Marcin 'Icewall' Noga of Cisco Talos
- Impact
- moderate
Description
A use-after-free vulnerability in media channels could have led to memory corruption and a potentially exploitable crash.
References
#CVE-2021-29982: Single bit data leak due to incorrect JIT optimization and type confusion
- Reporter
- Lukas Bernhard
- Impact
- low
Description
Due to incorrect JIT optimization, we incorrectly interpreted data from the wrong type of object, resulting in the potential leak of a single bit of memory.
References
#CVE-2021-29989: Memory safety bugs fixed in Firefox 91 and Firefox ESR 78.13
- Reporter
- Mozilla developers and community
- Impact
- high
Description
Mozilla developers Christoph Kerschbaumer, Olli Pettay, Sandor Molnar, and Simon Giesecke reported memory safety bugs present in Firefox 90 and Firefox ESR 78.12. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could have been exploited to run arbitrary code.
References
#CVE-2021-29990: Memory safety bugs fixed in Firefox 91
- Reporter
- Mozilla developers and community
- Impact
- high
Description
Mozilla developers and community members Kershaw Chang, Philipp, Chris Peterson, and Sebastian Hengst reported memory safety bugs present in Firefox 90. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could have been exploited to run arbitrary code.