GHSA-vp9c-fpxx-744v personnummer/ruby vulnerable to Improper Input Validation
The Ruby personnummer library incorrectly validates Swedish personal identity numbers, allowing invalid formats to pass validation checks.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is GHSA-vp9c-fpxx-744v?
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.
Official 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.
The vulnerability is determined to be low severity.
Impact
This vulnerability impacts users who rely on the for last digits of personnummer to be a real personnummer.
Patches
The issue have been patched in all repositories. The following versions should be updated to as soon as possible:
C# 3.0.2
D 3.0.1
Dart 3.0.3
Elixir 3.0.0
Go 3.0.1
Java 3.3.0
JavaScript 3.1.0
Kotlin 1.1.0
Lua 3.0.1
PHP 3.0.2
Perl 3.0.0
Python 3.0.2
Ruby 3.0.1
Rust 3.0.0
Scala 3.0.1
Swift 1.0.1
If you are using any of the earlier packages, please update to latest.
Workarounds
The issue arrieses from the regular expression allowing the first three digits in the last four digits of the personnummer to be 000, which is invalid. To mitigate this without upgrading, a check on the last four digits can be made to make sure it's not 000x.
For more information
If you have any questions or comments about this advisory:
- Open an issue in Personnummer Meta
- Email us at Personnummer Email
Which versions are affected by GHSA-vp9c-fpxx-744v?
2 open source packages ship an affected version, including personnummer.
| Package | Affected | Fixed in |
|---|---|---|
personnummer RubyGems | All versions | 3.0.1 |
personnummer RubyGems | All versions | 3.0.1 |
How do I fix GHSA-vp9c-fpxx-744v?
Upgrade personnummer to 3.0.1 or later.
Is GHSA-vp9c-fpxx-744v being exploited?
There is no known exploitation of GHSA-vp9c-fpxx-744v in the wild and no public exploit code.