module

MS05-054 Microsoft Internet Explorer JavaScript OnLoad Handler Remote Code Execution

Disclosed
2005-11-21
Created
2018-05-30

Description

This bug is triggered when the browser handles a JavaScript 'onLoad' handler in
conjunction with an improperly initialized 'window()' JavaScript function.
This exploit results in a call to an address lower than the heap. The javascript
prompt() places our shellcode near where the call operand points to. We call
prompt() multiple times in separate iframes to place our return address.
We hide the prompts in a popup window behind the main window. We spray the heap
a second time with our shellcode and point the return address to the heap. I use
a fairly high address to make this exploit more reliable. IE will crash when the
exploit completes. Also, please note that Internet Explorer must allow popups
in order to continue exploitation.

Authors

Benjamin Tobias Franz
Stuart Pearson
Sam Sharps

Platform

Windows

Module Options

To display the available options, load the module within the Metasploit console and run the commands ‘show options’ or ‘show advanced’:


msf > use exploit/windows/browser/ms05_054_onload
msf exploit(ms05_054_onload) > show targets
...targets...
msf exploit(ms05_054_onload) > set TARGET < target-id >
msf exploit(ms05_054_onload) > show options
...show and set options...
msf exploit(ms05_054_onload) > exploit

Title
NEW

Explore Exposure Command

Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.