Cet article a été traduit automatiquement.
Une exécution de code arbitraire (ACE) résulte d'une faille dans un logiciel ou un matériel. Un site hacker repère ce problème et peut alors utiliser l'informatique pour exécuter des commandes sur un terminal cible.
Les vulnérabilités liées à l'exécution de code à distance se produisent lorsqu'un hacker peut lancer un code malveillant sur l'ensemble d'un réseau plutôt que sur un seul terminal.
Comment fonctionne l'exécution de code arbitraire ?
Les ordinateurs ne peuvent pas faire la différence entre des entrées valides (comme un mot de passe) et des commandes (comme un code). Si vous tapez la bonne séquence de chiffres et de lettres, et que l'ordinateur est conçu pour les accepter, vous pouvez transformer presque n'importe quelle entrée en attaque.
Un site hacker peut déclencher un problème qui existe déjà, modifier des informations dans un programme, charger un code différent ou installer un problème à exécuter plus tard.
Le logiciel ou le terminal cible contrôle le niveau d'accès dont dispose hacker, mais l'objectif de hackerest d'accroître ses privilèges. Essentiellement, le site hacker tente d'obtenir le contrôle du terminal par l'administrateur. S'ils y parviennent, cet ordinateur pourrait devenir un terminal zombie que les pirates informatiques pourraient exploiter lors d'une autre attaque.
Les incidents ACE peuvent être plus ou moins graves.
En 2014, un joueur a utilisé les commandes ACE et le bouton d'une manette pour détourner le jeu Vidéos Super Mario World. L'exploit était si important qu'un auteur a déclaré : "Le tissu de la réalité du jeu s'effrite pendant quelques secondes."
Elles peuvent aussi avoir des conséquences plus dramatiques que la modification d'un jeu Vidéos. Les pirates informatiques ont également utilisé l'ACE pour voler des données, mettre en place des systèmes d'extorsion et mettre une entreprise à genoux sur le plan informatique. Les messages textuels privés et les historiques de recherche peuvent même être exposés lorsque des pirates utilisent l'ACE.
4 Vulnérabilités d'exécution de code arbitraire
Un site hacker ne peut pas s'introduire dans n'importe quel système et commencer à exécuter du code. Il faut d'abord qu'il y ait un problème, et le site hacker doit trouver la technologie de l'information.
Les quatre vulnérabilités connues qui peuvent entraîner l'exécution de code à distance sont les suivantes :
- Désérialisation. Les programmeurs utilisent la sérialisation pour convertir des données complexes en un flux facile à envoyer. La désérialisation rétablit les données dans le formulaire original de l'IT. Un utilisateur pourrait s'immiscer dans ce processus et envoyer des données malformées ou inattendues.
- GND ldd exécution de code arbitraire. La commande ldd fonctionne sous Linux, et permet à un utilisateur d'explorer les dépendances d'une bibliothèque partagée. Cette simple commande peut permettre à l'ACE d'agir. peut placer un exécutable dans ~/application/bin/exec et le faire charger par le lib loader.
- Sécurité de la mémoire. Cela signifie que dans toutes les exécutions du programme, il n'y a aucun moyen d'accéder à la mémoire non valide. Les violations permettent à un programme de se bloquer de manière inattendue, et lorsque cela se produit, le site hacker peut intervenir avec du code exécutable. Ce même problème peut également entraîner une fuite de données.
- Type confusion. Le code d'un programme peut être compliqué et permettre parfois des conflits subtils. À un moment donné, le terminal peut ne pas savoir exactement ce qu'il doit faire, et un site hacker peut lui apporter une réponse. En 2018, un programmeur a découvert ce problème dans Internet Explorer.
Les pirates informatiques sont innovants, et il est probable qu'il existe de nombreuses autres vulnérabilités. Mais cette courte liste vous donne une idée de l'ampleur du problème.
Conseils pour la prévention des codes arbitraires
Vaincre un hacker demande de l'imagination. Un développeur doit penser à toutes les façons inhabituelles et folles dont quelqu'un pourrait s'introduire dans un logiciel et le manipuler. Il est pratiquement impossible pour ces experts d'imaginer tous les problèmes qu'une hacker pourrait exploiter.
Sachez que tout logiciel que vous utilisez est probablement vulnérable. Appliquez ces connaissances en mettant à jour votre logiciel régulièrement et avec dévouement. Ne laissez pas des exploits connus compromettre votre sécurité.
Investissez également dans un logiciel antivirus. Les programmes ne peuvent pas détecter tous les problèmes liés au CAE. (En fait, une vulnérabilité repérée dans la nature n'a pas été détectée par la moitié des antivirus ). Mais ils offrent une autre couche de protection essentielle.
Utilisez des pratiques de sécurité élémentaires sur tous les terminaux que vous utilisez, y compris les ordinateurs portables. Cryptez vos données, sauvegardez-les régulièrement et verrouillez vos données de mots de passe.
Sur Okta, nous proposons des programmes que vous pouvez utiliser pour vous connecter, autoriser et gérer les utilisateurs. Nous pouvons également vous aider à protéger vos serveurs contre les attaques extérieures. Nous serions ravis de discuter avec vous de vos besoins en matière de sécurité ou de vous aider à lancer un S'incrire de nos services. Contactez-nous pour entamer une conversation.
Références
Comment un robot alimenté par un émulateur a reprogrammé Super Mario World à la volée. (janvier 2014). Ars Technica.
Une sécurité sans faille : Sécurité de la mémoire. (janvier 2019). Mozilla Hacks.
Cette application Android très populaire pourrait avoir exposé votre historique web et vos textes. (juin 2021). Express.
Désérialisation des données non fiables. OWASP.
RCE sans code natif : Exploitation d'un Write-What-Where dans Internet Explorer. (mai 2019). Initiative "Zero Day".
ldd Exécution de code arbitraire. (2021), Chat sur le tapis.
Un pirate exploite la vulnérabilité de WinRAR pour diffuser des logiciels malveillants. (février 2019). Semaine de la sécurité.