spomky-labs/otphp: Unbounded digits parameter in a provisioning URI triggers an uncaught DivisionByZeroError in OTP generation — GHSA-G7M4-839X-CH6V
GitHub · GitHub · GHSA-G7M4-839X-CH6V
ID
GHSA-G7M4-839X-CH6V
GHSA-G7M4-839X-CH6V
Date
Activity
Source
GitHub
GitHub
Fournisseur
GitHub
GitHub
Risque
high
high
CVSS
8.7
8.7
Résumé
## Summary The `digits` parameter parsed from a provisioning URI is validated only with a lower bound (`$value > 0`) and has no upper bound (`src/OTP.php:353-357`). OTP generation computes `$code % (10 ** $this->getDigits())` (`src/OTP.php:283`). When `digits` is large enough that `10 ** digits` overflows PHP's integer range and the `(int)` cast yields `0` (around `digits >= 40` on 64-bit PHP 8.x), the modulo…
Produit
composer: spomky-labs/otphp
Que faire
Mesures générales et prudentes (vérifiez les détails dans la source officielle) :
- Priorisez immédiatement les correctifs ou les mesures d’atténuation (risque actif).
- Identifiez les versions affectées dans votre inventaire et vérifiez si vous êtes concerné.
- Appliquez les correctifs/mises à jour du fournisseur ou les atténuations recommandées.
- Consultez l’avis officiel pour les versions affectées et les étapes de remédiation.