Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Ransom32 : le premier ransomware JavaScript
Il est capable de s'exécuter sur Windows, Linux et Mac OS X

Le , par Michael Guilloux

62PARTAGES

7  0 
Ransom32 est une nouvelle famille de ransomwares découverte par des chercheurs de la firme de sécurité Emsisoft. Annoncé comme le tout premier de son genre à utiliser JavaScript pour son code source, ce demandeur de rançon a été codé via le framework NW.js, anciennement appelé Node-WebKit.

NW.js permet aux développeurs de créer des applications de bureau pour Windows, Linux et Mac OS X à l’aide de JavaScript. Il est basé sur les projets Node.js et Chromium et utilise une version allégée de WebKit, le moteur de rendu utilisé dans Chrome, Safari et Opera. Si les navigateurs limitent l’interaction du code JavaScript avec le système d’exploitation sous-jacent, une des particularités de la plateforme NW.js est qu’elle supprime ces limites et offre ainsi aux développeurs beaucoup plus de contrôle et d’interaction avec le système d’exploitation. Si une application NW.js n'a besoin d’être écrite qu’une fois pour être immédiatement utilisable sur Windows, Linux et Mac OS X, pour l’heure, seuls les PC Windows semblent avoir été infectés par le ransomware.

Comme de nombreuses menaces, Ransom32 est généralement distribué via des campagnes de spam. Le fichier malveillant est dès lors joint à des courriels mentionnant des factures impayées ou des notifications de livraison entre autres. Le malware fonctionne comme un Ransomware as a Service (RaaS) et est distribué par des acteurs intermédiaires qui s’abonnement sur une plateforme gérée dans le réseau Tor. Ce service permet à n’importe quel amateur de distribuer la menace après avoir configuré sa propre version personnalisée du ransomware. Tout ce qu’il faut pour s’inscrire et devenir distributeur, c’est de fournir une adresse Bitcoin sur laquelle les fonds générés doivent être versés. Après chaque paiement effectué par une victime, les fonds sont transférés sur le compte des auteurs du malware. Ces derniers récupèrent dès lors une commission de 25 % avant de reverser le reste de l’argent aux distributeurs.

À l’inscription, les futurs distributeurs du ransomware accèdent à une page d’administration où ils pourront effectuer quelques configurations. Cette page livre diverses statistiques, comme le nombre de personnes qui ont déjà payé ou le nombre de systèmes qui ont été infectés. Là, ces derniers pourront configurer le malware (verrouiller complètement l’ordinateur, faible utilisation du CPU, etc.), mais aussi définir le nombre de bitcoins à payer par la victime. Une fois cette phase terminée, ils peuvent alors télécharger leur ransomware qui a une taille remarquable de 22 Mo.


Si en général, la taille de ces logiciels malveillants n’excède pas 1 Mo, ce cas atypique ici ne signifie pas pour autant qu’il s’agit de l’œuvre d’un amateur, précise Fabian Wosar de la firme de sécurité. Ce dernier loue plutôt la qualité du chiffrement utilisé par Ransom32, qu’il compare au CryptoLocker original. Si Fabian a pu « casser » de nombreuses familles de ransomware dans le passé, il dit que cette nouvelle variante est actuellement indéchiffrable.

En ce qui concerne la charge utile du ransomware, il s’agit d’une archive WinRAR auto-extractible qui contient apparemment tout ce qu’il faut pour aider le malware à compromettre l’ordinateur de l’utilisateur. L’archive contient une copie de l’accord de licence GPL, mais aussi un fichier « Chrome.exe » qui est en fait une application NW.js packagée. Cette application contient le code malveillant ainsi que le framework nécessaire pour faire fonctionner le logiciel malveillant. Ce qui signifie que Ransom32 ne compte sur aucun framework existant sur la machine de l’utilisateur. Entre autres fichiers, on trouve dans l’archive un petit script qui énumère, et supprime tous les fichiers et dossiers dans un répertoire donné. Le fichier WinRAR comprend aussi les informations relatives à la configuration du malware.

