Remote Command Execution (Exécution de commandes à distance). Cela s’utilise pour décrire une vulnérabilité permettant de compromettre complètement une cible à distance.
Nous avons expliqué que les vulnérabilités peuvent avoir des impacts différents. Parfois peu graves (on peut connaître l'heure du serveur), parfois graves (on peut faire un virement bancaire depuis le compte d’un autre utilisateur) et parfois d'une gravité totale (le pirate peut faire tout ce qu'il veut). On dit dans ce dernier cas que la cible est compromise.
Voyons plus en détail ce qu'est une compromission.
Matériellement, ça se traduit par le fait que le pirate puisse accéder à une interface de commande de la cible. Une telle interface se nomme un terminal (shell en anglais) et permet de ... tout faire.
Le grand public n'a généralement jamais vu ou utilisé de terminal sur un ordinateur, car ce n'est pas facilement utilisable sans des compétences avancées en informatique. Pour rendre ça un peu plus concret, voici à quoi ça ressemble :

Alors à quoi ça sert ? Et bien à tout justement. C'est un outil qui permet de demander directement à l'ordinateur de faire quelque chose.
Quand vous, pauvre moldu, vous voulez supprimer le fichier Image01.jpeg de votre ordinateur, vous ouvrez l'explorateur de fichiers, vous allez jusqu'au dossier Images, vous faites un clic droit sur le fichier Image01.jpeg, puis vous cliquez sur "Supprimer" et enfin vous confirmer le message qui vous demande si vous voulez vraiment faire ça.
Quand un informaticien veut le faire avec le terminal, il a juste à taper rm -rf C:\Users\David\Images\Image01.jpeg.
Il s'agit d'un exemple simple, l'important à comprendre est que c'est plus "direct" : on peut faire tout ce qu'on veut en une seule étape (plutôt que de devoir faire 10 clics, chercher dans les menus, etc). Tout ce qu'il est possible de faire sur un ordinateur, on peut le faire depuis cet unique outil qu'est le terminal. Et donc symétriquement, quelqu'un qui peut accéder à cet unique outil qu'est le terminal ... peut tout faire sur votre machine.
C'est donc le Graal pour tout pirate : accéder à un terminal de la cible = avoir compromis cette cible.
Quand on veut décrire les impacts d'une vulnérabilité permettant de compromettre sa cible, plutôt que de décrire l’infinité des malversations que pourrait imaginer le pirate (vol de données, altération de données, destruction de données, altération du fonctionnement d'un programme, détournement d’usage, usurpation d’identité, ...) on utilise le terme générique : exécution de commandes arbitraires (arbitrary command execution en anglais).
Ça veut dire que le pirate peut envoyer des commandes au terminal, donc qu'il peut faire ce qu’il veut. C'est l'impact maximal.
Mais il y a deux dimensions importantes pour une vulnérabilité : son impact (à quel point ça fait mal quand elle est exploitée contre sa cible) et son exploitabilité, c'est-à-dire : à quel point c'est facile de l'exploiter.
Si la seule personne qui peut exploiter une vulnérabilité de type "execution de commandes arbitraires" c'est votre voisin de bureau, bon ... c'est chaud mais y a pas le feu au lac non plus. Si par contre c'est exploitable depuis Internet, c'est plus urgent.
Si pour exploiter la vulnérabilité il faut posséder un compte administrateur, il n'y a pas urgence. Mais si c'est exploitable sans accès particulier, n'importe quel curieux peut tenter sa chance.
La combinaison des deux pires cas (exploitable depuis Internet, sans nécessiter de compte) vous met en face de 4 milliards d'adversaires potentiels ! On appelle ce cas Remote Unauthenticated (il n’y a pas de traduction communément utilisée en français mais ça se traduirait par «à distance, non authentifié»).
Et donc, quand on combine l’impact le plus grave possible (arbitrary command execution) avec l’exploitabilité la plus dangereuse (remote unauthenticated) on appelle ça Remote Command Execution (parce que ce serait long d’écrire remote unauthenticated arbitrary command execution), abrégé en RCE.
La blague quand on essaye d’expliquer en quelques mots ce qu’est une RCE c’est de dire : «c’est quand ton ordinateur, c’est plus ton ordinateur». Pour traduire le fait que n'importe qui peut prendre le contrôle total de ta machine à tout moment.
Exemples d'usages :