Oui, exactement JavaScript. Je viens de rencontrer un tel ver et j'ai essayé de le décoder.
Quel est le problème réel:
Le récent ver Facebook fonctionne en amenant les utilisateurs à visiter une page, ce qui les oblige à insérer une chaîne JavaScript dans leur barre d'adresse et donc à l'exécuter.
Donc, ne copiez JAMAIS de code JavaScript dans votre barre d'adresse. Voilà le principal problème. Et ne cliquez sur aucun lien auquel vous ne faites pas confiance. Ou ouvrez au moins ces liens dans une nouvelle fenêtre en utilisant le mode Confidentialité (Firefox) ou le mode navigation privée (Chrome) afin qu'il ne puisse pas accéder à votre session Facebook.
Qu'est-ce que nos pirates ont fait pour que les gens ne réalisent pas ce qu'ils font?
Échapper au script
La chaîne que vous copiez dans la barre d'URL renvoie principalement à un autre JavaScript qui est exécuté. Ce script est en fait décodé en entités. Ainsi, au lieu d'utiliser des caractères de chaîne, le script entier a été placé dans une chaîne et échappé afin qu'aucun humain ne puisse le lire en premier lieu.
Par exemple, si j'avais une fonction très malveillante, j'y échapperais et l'utilisateur ne verrait que:
fonction% 20test% 28% 29% 20% 7B% 20alert% 20% 28% 22LOL% 22% 29% 3B% 20% 7D
et sans échappatoire ce serait
test de fonction () {alert ("LOL"); }
Le script s'échappe donc "lui-même" avant d'être exécuté.
Le brouiller
Maintenant, ça devient laid: avant de lui échapper, le mauvais code JavaScript est obscurci, avec des noms de fonction comme _____x
et des variables comme aLDIWEJ
. Cela a toujours du sens pour JavaScript, mais il est entièrement illisible pour les humains. Cela est fait, encore une fois, pour masquer les intentions de nos pirates Facebook.
À ce stade, le code aurait pu ressembler à ceci:
Ce que fait le script
Eh bien, ce que ce script fait est de prendre votre session Facebook actuelle. Parce que vous êtes connecté au site, il peut faire n'importe quoi en votre nom. Par exemple, ce qu'il peut faire via l'API de Facebook est:
- la création d'un événement comme "OMG je peux voir qui m'a traqué!"
- bavarder avec les gens
- publier des mises à jour de statut
- etc.
Tout cela se produit en appelant certaines pages de l'API Facebook (certaines pages PHP, j'ai oublié lesquelles).