GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

FKIE_CVE-2015-7551

Vulnerability from fkie_nvd - Published: 2016-03-24 01:59 - Updated: 2026-06-17 00:32
Summary
The Fiddle::Handle implementation in ext/fiddle/handle.c in Ruby before 2.0.0-p648, 2.1 before 2.1.8, and 2.2 before 2.2.4, as distributed in Apple OS X before 10.11.4 and other products, mishandles tainting, which allows context-dependent attackers to execute arbitrary code or cause a denial of service (application crash) via a crafted string, related to the DL module and the libffi library. NOTE: this vulnerability exists because of a CVE-2009-5147 regression.
References
secalert@redhat.comhttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796344
secalert@redhat.comhttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796551
secalert@redhat.comhttp://lists.apple.com/archives/security-announce/2016/Mar/msg00004.html
secalert@redhat.comhttp://www.oracle.com/technetwork/topics/security/bulletinapr2016-2952098.html
secalert@redhat.comhttp://www.securityfocus.com/bid/76060
secalert@redhat.comhttps://access.redhat.com/errata/RHSA-2018:0583
secalert@redhat.comhttps://github.com/ruby/ruby/commit/339e11a7f178312d937b7c95dd3115ce7236597a
secalert@redhat.comhttps://people.canonical.com/~ubuntu-security/cve/2015/CVE-2015-7551.html
secalert@redhat.comhttps://puppet.com/security/cve/ruby-dec-2015-security-fixes
secalert@redhat.comhttps://support.apple.com/HT206167Vendor Advisory
secalert@redhat.comhttps://www.ruby-lang.org/en/news/2015/12/16/unsafe-tainted-string-usage-in-fiddle-and-dl-cve-2015-7551/Patch, Vendor Advisory
af854a3a-2127-422b-91ae-364da2661108http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796344
af854a3a-2127-422b-91ae-364da2661108http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796551
af854a3a-2127-422b-91ae-364da2661108http://lists.apple.com/archives/security-announce/2016/Mar/msg00004.html
af854a3a-2127-422b-91ae-364da2661108http://www.oracle.com/technetwork/topics/security/bulletinapr2016-2952098.html
af854a3a-2127-422b-91ae-364da2661108http://www.securityfocus.com/bid/76060
af854a3a-2127-422b-91ae-364da2661108https://access.redhat.com/errata/RHSA-2018:0583
af854a3a-2127-422b-91ae-364da2661108https://github.com/ruby/ruby/commit/339e11a7f178312d937b7c95dd3115ce7236597a
af854a3a-2127-422b-91ae-364da2661108https://people.canonical.com/~ubuntu-security/cve/2015/CVE-2015-7551.html
af854a3a-2127-422b-91ae-364da2661108https://puppet.com/security/cve/ruby-dec-2015-security-fixes
af854a3a-2127-422b-91ae-364da2661108https://support.apple.com/HT206167Vendor Advisory
af854a3a-2127-422b-91ae-364da2661108https://www.ruby-lang.org/en/news/2015/12/16/unsafe-tainted-string-usage-in-fiddle-and-dl-cve-2015-7551/Patch, Vendor Advisory
Impacted products
Vendor Product Version
apple mac_os_x *
ruby-lang ruby *
ruby-lang ruby 2.1.0
ruby-lang ruby 2.1.1
ruby-lang ruby 2.1.2
ruby-lang ruby 2.1.3
ruby-lang ruby 2.1.4
ruby-lang ruby 2.1.5
ruby-lang ruby 2.1.6
ruby-lang ruby 2.1.7
ruby-lang ruby 2.2.0
ruby-lang ruby 2.2.1
ruby-lang ruby 2.2.2
ruby-lang ruby 2.2.3

