rpcbind/LIBTIRPC/NTIRPC XDR String UDP Packet resource management
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.3 | $0-$5k | 0.00 |
Summary
A vulnerability has been found in rpcbind, LIBTIRPC and NTIRPC and classified as problematic. Affected by this vulnerability is an unknown functionality of the component XDR String Handler. The manipulation as part of UDP Packet leads to resource management. This vulnerability is traded as CVE-2017-8779. It is possible to initiate the attack remotely. Furthermore, there is an exploit available. It is recommended to apply restrictive firewalling.
Details
A vulnerability was found in rpcbind, LIBTIRPC and NTIRPC (the affected version unknown) and classified as problematic. This issue affects an unknown part of the component XDR String Handler. The manipulation as part of a UDP Packet leads to a resource management vulnerability. Using CWE to declare the problem leads to CWE-399. Impacted is availability. The summary by CVE is:
rpcbind through 0.2.4, LIBTIRPC through 1.0.1 and 1.0.2-rc through 1.0.2-rc3, and NTIRPC through 1.4.3 do not consider the maximum RPC data size during memory allocation for XDR strings, which allows remote attackers to cause a denial of service (memory consumption with no subsequent free) via a crafted UDP packet to port 111, aka rpcbomb.
The bug was discovered 05/03/2017. The weakness was shared 05/04/2017 by Guido Vranken (Website). It is possible to read the advisory at exploit-db.com. The identification of this vulnerability is CVE-2017-8779 since 05/04/2017. The attack may be initiated remotely. No form of authentication is needed for a successful exploitation. Technical details are unknown but a public exploit is available.
A public exploit has been developed by Guido Vranken in Ruby and been published 4 days after the advisory. The exploit is available at exploit-db.com. It is declared as highly functional. The vulnerability was handled as a non-public zero-day exploit for at least 1 days. During that time the estimated underground price was around $0-$5k. The vulnerability scanner Nessus provides a plugin with the ID 100326 (CentOS 7 : rpcbind (CESA-2017:1262)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family CentOS Local Security Checks and running in the context l. The commercial vulnerability scanner Qualys is able to test this issue with plugin 197247 (Ubuntu Security Notification for Libtirpc Vulnerabilities (USN-3759-1)). The code used by the exploit is:
pkt = [0].pack('N') # xid
pkt << [0].pack('N') # message type CALL
pkt << [2].pack('N') # RPC version 2
pkt << [100000].pack('N') # Program
pkt << [4].pack('N') # Program version
pkt << [9].pack('N') # Procedure
pkt << [0].pack('N') # Credentials AUTH_NULL
pkt << [0].pack('N') # Credentials length 0
pkt << [0].pack('N') # Credentials AUTH_NULL
pkt << [0].pack('N') # Credentials length 0
pkt << [0].pack('N') # Program: 0
pkt << [0].pack('N') # Ver
pkt << [4].pack('N') # Proc
pkt << [4].pack('N') # Argument length
pkt << [numBytes].pack('N') # PayloadAddressing this vulnerability is possible by firewalling udp/111 (rpc). A possible mitigation has been published 3 weeks after the disclosure of the vulnerability.
The vulnerability is also documented in the databases at Exploit-DB (41974), Tenable (100326), SecurityFocus (BID 98325†) and SecurityTracker (ID 1038532†). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Product
Name
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.4VulDB Meta Temp Score: 6.3
VulDB Base Score: 5.3
VulDB Temp Score: 5.2
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.5
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Resource managementCWE: CWE-399 / CWE-404
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Access: Public
Status: Highly functional
Author: Guido Vranken
Programming Language: 🔍
Download: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 100326
Nessus Name: CentOS 7 : rpcbind (CESA-2017:1262)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
OpenVAS ID: 703845
OpenVAS Name: Debian Security Advisory DSA 3845-1 (libtirpc - security update)
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
MetaSploit ID: rpcbomb.rb
MetaSploit Name: RPC DoS targeting *nix rpcbind/libtirpc
MetaSploit File: 🔍
Exploit-DB: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: FirewallStatus: 🔍
Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Exploit Delay Time: 🔍
Firewalling: 🔍
Timeline
05/03/2017 🔍05/03/2017 🔍
05/04/2017 🔍
05/04/2017 🔍
05/04/2017 🔍
05/05/2017 🔍
05/08/2017 🔍
05/08/2017 🔍
05/22/2017 🔍
05/22/2017 🔍
05/23/2017 🔍
12/22/2024 🔍
Sources
Advisory: RHSA-2017:1262Researcher: Guido Vranken
Status: Confirmed
Confirmation: 🔍
CVE: CVE-2017-8779 (🔍)
GCVE (CVE): GCVE-0-2017-8779
GCVE (VulDB): GCVE-100-100859
OVAL: 🔍
SecurityFocus: 98325 - Rpcbind CVE-2017-8779 Remote Denial of Service Vulnerability
OSVDB: - CVE-2017-8779 - rpcbind - Denial of Service Issue
SecurityTracker: 1038532
scip Labs: https://www.scip.ch/en/?labs.20161013
Entry
Created: 05/05/2017 09:02Updated: 12/22/2024 18:19
Changes: 05/05/2017 09:02 (92), 10/02/2020 20:25 (7), 12/06/2022 07:51 (4), 12/22/2024 18:19 (15)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.