Une fois que Ransom32 est exécuté, il extrait donc tous ces fichiers dans le dossier de fichiers temporaires et crée un raccourci dans un dossier Démarrage de l’utilisateur pour s’assurer que le malware soit exécuté à chaque démarrage. Il peut alors commencer à chiffrer les fichiers de l’utilisateur et il est demandé à la victime de payer une rançon dans un délai au risque de voir la rançon augmenter ou la clé de déchiffrement détruite.


Lors du chiffrement des fichiers de l’utilisateur, une large variété d’extensions est ciblée, mais des fichiers dans certains répertoires peuvent toutefois être ignorés. Il s’agit de ceux qui sont situés dans un répertoire qui contient l’une des chaînes :\windows\, :\winnt\, programdata\, boot\, temp\, tmp\ et $recycle.bin\. Plus de détails techniques sont fournis sur le blog de la firme de sécurité.

Source : Blog Emsisoft

Et vous ?

Qu’en pensez-vous ?

Voir aussi

Un ransomware mal programmé devient incapable de déchiffrer les données des victimes après le paiement de la rançon

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de e-ric
Membre expert https://www.developpez.com
Le 07/01/2016 à 14:04
Salut

Discussion intéressante car elle peut impliquer n'importe qui.

En ce qui concerne la Debian, les archive DEB proviennent d'un dépôt sûr (Debian), la politique de la fondation Debian est une bonne garantie, tant qu'on se limite à des dépôts sûrs, je ne pense pas que l'on aura de cochonnerie de ce type.

Pour les sessions root, Debian ne permet pas de session graphique connectée en root, même s'il doit être possible de ruser, je n'ai pas fait l'essai.

Par contre, étant un peu ignare dans le domaine des développement Internet, j'ai une question : peut-on récupérer une telle saloperie de manière furtive en surfant sur Internet ?

Cdlt
1  0 
Avatar de pierre++
Membre actif https://www.developpez.com
Le 07/01/2016 à 19:40
Hummmmm,

en lisant la source de cet article on voit que Meet Ransom32 est spécifiquement fait pour cibler des plateformes windows.
Mac/OSX, et Linux plus généralement ne peuvent pas être affecté par celui-ci, en tout cas pas dans sa forme actuelle.
L'auteur de l'article d'origine indique que c'est le fait que ce ransomware utilise NW.js, et qu'il existe une version NW.js pour Mac et pour Linux, qui "pourrait" le rendre convertible pour ces deux derniers OS.
Mais c'est la même chose pour des applis Java pour peut que des JVM soient installés sur les systèmes cibles, donc rien de nouveau ici, et surtout as de risque pour le moment.
1  0 
Avatar de imikado
Rédacteur https://www.developpez.com
Le 04/01/2016 à 13:57
Le titre est un peu trompeur, on se retrouve avec une application de ransomware au final

