Plateforme
rust
Composant
base64
Corrigé dans
0.5.2
0.5.2
La vulnérabilité CVE-2017-1000430 est un dépassement de capacité tampon (Buffer Overflow) affectant la crate base64 en Rust. Ce défaut, présent dans les versions antérieures à 0.5.2, se manifeste lors du calcul de la taille du tampon utilisé pour l'encodage Base64 via les fonctions encodeconfigbuf et encode_config. Un attaquant peut exploiter cette faille pour corrompre la mémoire et potentiellement exécuter du code arbitraire. La correction a été implémentée dans la version 0.5.2.
L'impact de cette vulnérabilité est critique. Un attaquant capable d'injecter une entrée de taille suffisante peut provoquer un dépassement de tampon lors de l'encodage Base64. Cette corruption de mémoire peut permettre l'exécution de code arbitraire sur le système, donnant à l'attaquant un contrôle total. Bien que la crate base64 soit un composant relativement basique, elle est utilisée dans de nombreuses applications et bibliothèques Rust, ce qui augmente la surface d'attaque potentielle. Une exploitation réussie pourrait compromettre la confidentialité, l'intégrité et la disponibilité des données traitées par les applications utilisant cette crate.
Cette vulnérabilité a été divulguée publiquement le 3 mai 2017. Il n'y a pas d'indications d'exploitation active à grande échelle, mais la nature critique de la vulnérabilité et sa présence dans de nombreuses applications Rust en font une cible potentielle. Aucun PoC public n'a été largement diffusé, mais la description de la vulnérabilité est suffisamment claire pour permettre à un attaquant expérimenté de la reproduire. Elle n'est pas répertoriée sur le KEV de CISA au moment de la rédaction.
Applications written in Rust that utilize the base64 crate are at risk. This includes projects relying on base64 encoding for data transmission, storage, or authentication. Specifically, applications that handle untrusted input data without proper validation are particularly vulnerable.
• rust/supply-chain:
cargo audit --target base64• rust/supply-chain:
cargo tree | grep base64• generic web: Inspect application logs for unusual memory access patterns or crashes related to base64 encoding operations. Look for errors indicating buffer overflows or memory corruption.
disclosure
Statut de l'Exploit
EPSS
0.48% (percentile 65%)
Vecteur CVSS
La mitigation principale consiste à mettre à jour la crate base64 vers la version 0.5.2 ou ultérieure, qui corrige le dépassement de capacité tampon. Si la mise à jour n'est pas immédiatement possible, il est recommandé d'éviter de traiter des entrées Base64 de très grande taille. Bien qu'il n'existe pas de règles WAF spécifiques pour cette vulnérabilité, une surveillance accrue des applications Rust utilisant la crate base64 est conseillée. Il est également possible d'ajouter des vérifications de taille des entrées avant l'encodage Base64 dans le code source pour limiter l'impact potentiel. Après la mise à jour, vérifiez que l'encodage Base64 fonctionne correctement avec des entrées de différentes tailles.
Aucun correctif officiel disponible. Recherchez des alternatives ou surveillez les mises à jour.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
CVE-2017-1000430 is a critical vulnerability in the Rust base64 crate where an integer overflow can lead to a buffer overflow, potentially allowing arbitrary code execution.
You are affected if your Rust project uses the base64 crate in a version prior to 0.5.2. Check your Cargo.toml file to determine your version.
Upgrade the base64 crate to version 0.5.2 or later using cargo update base64.
While no active exploitation campaigns have been definitively linked, the potential for arbitrary code execution makes it a high-priority concern.
Refer to the Rust security advisory and the base64 crate's release notes for details: [https://rustsec.org/](https://rustsec.org/)
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.
Téléverse ton fichier Cargo.lock et nous te dirons instantanément si tu es affecté.