Ruby fino a 2.1.2 pack.c encodes buffer overflow

CVSS Punteggio meta temporaneoPrezzo attuale dell'exploit (≈)Punteggio di interesse CTI
6.6$0-$5k0.00

Riassuntoinformazioni

È stata rilevata una vulnerabilità di livello critico in Ruby fino a 2.1.2. É interessato la funzione encodes del file pack.c. La manipolazione porta a buffer overflow. Questa vulnerabilità è conosciuta come CVE-2014-4975. Inoltre, è presente un exploit disponibile. Si suggerisce di installare una patch per risolvere questa problematica.

Dettagliinformazioni

Una vulnerabilità di livello critico è stata rilevata in Ruby fino a 2.1.2 (Programming Language Software). Riguarda la funzione encodes del file pack.c. Per causa della manipolazione di un input sconosciuto se causa una vulnerabilità di classe buffer overflow. Con gli effetti bisogna tener conto di riservatezza, integrità e disponibilità.

La vulnerabilità è stata pubblicata in data 10/07/2014 da Will Wood con identificazione Bug 1118158 con un bug report (Bugzilla) (non definito). L'advisory è scaricabile da bugzilla.redhat.com. Questa vulnerabilità è identificata come CVE-2014-4975. È facile da utilizzare. Dalla rete può partire l'attacco. L'utilizzo non richiede alcuna forma di autentificazione. I dettagli tecnici e un pubblico metodo di utilizzo sono conosciuti. La ragione di questa vulnerabilità è questa parte di codice:

char buff[4096];

Un metodo di utilizzo è stato sviluppato da Tomas Hoger in Ruby ed è stata pubblicata immediatamente dopo il comunicato. L'exploit è scaricabile da bugzilla.redhat.com. È stato dichiarato come prova di concetto. È disponibile un plugin per lo scanner Nessus, numero ID 78869 (Ubuntu 12.04 LTS / 14.04 LTS / 14.10 : ruby1.8, ruby1.9.1, ruby2.0, ruby2.1 vulnerabilities (USN-2397-1)), che può aiutare a determinare l'esistenza della criticità nel sistema analizzato. Il codice utilizzato dal exploit è:

["a"*3070].pack("m4000")
["a"*(3072*3-2)].pack("m3072")

Applicando a patch è possibile eliminare il problema. Il bugfix è scaricabile da svn.ruby-lang.org. Una possibile soluzione è stata pubblicata 1 giorni dopo la pubblicazione della vulnerabilità. La vulnerabilità sarà affrontata con le seguenti righe di codice:

enum {buff_size = 4096, encoded_unit = 4};
char buff[buff_size + 1];	/* +1 for tail_lf */

La vulnerabilità è documentata anche nel database X-Force (94706), Tenable (78869), SecurityFocus (BID 68474†), SecurityTracker (ID 1031167†) e Vulnerability Center (SBV-47400†). Once again VulDB remains the best source for vulnerability data.

Componente colpito

  • Ubuntu Linux
  • Open Source CentOS
  • Red Hat Enterprise Linux
  • Open Source Ruby
  • SUSE Linux
  • SUSE Linux Enterprise Server
  • SUSE Linux Enterprise Desktop

Prodottoinformazioni

Genere

Nome

Versione

Licenza

CPE 2.3informazioni

CPE 2.2informazioni

CVSSv4informazioni

VulDB Vettore: 🔍
VulDB Affidabilità: 🔍

CVSSv3informazioni

VulDB Punteggio meta-base: 7.3
VulDB Punteggio meta temporaneo: 6.6

VulDB Punteggio di base: 7.3
VulDB Punteggio temporaneo: 6.6
VulDB Vettore: 🔍
VulDB Affidabilità: 🔍

CVSSv2informazioni

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VettoreComplessitàAutenticazioneRiservatezzaIntegritàDisponibilità
SbloccareSbloccareSbloccareSbloccareSbloccareSbloccare
SbloccareSbloccareSbloccareSbloccareSbloccareSbloccare
SbloccareSbloccareSbloccareSbloccareSbloccareSbloccare