Le fait qu'il soit codé en Js est aussi important ici que si il avait été écrit en c#, c++ and co: au final une archive auto ex-tractable contenant un .exe
0  0 
Avatar de abriotde
Membre expérimenté https://www.developpez.com
Le 04/01/2016 à 16:54
Non, c'est important le fait que ce soit du Javascript car cela a de nombreuses implication :
1) Le langage est multiplate-forme (A condition d'en tenir compte a la programmation) contrairement à C/C++ et bien d'autres. Il n'est pas le seul, Java, C#, PHP existent mais dépendent plus d'un framework qui doit être installé alors que Javascript est lu sur tout les PC (Internet oblige).
2) Le programme est lourd (22Mo) et haut niveau, il n'a donc pas aisément accès aux failles bas niveau. Jusqu'ici ces défaut étaient assez rédibitoire, ils se sont considérablement réduits.
3) Surtout cela prouve une maturité/fiabilité du langage Javascript.
0  0 
Avatar de Matthieu Vergne
Expert éminent https://www.developpez.com
Le 04/01/2016 à 17:33
Citation Envoyé par abriotde Voir le message
Non, c'est important le fait que ce soit du Javascript car cela a de nombreuses implication :
1) Le langage est multiplate-forme
Oui mais en fait non. Si JS est multi-plateforme, d'après ce que j'ai compris il arrive sous la forme d'un exe. Donc peu de gens sous Linux/Mac s'amuseront à l'ouvrir a priori. Le côté multiplateforme est mis à bas du fait du packaging.
0  0 
Avatar de AoCannaille
Membre émérite https://www.developpez.com
Le 04/01/2016 à 17:43
Citation Envoyé par abriotde Voir le message
Le langage est multiplate-forme (A condition d'en tenir compte a la programmation) contrairement à C/C++ et bien d'autres. Il n'est pas le seul, Java, C#, PHP existent mais dépendent plus d'un framework qui doit être installé alors que Javascript est lu sur tout les PC (Internet oblige).
C'est marrant, j'aurais fait le constat exactement inverse. Seul C/C++ fonctionne seul sans installation supplémentaire en étant multiplateforme si on reste dans la STD et qu'on bidouille pas trop profond dans les fonctions systèmes.
Javascript a besoin d'un navigateur, java/C# d'une machine virtuelle, PHP d'un interpréteur...
0  0 
Avatar de Sytten
Membre régulier https://www.developpez.com
Le 04/01/2016 à 18:00
Pour avoir utilisé NW.js je peux dire que changer de plateforme est très simple avec ce framework. Donc on pourrait très prochainement voir ce soft arriver sur linux sous forme d'un .deb/.rpm ou sur mac sous form d'un .dmg...
Littéralement il s'agit juste de le build pour une autre plateforme et ça télécharge tout ce qui est nécessaire tout seul...
0  0 
Avatar de codec_abc
Membre confirmé https://www.developpez.com
Le 04/01/2016 à 20:21
C'est marrant, j'aurais fait le constat exactement inverse. Seul C/C++ fonctionne seul sans installation supplémentaire en étant multiplateforme si on reste dans la STD et qu'on bidouille pas trop profond dans les fonctions systèmes.
Javascript a besoin d'un navigateur, java/C# d'une machine virtuelle, PHP d'un interpréteur...
Le concept de multiplateforme en C++ est plus lié au code qu'a la sortie généré. Or 99% du temps un compilo C++ ca produit des binaires qui seront dépendant de l'OS et du CPU.

Avec un JAR t'as pas besoin de savoir quel OS a ta cible. Ça c'est du vrai multiplateforme.
Oui mais bon pour exécuter un JAR il faut encore avoir Java d'installé sur son PC. C'est pas le cas de tout le monde (en tout cas pas de moi)

Non, c'est important le fait que ce soit du Javascript car cela a de nombreuses implication :
1) Le langage est multiplate-forme (A condition d'en tenir compte a la programmation) contrairement à C/C++ et bien d'autres. Il n'est pas le seul, Java, C#, PHP existent mais dépendent plus d'un framework qui doit être installé alors que Javascript est lu sur tout les PC (Internet oblige).
NW.js c'est plus ou moins Chrome avec Node.js packagé dedans. Donc c'est pas en soit plus multiplateforme que Java. Si tu veux que tes scripts fonctionnent sous Windows, Linux et Mac OS X il te faut packager les binaires de NW.js de tous ces OS. Et ca ne fonctionnera pas sous Android et iOS.
0  0 
Avatar de imikado
Rédacteur https://www.developpez.com
Le 04/01/2016 à 20:33
Citation Envoyé par Sytten Voir le message
Pour avoir utilisé NW.js je peux dire que changer de plateforme est très simple avec ce framework. Donc on pourrait très prochainement voir ce soft arriver sur linux sous forme d'un .deb/.rpm ou sur mac sous form d'un .dmg...
Littéralement il s'agit juste de le build pour une autre plateforme et ça télécharge tout ce qui est nécessaire tout seul...
Oui mais non: sous GNU/Linux, on demande un mot de passe pour installer un logiciel
0  0 
Avatar de AoCannaille
Membre émérite https://www.developpez.com
Le 05/01/2016 à 9:39
Citation Envoyé par imikado Voir le message
Oui mais non: sous GNU/Linux, on demande un mot de passe pour installer un logiciel
Sauf si t'es déjà en root
Sauf si la vrai partie malware est portable (dans le sens utilisable sans installation : unzip & run) et/ou qu'elle est téléchargée après coup
0  0