{
  "affected": [
    {
      "affectedData": [
        {
          "product": "n/a",
          "vendor": "n/a",
          "versions": [
            {
              "status": "affected",
              "version": "n/a"
            }
          ]
        }
      ],
      "source": "secalert@redhat.com"
    }
  ],
  "configurations": [
    {
      "nodes": [
        {
          "cpeMatch": [
            {
              "criteria": "cpe:2.3:o:apple:mac_os_x:*:*:*:*:*:*:*:*",
              "matchCriteriaId": "D3C6DA6A-9C87-4B7B-A52D-A66276B5DE82",
              "versionEndIncluding": "10.11.3",
              "vulnerable": true
            }
          ],
          "negate": false,
          "operator": "OR"
        }
      ]
    },
    {
      "nodes": [
        {
          "cpeMatch": [
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*",
              "matchCriteriaId": "F7B036EA-235A-41A7-9CEB-3FA9C49FFDA8",
              "versionEndIncluding": "2.0.0-p647",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.1.0:*:*:*:*:*:*:*",
              "matchCriteriaId": "85A846FF-DD34-4DD6-BD61-09124C145E97",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.1.1:*:*:*:*:*:*:*",
              "matchCriteriaId": "8DF046E4-503B-4A10-BEAB-3144BD86EA49",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.1.2:*:*:*:*:*:*:*",
              "matchCriteriaId": "9FCA45F1-3038-413A-B8C3-EE366A4E6248",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.1.3:*:*:*:*:*:*:*",
              "matchCriteriaId": "FF6AF5E3-4EB8-48A3-B8E9-C79C08C38994",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.1.4:*:*:*:*:*:*:*",
              "matchCriteriaId": "6AE2B154-8126-4A38-BAB6-915207764FC0",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.1.5:*:*:*:*:*:*:*",
              "matchCriteriaId": "808FA8BE-71FC-4ADD-BDEA-637E8DF4E899",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.1.6:*:*:*:*:*:*:*",
              "matchCriteriaId": "523417A8-F62B-48AF-B60B-CE9A200D4A9A",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.1.7:*:*:*:*:*:*:*",
              "matchCriteriaId": "FAB1E0F8-F9B0-40E9-892E-C62729525CE5",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.2.0:*:*:*:*:*:*:*",
              "matchCriteriaId": "B8F103B7-0E70-4490-9802-2CD6034E240B",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.2.1:*:*:*:*:*:*:*",
              "matchCriteriaId": "35D36707-03B7-437C-B21D-A27D5C530117",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.2.2:*:*:*:*:*:*:*",
              "matchCriteriaId": "5FCCD8F3-E667-42F2-9861-14EDFB16583A",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:a:ruby-lang:ruby:2.2.3:*:*:*:*:*:*:*",
              "matchCriteriaId": "6F3CEF46-C95D-493B-A99B-7C90FDF27B47",
              "vulnerable": true
            }
          ],
          "negate": false,
          "operator": "OR"
        }
      ]
    }
  ],
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "The Fiddle::Handle implementation in ext/fiddle/handle.c in Ruby before 2.0.0-p648, 2.1 before 2.1.8, and 2.2 before 2.2.4, as distributed in Apple OS X before 10.11.4 and other products, mishandles tainting, which allows context-dependent attackers to execute arbitrary code or cause a denial of service (application crash) via a crafted string, related to the DL module and the libffi library.  NOTE: this vulnerability exists because of a CVE-2009-5147 regression."
    },
    {
      "lang": "es",
      "value": "La implementaci\u00f3n Fiddle::Handle en ext/fiddle/handle.c en Ruby en versiones anteriores a 2.0.0-p648, 2.1 en versiones anteriores a 2.1.8 y 2.2 en versiones anteriores a 2.2.4, seg\u00fan se distribuye en Apple OS X en versiones anteriores a 10.11.4 y otros productos, no maneja correctamente el tainting, lo que permite a atacantes dependientes del contexto ejecutar c\u00f3digo arbitrario o causar una denegaci\u00f3n de servicio (ca\u00edda de aplicaci\u00f3n) a trav\u00e9s de una cadena manipulada, relacionado con el m\u00f3dulo DL y la librer\u00eda libffi. NOTA: esta vulnerabilidad existe por una regresi\u00f3n de CVE-2009-5147."
    }
  ],
  "id": "CVE-2015-7551",
  "lastModified": "2026-06-17T00:32:44.063",
  "metrics": {
    "cvssMetricV2": [
      {
        "acInsufInfo": false,
        "baseSeverity": "MEDIUM",
        "cvssData": {
          "accessComplexity": "LOW",
          "accessVector": "LOCAL",
          "authentication": "NONE",
          "availabilityImpact": "PARTIAL",
          "baseScore": 4.6,
          "confidentialityImpact": "PARTIAL",
          "integrityImpact": "PARTIAL",
          "vectorString": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
          "version": "2.0"
        },
        "exploitabilityScore": 3.9,
        "impactScore": 6.4,
        "obtainAllPrivilege": false,
        "obtainOtherPrivilege": false,
        "obtainUserPrivilege": false,
        "source": "nvd@nist.gov",
        "type": "Primary"
      }
    ],
    "cvssMetricV30": [
      {
        "cvssData": {
          "attackComplexity": "LOW",
          "attackVector": "LOCAL",
          "availabilityImpact": "HIGH",
          "baseScore": 8.4,
          "baseSeverity": "HIGH",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "privilegesRequired": "NONE",
          "scope": "UNCHANGED",
          "userInteraction": "NONE",
          "vectorString": "CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
          "version": "3.0"
        },
        "exploitabilityScore": 2.5,
        "impactScore": 5.9,
        "source": "nvd@nist.gov",
        "type": "Primary"
      }
    ]
  },
  "published": "2016-03-24T01:59:03.370",
  "references": [
    {
      "source": "secalert@redhat.com",
      "url": "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796344"
    },
    {
      "source": "secalert@redhat.com",
      "url": "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796551"
    },
    {
      "source": "secalert@redhat.com",
      "url": "http://lists.apple.com/archives/security-announce/2016/Mar/msg00004.html"
    },
    {
      "source": "secalert@redhat.com",
      "url": "http://www.oracle.com/technetwork/topics/security/bulletinapr2016-2952098.html"
    },
    {
      "source": "secalert@redhat.com",
      "url": "http://www.securityfocus.com/bid/76060"
    },
    {
      "source": "secalert@redhat.com",
      "url": "https://access.redhat.com/errata/RHSA-2018:0583"
    },
    {
      "source": "secalert@redhat.com",
      "url": "https://github.com/ruby/ruby/commit/339e11a7f178312d937b7c95dd3115ce7236597a"
    },
    {
      "source": "secalert@redhat.com",
      "url": "https://people.canonical.com/~ubuntu-security/cve/2015/CVE-2015-7551.html"
    },
    {
      "source": "secalert@redhat.com",
      "url": "https://puppet.com/security/cve/ruby-dec-2015-security-fixes"
    },
    {
      "source": "secalert@redhat.com",
      "tags": [
        "Vendor Advisory"
      ],
      "url": "https://support.apple.com/HT206167"
    },
    {
      "source": "secalert@redhat.com",
      "tags": [
        "Patch",
        "Vendor Advisory"
      ],
      "url": "https://www.ruby-lang.org/en/news/2015/12/16/unsafe-tainted-string-usage-in-fiddle-and-dl-cve-2015-7551/"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796344"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796551"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "http://lists.apple.com/archives/security-announce/2016/Mar/msg00004.html"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "http://www.oracle.com/technetwork/topics/security/bulletinapr2016-2952098.html"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "http://www.securityfocus.com/bid/76060"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "https://access.redhat.com/errata/RHSA-2018:0583"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "https://github.com/ruby/ruby/commit/339e11a7f178312d937b7c95dd3115ce7236597a"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "https://people.canonical.com/~ubuntu-security/cve/2015/CVE-2015-7551.html"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "url": "https://puppet.com/security/cve/ruby-dec-2015-security-fixes"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Vendor Advisory"
      ],
      "url": "https://support.apple.com/HT206167"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Patch",
        "Vendor Advisory"
      ],
      "url": "https://www.ruby-lang.org/en/news/2015/12/16/unsafe-tainted-string-usage-in-fiddle-and-dl-cve-2015-7551/"
    }
  ],
  "sourceIdentifier": "secalert@redhat.com",
  "vulnStatus": "Modified",
  "weaknesses": [
    {
      "description": [
        {
          "lang": "en",
          "value": "CWE-20"
        }
      ],
      "source": "nvd@nist.gov",
      "type": "Primary"
    }
  ]
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…