Outils pour utilisateurs

Outils du site


cyber:vulnerabilite:cross_site_request_forgery

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
cyber:vulnerabilite:cross_site_request_forgery [2025/07/03 12:20] – [Exemple 1] admincyber:vulnerabilite:cross_site_request_forgery [2025/07/03 12:23] (Version actuelle) – [CWEs] admin
Ligne 136: Ligne 136:
 Un utilisateur légitime voulant modifier son email, va renvoyer le même jeton que celui transmis par le serveur. Ce-dernier va pouvoir faire la liaison entre la première requête vers <code>/account</code> et la seconde requête vers <code>/account/edit-mail</code> qui contient le même jeton. Dans le cas où ces jetons ne seraient pas égaux, cela signifie que la seconde requête ne provient pas d'une première requête vers <code>/account</code>, et donc que la requête est probablement illégitime ; l'email n'est alors pas modifié par le serveur. Un utilisateur légitime voulant modifier son email, va renvoyer le même jeton que celui transmis par le serveur. Ce-dernier va pouvoir faire la liaison entre la première requête vers <code>/account</code> et la seconde requête vers <code>/account/edit-mail</code> qui contient le même jeton. Dans le cas où ces jetons ne seraient pas égaux, cela signifie que la seconde requête ne provient pas d'une première requête vers <code>/account</code>, et donc que la requête est probablement illégitime ; l'email n'est alors pas modifié par le serveur.
  
-<code class="HTTP">+<code HTTP>
 POST /account/edit-email HTTP/2 POST /account/edit-email HTTP/2
 Host: example.ex Host: example.ex
Ligne 148: Ligne 148:
 Un attaquant peut alors générer un jeton valide au préalable de son exploitation et le placer comme valeur dans sa charge malveillante : Un attaquant peut alors générer un jeton valide au préalable de son exploitation et le placer comme valeur dans sa charge malveillante :
  
-<code class="HTML">+<code HTML>
 <form id="malicious" action="https://example.ex/account/edit-email" method="post"> <form id="malicious" action="https://example.ex/account/edit-email" method="post">
     <input type="hidden" name="csrf-token" value="f7cc02f6ba84fbe0d2d90ca3fee3946d">     <input type="hidden" name="csrf-token" value="f7cc02f6ba84fbe0d2d90ca3fee3946d">
Ligne 161: Ligne 161:
 Les jetons étant communs à tous les utilisateurs, le serveur va simplement vérifier que le token est dans sa base de données. Étant générée en amont sur le compte de l'attaquant de manière légitime, la requête est validée et l'attaque réussie.  Les jetons étant communs à tous les utilisateurs, le serveur va simplement vérifier que le token est dans sa base de données. Étant générée en amont sur le compte de l'attaquant de manière légitime, la requête est validée et l'attaque réussie. 
  
-{{Pour que la vérification par jeton CSRF soit efficace, il est important que celui-ci soit généré de manière aléatoire, unique pour chaque utilisateur et être associé à une durée de validité limitée.}}+**Pour que la vérification par jeton CSRF soit efficace, il est important que celui-ci soit généré de manière aléatoire, unique pour chaque utilisateur et être associé à une durée de validité limitée.**
  
 +====== CWEs ======
 +
 +  * [[https://cwe.mitre.org/data/definitions/352.html|CWE-352 : Cross-Site Request Forgery (CSRF)]]
 +The web application does not, or can not, sufficiently verify whether a well-formed, valid, consistent request was intentionally provided by the user who submitted the request.
 +
 +  * [[https://cwe.mitre.org/data/definitions/306.html|CWE-306 : Missing Authentication for Critical Function]]
 +The software does not perform any authentication for functionality that requires a provable user identity or consumes a significant amount of resources.
 +
 +  * [[https://cwe.mitre.org/data/definitions/664.html|CWE-664 : Improper Control of a Resource Through its Lifetime]]
 +The software does not maintain or incorrectly maintains control over a resource throughout its lifetime of creation, use, and release.
 +
 +  * [[https://cwe.mitre.org/data/definitions/732.html|CWE-732 : Incorrect Permission Assignment for Critical Resource]]
 +The product specifies permissions for a security-critical resource in a way that allows that resource to be read or modified by unintended actors.
 +
 +  * [[https://cwe.mitre.org/data/definitions/1275.html|CWE-1275 : Sensitive Cookie with Improper SameSite Attribute]]
 +The SameSite attribute for sensitive cookies is not set, or an insecure value is used.
 +
 +====== References ======
 +
 +URL :
 +  * https://repository.root-me.org/Exploitation%20-%20Web/FR%20-%20les%20attaques%20CSRF.pdf
 +  * https://repository.root-me.org/Exploitation%20-%20Web/EN%20-%20CSRF:%20Attack%20and%20defense.pdf
 +  * https://repository.root-me.org/Exploitation%20-%20Web/EN%20-%20OWASP%20Cross-site%20Request%20Forgery%20CSRF.pdf
 ====== Retour fiches vulnérabilités ====== ====== Retour fiches vulnérabilités ======
   * [[cyber:vulnerabilite:accueil|Cyber fiches vulnérabilités]]   * [[cyber:vulnerabilite:accueil|Cyber fiches vulnérabilités]]
  
  
cyber/vulnerabilite/cross_site_request_forgery.1751538013.txt.gz · Dernière modification : 2025/07/03 12:20 de admin