Microsoft Windows - 'cmd.exe' Unicode Buffer Overflow (SEH)
Author: bitform
type: dos
platform: windows
port:
date_added: 2010-07-08
date_updated: 2017-03-31
verified: 1
codes:
tags:
aliases:
screenshot_url: http://www.exploit-db.com/screenshots/idlt14500/14282.png
application_url:
# Exploit Title: cmd.exe Unicode Buffer Overflow (SEH)
# Date: 7/8/2010
# Author: bitform
# Software Link: N/A
# Version: N/A
# Tested on: Windows Server 2003 SP2 and Windows XP SP2
# CVE : none
1) Acknowledgements
Props to Dan Crowley (@dan_crowley) at Core Security Technologies
for doing the research on Windows File Pseudonyms and coming up
with the idea for this buffer overflow.
His presentation can be found here:
www.sourceconference.com/bos10pubs/windows%20file%20pseudonyms.pptx
2) Bug
The TYPE command in Windows is equivalent to cat in *nix. It simply
outputs the contents of a file to stdout. If you use TYPE in conjunction
with the device file CON, you can feed stdin into a file.
Example: TYPE CON > evil.txt
CON is also interpreted as a file so you can append an extension to
it. Supplying a overly large extension will overflow the structured
exception handler.
This buffer overflow is not exploitable since cmd.exe and it's DLLs
are all compiled with SafeSEH. Oh well. :D
3) Code
TYPE CON.<A * 626><B * 2><C * 2372>
Note: The two B's is where the SEH is overwritten.