Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2024-27632 — CVE-2024–27632 Référence | Kitploit
Outils/GitHubGitHub/ally-petitt/cve-2024-27632
Analyse des VulnérabilitésSécurité WebCryptographieArticles et RechercheApprentissage et Éducation
GitHubally-petitt/cve-2024-27632

CVE-2024-27632

CVE-2024–27632 Référence

Voir le dépôt
11il y a 2 ansPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Détails de la vulnérabilité CVE-2024-27632

Aperçu

Dans Savane v3.12 et versions antérieures, le timestamp Unix est utilisé comme germe dans le générateur de nombres pseudo-aléatoires (PRNG) utilisé pour générer les jetons de protection contre les failles de type Cross-Site Request Forgery (CSRF) (form_id). Par conséquent, un attaquant peut être en mesure de générer indépendamment le même jeton CSRF valide qui a été attribué à un utilisateur victime, contournant ainsi les vérifications CSRF et menant à une attaque CSRF réussie. L'impact d'une attaque CSRF inclut l'escalade de privilèges et la prise de contrôle du compte.

Classification CWE : CWE-335 : Utilisation incorrecte des germes dans le générateur de nombres pseudo-aléatoires (PRNG)

Signalé par : Ally Petitt

Produit concerné : Savane

Versions concernées : 3.12 et antérieures

Détails techniques

Avant que form_id ne soit généré, utils_srand() est appelé. Ensuite, le form_id généré est créé comme un hachage MD5 d'une valeur générée par le PRNG de PHP.

frontend/php/include/form.php:61

root@kitploit:~
  if (!$form_id)
    {
      utils_srand ();
      $form_id = md5 (mt_rand (0, 1000000));
    }
Télécharger l’outil

Comme le montre le bloc de code ci-dessous, utils_srand() est définie comme une fonction qui utilise comme germe microtime(), une fonction qui renvoie le timestamp Unix, multiplié par 1 000 000.

frontend/php/include/utils.php:969

root@kitploit:~
function utils_srand ()
{
  mt_srand ((int)((double)microtime () * 1000000));
}

Par conséquent, le timestamp Unix, une valeur prévisible, est utilisé pour générer un nombre pseudo-aléatoire critique pour la sécurité. Le moment où le jeton d'un utilisateur a été créé peut potentiellement être deviné ou déclenché par un attaquant afin d'obtenir un timestamp valide qu'il peut utiliser pour créer un jeton CSRF valide.

Étapes de validation

Ces étapes visent à démontrer que connaître le timestamp suffit pour générer un jeton valide de manière indépendante. Les stratégies d'attaque réelles peuvent impliquer une créativité supplémentaire pour s'assurer que le timestamp correct de la création du jeton est déduit.

  1. Visitez une page Web Savane qui génère un form_id.
  2. Notez le timestamp Unix au moment de la visite de cette page.
  3. Remplacez $RECORDED_UNIX_TIME par l'heure enregistrée et exécutez le script PHP suivant. Observez que la valeur générée correspond au form_id que le serveur a renvoyé lors de la première visite de la page Web.
root@kitploit:~
<?php
mt_srand ((int)((double)$RECORDED_UNIX_TIME* 1000000));
echo md5 (mt_rand (0, 1000000));
?>

Atténuation

Mettez à niveau vers Savane version 3.13 ou supérieure. Le correctif se trouve ici.