Différence entre XSS et CSRF

Différence entre XSS et CSRF

Le différence clé Entre XSS et CSRF est que, Dans XSS (ou les scripts croisés du site), le site accepte le code malveillant tandis que, dans le CSRF (ou contrefait de demande de site croisé), le code malveillant est stocké sur les sites tiers. Le XSS est un type de vulnérabilité de sécurité informatique dans les applications Web qui permet aux attaquants d'injecter des scripts côté client dans les pages Web visualisées par d'autres utilisateurs. D'un autre côté, CSRF est un type d'activité malveillante d'un pirate ou d'un site Web qui transmet des commandes non autorisées auxquelles l'application Web de l'utilisateur fait confiance.

Le développement Web est le processus de programmation d'un site Web en fonction des exigences du client. Chaque organisation maintient des sites Web.  Ces sites Web contribuent à améliorer l'entreprise et à réaliser des bénéfices. En même temps, il peut y avoir des menaces qui affectent la fonctionnalité du site Web. Deux d'entre eux sont XSS et CSRF.

CONTENU

1. Aperçu et différence clé
2. Qu'est-ce que XSS
3. Qu'est-ce que le CSRF
4. Comparaison côte à côte - XSS vs CSRF sous forme tabulaire
5. Résumé

Qu'est-ce que XSS?

XSS est une attaque d'injection de code qui injecte du code malveillant dans le site Web. C'est l'une des attaques de sites Web les plus courantes. Il peut affecter le site Web et peut également affecter les utilisateurs de ce site Web. En d'autres termes, lorsqu'il y a une attaque XSS sur le site Web, ce code s'exécutera dans les utilisateurs de ce site Web par le navigateur.

Figure 01: Attaque XSS

Un langage commun pour écrire du code malveillant pour XSS est JavaScript. XSS peut voler les cookies de l'utilisateur. Il peut modifier la page Web pour regarder et se comporter différemment. De plus, il peut afficher les téléchargements de logiciels malveillants et modifier les paramètres de l'utilisateur.

Il existe deux types d'attaques XSS. Ils sont appelés persistants et non persistants. Dans attaque XSS persistante, Le code malveillant est stocké dans la base de données du site Web. L'utilisateur peut y accéder sans aucune connaissance. Le Attaque XSS non persistante est également appelé XSS reflété. Il envoie le script malveillant comme une demande HTTP. Ce sont les deux principaux types de XSS.

Qu'est-ce que le CSRF?

Dans un site Web, il y a un côté client et le côté serveur. Les pages Web, les formulaires sont du côté client. Le côté serveur effectue une action lorsque l'utilisateur agit. Le côté serveur obtient également des demandes d'autres sites Web.

L'attaque CSRF trompe l'utilisateur pour interagir avec une page ou un script sur un site tiers. Il générera une demande malveillante sur le site de l'utilisateur. Mais le serveur suppose qu'il s'agit d'une demande d'un site Web autorisé. Lorsque l'utilisateur l'accepte, un attaquant peut prendre le contrôle sur l'utilisation des données envoyées dans la demande.

Un exemple est le suivant. Un utilisateur se connecte à son compte bancaire. La banque lui fournit un jeton de session. Un pirate peut inciter l'utilisateur à cliquer sur un faux lien qui pointe vers la banque. Lorsque l'utilisateur clique sur le lien, il utilise le jeton de session précédent. Ensuite, la demande du pirate s'exécute et le compte utilisateur est piraté. Il peut transférer de l'argent de son compte. La demande à la banque est forgée car elle utilise le même jeton de session de l'utilisateur. Dans l'ensemble, il est important de savoir comment protéger le site Web de l'attaque du CSRF dans le développement Web.

Quelle est la différence entre XSS et CSRF?

XSS signifie Cross Site Scripting, et CSRF signifie Cross Site Demande False. XSS est un type de vulnérabilité de sécurité informatique dans les applications Web qui permet aux attaquants d'injecter des scripts côté client dans les pages Web visualisées par d'autres utilisateurs. Le CSRF est un type d'activité malveillante d'un pirate ou d'un site Web qui transmet des commandes non autorisées auxquelles l'application Web de l'utilisateur fait confiance. De plus, XSS exige que JavaScript écrive le code malveillant tandis que le CSRF ne nécessite pas JavaScript.

De plus, dans XSS, le site accepte le code malveillant pendant le CSRF, le code malveillant est stocké sur les sites tiers. C'est la principale différence entre XSS et CSRF. Habituellement, un site vulnérable à l'attaque XSS est également vulnérable à l'attaque du CSRF. Cependant, un site qui a une protection contre les XSS peut toujours être vulnérable aux attaques CSRF.

Résumé - XSS vs CSRF

XSS et CSRF sont deux types d'attaques sur un site Web. XSS signifie Cross Site Scripting tandis que le CSRF signifie Cross Site Device False. La différence entre XSS et CSRF est que, dans XSS, le site accepte le code malveillant tandis que, dans le CSRF, le code malveillant est stocké sur les sites tiers.

Référence:

1.Drapstv. Tutoriel XSS # 2 - Scripts non persistants (reflété XSS), Drapstv, 23 janvier. 2015. Disponible ici  
2.Qu'est-ce que le CSRF?, Hackspoling, 4 mars. 2017.  Disponible ici 
3.Drapstv. Tutoriel XSS # 3 - Scripts persistants, Drapstv, 26 janvier. 2015.  Disponible ici
4.Drapstv. Tutoriel XSS # 1 - Qu'est-ce que les scripts de site croisé?, Drapstv, 22 janvier. 2015. Disponible ici  

Image gracieuseté:

1.'26393980275' B Christiaan Colen (CC BY-SA 2.0) via Flickr