Security researcher Zach Hoffman reported that a
recursive call to eval()
wrapped in
a try/catch
statement places the browser into a
inconsistent state. Any dialog box opened in this state is displayed
without text and with non-functioning buttons. Closing the window
causes the dialog to evaluate to true. An attacker could use this
issue to force a user into accepting any dialog, such as one granting
elevated privileges to the page presenting the dialog.