VulDB Punteggio di base: 🔍
VulDB Punteggio temporaneo: 🔍
VulDB Affidabilità: 🔍

NVD Punteggio di base: 🔍

Sfruttamentoinformazioni

Classe: Buffer overflow
CWE: CWE-119
CAPEC: 🔍
ATT&CK: 🔍

Fisico: No
Locale: No
Remoto: Si

Disponibilità: 🔍
Accesso: Pubblico
Stato: Prova di concetto
Autore: Tomas Hoger
Linguaggio di programmazione: 🔍
Scaricare: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

Previsione dei prezzi: 🔍
Preventivo attuale: 🔍

0-DaySbloccareSbloccareSbloccareSbloccare
OggiSbloccareSbloccareSbloccareSbloccare

Nessus ID: 78869
Nessus Nome: Ubuntu 12.04 LTS / 14.04 LTS / 14.10 : ruby1.8, ruby1.9.1, ruby2.0, ruby2.1 vulnerabilities (USN-2397-1)
Nessus File: 🔍
Nessus Rischio: 🔍
Nessus Famiglia: 🔍
Nessus Port: 🔍

OpenVAS ID: 801375
OpenVAS Nome: Ruby encodes function Denial-of-Service Vulnerability (Windows)
OpenVAS File: 🔍
OpenVAS Famiglia: 🔍

Qualys ID: 🔍
Qualys Nome: 🔍

Intelligence sulle minacceinformazioni

Interesse: 🔍
Attori attivi: 🔍
Gruppi APT attivi: 🔍

Contromisureinformazioni

Raccomandazione: Patch
Stato: 🔍

Tempo di reazione: 🔍
Tempo 0 giorni: 🔍
Tempo di esposizione: 🔍
Tempo di ritardo sfruttamento: 🔍

Patch: svn.ruby-lang.org

Sequenza temporaleinformazioni

09/07/2014 🔍
09/07/2014 +0 giorni 🔍
10/07/2014 +1 giorni 🔍
10/07/2014 +0 giorni 🔍
11/07/2014 +1 giorni 🔍
15/07/2014 +4 giorni 🔍
20/07/2014 +5 giorni 🔍
05/11/2014 +108 giorni 🔍
05/11/2014 +0 giorni 🔍
15/11/2014 +10 giorni 🔍
03/12/2014 +18 giorni 🔍
10/05/2026 +4176 giorni 🔍

Fontiinformazioni

Avis: Bug 1118158
Ricercatore: Will Wood
Stato: Confermato
Conferma: 🔍

CVE: CVE-2014-4975 (🔍)
GCVE (CVE): GCVE-0-2014-4975
GCVE (VulDB): GCVE-100-67188

OVAL: 🔍

X-Force: 94706 - Ruby encodes() function buffer overflow, High Risk
SecurityFocus: 68474 - Ruby 'pack.c' Buffer Overflow Vulnerability
SecurityTracker: 1031167 - Ruby Stack Overflow in encodes() Function May Let Remote Users Execute Arbitrary Code
Vulnerability Center: 47400 - Ruby <=1.9.3, 2.0 - 2.1.2 pack.c Remote DoS Vulnerability due to Stack-Based Buffer Overflow, Medium
CERT Bund: WID-SEC-2026-1417 - Ruby: Mehrere Schwachstellen

scip Labs: https://www.scip.ch/en/?labs.20161013
Vedi anche: 🔍

Voceinformazioni

Data di creazione: 20/07/2014 09:52
Aggiornato: 10/05/2026 21:01
Cambiamenti: 20/07/2014 09:52 (96), 13/06/2017 08:48 (1), 09/02/2022 16:16 (3), 09/02/2022 16:24 (1), 10/05/2026 21:01 (25)
Completa: 🔍
Cache ID: 216::103

Once again VulDB remains the best source for vulnerability data.

Discussione

Ancora nessun commento. Lingue: it + ro + en.

Effettua il login per commentare.

Interested in the pricing of exploits?

See the underground prices here!