Votre entreprise a développé une application bancaire. Afin de tester et de débuguer l’application, un développeur a créé un point d’entrée accessible à distance via une API. Si cette fonctionnalité n’est pas documentée et n’est pas désactivée avant la mise en production de l’application, elle sera alors considérée comme malveillante. Dans quelle catégorie de code malveillant peut-on classer cette fonctionnalité ?
[A] Cheval de Troie (Trojan)
[B] Porte dérobée (Backdoor)
[C] Bombe logique (Logical bomb)
[D] Outil d’accès à distance (RAT)
Qu’est-ce qu’une « Backdoor » ? Voici sa définition dans Wikipédia : Dans un logiciel, une porte dérobée (de l’anglais backdoor, littéralement « porte de derrière ») est une fonctionnalité inconnue de l’utilisateur légitime, qui donne un accès secret au logiciel. L’introduction d’une porte dérobée dans un logiciel à l’insu de son utilisateur transforme le logiciel en cheval de Troie.
On retrouve bien ici l’énoncé de notre question qui parle de « fonctionnalité non documentée » et donc inconnue de l’utilisateur légitime. La question parle également de « point d’entrée accessible à distance via une API » et par conséquent cela correspond l’accès secret au logiciel évoqué dans la définition Wikipédia.
La bonne réponse est donc la réponse [B] Porte dérobée (Backdoor)
Oui mais la définition de Wikipédia nous dit aussi que l’introduction d’une porte dérobée dans un logiciel transforme ce dernier en cheval de Troie. Alors pourquoi ne peut-on pas choisir la réponse [A] ? Tout d’abord parce que la question porte sur la catégorie de la fonctionnalité secrète et non pas celle du logiciel. Et c’est la fonctionnalité de type backdoor qui peut potentiellement transformer un logiciel en cheval de Troie. D’autre part, pour qualifier ainsi le logiciel, il faudrait que la fonctionnalité soit ajoutée dans un but clairement malveillant. Or ce n’est pas ce qui dit la question puisque l’objectif du développeur était de tester et débuguer l’application.
La proposition [C] n’est pas correcte car une bombe logique est un code malveillant qui infecte un système et qui reste inactif jusqu’à l’occurrence d’une ou plusieurs conditions. Cela peut être à l’échéance d’une date spécifique, au lancement d’un programme particulier, à la connexion à un site Web, à la réception d’une requête particulière, …
Un RAT (Remote Access Tool ou Remote Administration Tool) est un logiciel qui permet la prise de contrôle à distance d’un système. La proposition [D] n’est pas correcte car une backdoor ne permet pas forcément de donner un accès complet à distance au logiciel concerné. Dans notre question on parle d’un point d’entrée accessible à distance via une API. Ce point d’entrée peut par exemple permettre d’extraire des données de l’application sans pour autant donner un accès complet au système.
Pour en savoir plus sur les codes malveillants et les attaques applicatives nous vous recommandons de suivre le module n°21 de la formation CISSP de VERISAFE.
Questions et réponses rédigées par VERISAFE selon le programme officiel du CISSP actuellement en vigueur
© VERISAFE – Utilisation ou reproduction (même partielle) strictement interdite sans l’accord écrit de VERISAFE