{"answers":{"affected":"2 open source packages ship an affected version, including personnummer.","exploited":"There is no known exploitation of GHSA-vp9c-fpxx-744v in the wild and no public exploit code.","fix":"Upgrade personnummer to 3.0.1 or later.","what":"GHSA-vp9c-fpxx-744v is a vulnerability in personnummer, published on 23 Sep 2020. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for GHSA-vp9c-fpxx-744v and fix it if it is affected.\n\nWhat it is: GHSA-vp9c-fpxx-744v is a vulnerability in personnummer, published on 23 Sep 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of GHSA-vp9c-fpxx-744v in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- personnummer (RubyGems): affected all versions; fixed in 3.0.1\n- personnummer (RubyGems): affected all versions; fixed in 3.0.1\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/GHSA-vp9c-fpxx-744v/ (Markdown: https://insights.sbomify.com/GHSA-vp9c-fpxx-744v/index.md)","id":"GHSA-vp9c-fpxx-744v","markdown":"https://insights.sbomify.com/GHSA-vp9c-fpxx-744v/index.md","name":"GHSA-vp9c-fpxx-744v","record":{"aliases":[],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["other"],"network_reachable":"yes","non_default_config":false,"product_category":"Ruby personnummer library","requires_auth":"none","summary":"The Ruby personnummer library incorrectly validates Swedish personal identity numbers, allowing invalid formats to pass validation checks.","user_interaction":"not_required","vuln_class":"other"},"analysis_generated_by":"qwen3.8-flash-next","assigner":null,"cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"This vulnerability was reported to the personnummer team in June 2020. The slow response was due to locked ownership of some of the affected packages, which caused delays to update packages prior to disclosure.\n\nThe vulnerability is determined to be low severity.\n\n### Impact\n\nThis vulnerability impacts users who rely on the for last digits of personnummer to be a _real_ personnummer.  \n\n### Patches\n\nThe issue have been patched in all repositories. The following versions should be updated to as soon as possible:\n\n[C#](https://github.com/advisories/GHSA-qv8q-v995-72gr) 3.0.2  \nD 3.0.1  \n[Dart](https://github.com/advisories/GHSA-4xh4-v2pq-jvhm) 3.0.3  \nElixir 3.0.0  \n[Go](https://github.com/advisories/GHSA-hv53-vf5m-8q94) 3.0.1  \n[Java](https://github.com/advisories/GHSA-q3vw-4jx3-rrr2) 3.3.0  \n[JavaScript](https://github.com/advisories/GHSA-vpgc-7h78-gx8f) 3.1.0  \nKotlin 1.1.0  \nLua 3.0.1  \n[PHP](https://github.com/advisories/GHSA-2p6g-gjp8-ggg9) 3.0.2  \nPerl 3.0.0  \n[Python](https://github.com/advisories/GHSA-rxq3-5249-8hgg) 3.0.2  \n[Ruby](https://github.com/advisories/GHSA-vp9c-fpxx-744v) 3.0.1  \n[Rust](https://github.com/advisories/GHSA-28r9-pq4c-wp3c) 3.0.0  \nScala 3.0.1  \nSwift 1.0.1  \n\nIf you are using any of the earlier packages, please update to latest.\n\n### Workarounds\n\nThe issue arrieses from the regular expression allowing the first three digits in the last four digits of the personnummer to be\n000, which is invalid. To mitigate this without upgrading, a check on the last four digits can be made to make sure it's not\n000x.\n\n### For more information\n\nIf you have any questions or comments about this advisory:\n* Open an issue in [Personnummer Meta](https://github.com/personnummer/meta/issues)\n* Email us at [Personnummer Email](mailto:security@personnummer.dev)","ecosystems":["RubyGems"],"exploits":{"exploitdb":null,"first_seen":null,"github_poc":null,"max_poc_stars":null,"metasploit":null,"nuclei":null,"refs":[],"tier":null},"has_fix":true,"headline":"personnummer/ruby vulnerable to Improper Input Validation","id":"GHSA-vp9c-fpxx-744v","indexable":true,"kev":null,"kind":"advisory","links":{"ecosystem":"RubyGems","product":null,"products":[],"type":"other","year":"2020"},"n_packages":2,"n_references":null,"packages":[{"ecosystem":"RubyGems","fixed":["3.0.1"],"introduced":["0"],"last_affected":[],"package":"personnummer","purl":null,"source":"GHSA-vp9c-fpxx-744v"},{"ecosystem":"RubyGems","fixed":["3.0.1"],"introduced":["0"],"last_affected":[],"package":"personnummer","purl":"pkg:gem/personnummer","source":"GHSA-vp9c-fpxx-744v"}],"products":null,"published":"2020-09-23","related":[],"sources":[{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":null,"updated":null,"vendors":null},"summary":"The Ruby personnummer library incorrectly validates Swedish personal identity numbers, allowing invalid formats to pass validation checks.","url":"https://insights.sbomify.com/GHSA-vp9c-fpxx-744v/"}