Ne pas faire confiance à votre homologue
« Ne pas approuver votre homologue » est une règle de sécurité de base, mais elle est souvent négligée. Ne partez pas du principe que l’autre partie d’une communication se comporte correctement et ne supposez pas que votre homologue transmettra les données attendues. MIDL et RPC effectuent des vérifications en votre nom, mais pas toutes les vérifications.
Savoir quel aspect des paramètres sont vérifiés par MIDL ou RPC, et quels aspects vous devez vérifier vous-même. Par exemple, pour les handles de contexte in/out, RPC vérifie que le handle de contexte n’est pas une valeur non null valide. Elle autorise les valeurs NULL et les valeurs valides, mais de nombreux développeurs ne savent pas que les valeurs NULL sont autorisées. Il s’agit d’un point à vérifier.
Même si vous faites généralement confiance à votre homologue, veillez à ne pas introduire de nouveaux chemins d’accès par lesquels un ordinateur compromis ou un compte principal peut attaquer d’autres ordinateurs. Imagine qu’un utilisateur choisisse son anniversaire comme mot de passe et qu’il est deviné par une personne malveillante. Même après l’authentification des demandes de l’utilisateur et l’accès à ses données est autorisé, assurez-vous qu’il n’existe pas de vulnérabilités exploitables, telles que des dépassements de pile qui peuvent permettre à une personne malveillante de prendre le contrôle de votre serveur et d’étendre la violation de la sécurité.