Lookup for vulnerable packages by Package URL.

GET /api/packages/170052?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "url": "http://public2.vulnerablecode.io/api/packages/170052?format=api",
    "purl": "pkg:gem/turbo_boost-commands@0.0.15",
    "type": "gem",
    "namespace": "",
    "name": "turbo_boost-commands",
    "version": "0.0.15",
    "qualifiers": {},
    "subpath": "",
    "is_vulnerable": true,
    "next_non_vulnerable_version": null,
    "latest_non_vulnerable_version": null,
    "affected_by_vulnerabilities": [
        {
            "url": "http://public2.vulnerablecode.io/api/vulnerabilities/47255?format=api",
            "vulnerability_id": "VCID-kza3-e4r2-zba9",
            "summary": "TurboBoost Commands vulnerable to arbitrary method invocation\n### Impact\nTurboBoost Commands has existing protections in place to guarantee that only public methods on Command classes can be invoked; however, the existing checks aren't as robust as they should be. It's possible for a sophisticated attacker to invoke more methods than should be permitted depending on the the strictness of authorization checks that individual applications enforce. Being able to call some of these methods can have security implications.\n\n#### Details\nCommands verify that the class must be a `Command` and that the method requested is defined as a public method; however, this isn't robust enough to guard against all unwanted code execution. The library should more strictly enforce which methods are considered safe before allowing them to be executed.  \n\n### Patches\nPatched in the following versions.\n- 0.1.3\n  - [NPM Package](https://www.npmjs.com/package/@turbo-boost/commands/v/0.1.3)\n  - [Ruby GEM](https://rubygems.org/gems/turbo_boost-commands/versions/0.1.3)\n- 0.2.2\n  - [NPM Package](https://www.npmjs.com/package/@turbo-boost/commands/v/0.2.2)\n  - [Ruby GEM](https://rubygems.org/gems/turbo_boost-commands/versions/0.2.2)\n\n\n### Workarounds\nYou can add this guard to mitigate the issue if running an unpatched version of the library.\n\n```ruby\nclass ApplicationCommand < TurboBoost::Commands::Command\n  before_command do\n    method_name = params[:name].include?(\"#\") ? params[:name].split(\"#\").last : :perform\n    ancestors = self.class.ancestors[0..self.class.ancestors.index(TurboBoost::Commands::Command) - 1]\n    allowed = ancestors.any? { |a| a.public_instance_methods(false).any? method_name.to_sym }\n    throw :abort unless allowed # ← blocks invocation\n    # raise \"Invalid Command\" unless allowed # ← blocks invocation\n  end\nend\n```",
            "references": [
                {
                    "reference_url": "https://api.first.org/data/v1/epss?cve=CVE-2024-28181",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "0.00772",
                            "scoring_system": "epss",
                            "scoring_elements": "0.73951",
                            "published_at": "2026-06-05T12:55:00Z"
                        }
                    ],
                    "url": "https://api.first.org/data/v1/epss?cve=CVE-2024-28181"
                },
                {
                    "reference_url": "https://github.com/hopsoft/turbo_boost-commands",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "8.1",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://github.com/hopsoft/turbo_boost-commands"
                },
                {
                    "reference_url": "https://github.com/hopsoft/turbo_boost-commands/commit/337cda7d9222f1f449905454a7374222017a7477",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "8.1",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://github.com/hopsoft/turbo_boost-commands/commit/337cda7d9222f1f449905454a7374222017a7477"
                },
                {
                    "reference_url": "https://github.com/hopsoft/turbo_boost-commands/commit/88af4fc0ac39cc1799d16c49fab52f6dfbcec9ba",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "8.1",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        },
                        {
                            "value": "Track",
                            "scoring_system": "ssvc",
                            "scoring_elements": "SSVCv2/E:N/A:N/T:T/P:M/B:A/M:M/D:T/2024-07-19T16:02:11Z/"
                        }
                    ],
                    "url": "https://github.com/hopsoft/turbo_boost-commands/commit/88af4fc0ac39cc1799d16c49fab52f6dfbcec9ba"
                },
                {
                    "reference_url": "https://github.com/rubysec/ruby-advisory-db/blob/master/gems/turbo_boost-commands/CVE-2024-28181.yml",
                    "reference_id": "",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "8.1",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://github.com/rubysec/ruby-advisory-db/blob/master/gems/turbo_boost-commands/CVE-2024-28181.yml"
                },
                {
                    "reference_url": "https://nvd.nist.gov/vuln/detail/CVE-2024-28181",
                    "reference_id": "CVE-2024-28181",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "8.1",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://nvd.nist.gov/vuln/detail/CVE-2024-28181"
                },
                {
                    "reference_url": "https://github.com/advisories/GHSA-mp76-7w5v-pr75",
                    "reference_id": "GHSA-mp76-7w5v-pr75",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "HIGH",
                            "scoring_system": "cvssv3.1_qr",
                            "scoring_elements": ""
                        }
                    ],
                    "url": "https://github.com/advisories/GHSA-mp76-7w5v-pr75"
                },
                {
                    "reference_url": "https://github.com/hopsoft/turbo_boost-commands/security/advisories/GHSA-mp76-7w5v-pr75",
                    "reference_id": "GHSA-mp76-7w5v-pr75",
                    "reference_type": "",
                    "scores": [
                        {
                            "value": "8.1",
                            "scoring_system": "cvssv3",
                            "scoring_elements": ""
                        },
                        {
                            "value": "8.1",
                            "scoring_system": "cvssv3.1",
                            "scoring_elements": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H"
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "cvssv3.1_qr",
                            "scoring_elements": ""
                        },
                        {
                            "value": "HIGH",
                            "scoring_system": "generic_textual",
                            "scoring_elements": ""
                        },
                        {
                            "value": "Track",
                            "scoring_system": "ssvc",
                            "scoring_elements": "SSVCv2/E:N/A:N/T:T/P:M/B:A/M:M/D:T/2024-07-19T16:02:11Z/"
                        }
                    ],
                    "url": "https://github.com/hopsoft/turbo_boost-commands/security/advisories/GHSA-mp76-7w5v-pr75"
                }
            ],
            "fixed_packages": [
                {
                    "url": "http://public2.vulnerablecode.io/api/packages/69406?format=api",
                    "purl": "pkg:gem/turbo_boost-commands@0.1.3",
                    "is_vulnerable": true,
                    "affected_by_vulnerabilities": [
                        {
                            "vulnerability": "VCID-kza3-e4r2-zba9"
                        }
                    ],
                    "resource_url": "http://public2.vulnerablecode.io/packages/pkg:gem/turbo_boost-commands@0.1.3"
                },
                {
                    "url": "http://public2.vulnerablecode.io/api/packages/69407?format=api",
                    "purl": "pkg:gem/turbo_boost-commands@0.2.2",
                    "is_vulnerable": true,
                    "affected_by_vulnerabilities": [
                        {
                            "vulnerability": "VCID-kza3-e4r2-zba9"
                        }
                    ],
                    "resource_url": "http://public2.vulnerablecode.io/packages/pkg:gem/turbo_boost-commands@0.2.2"
                }
            ],
            "aliases": [
                "CVE-2024-28181",
                "GHSA-mp76-7w5v-pr75"
            ],
            "risk_score": 4.0,
            "exploitability": "0.5",
            "weighted_severity": "8.0",
            "resource_url": "http://public2.vulnerablecode.io/vulnerabilities/VCID-kza3-e4r2-zba9"
        }
    ],
    "fixing_vulnerabilities": [],
    "risk_score": "4.0",
    "resource_url": "http://public2.vulnerablecode.io/packages/pkg:gem/turbo_boost-commands@0.0.15"
}