|
|||
Accueil
Articles
Logiciels
Liens |
Powered by Unknown !Le contexteIl est notoire que lors de la création du réseau Internet et de ses précurseurs, la sécurité avait été quelque peu oubliée du cahier des charges 1. En effet, la préoccupation de l'époque était plutôt de faire communiquer les machines et de se donner les moyens de déverminer les problèmes rencontrés. C'est pourquoi bon nombre des protocoles de communication et des implémentations correspondantes prévoyaient la divulgation spontanée ou sur demande, de l'éditeur, du modèle et de la version des logiciels utilisés2. Puis le temps a passé, le Réseau a rencontré le succès que l'on sait et cette tendance s'est transformée et amplifiée : les logiciels d'infrastructure, jusque là quasi invisibles, ont commencé à s'afficher publiquement, leurs éditeurs et utilisateurs respectifs ayant notamment recours aux logos, boutons et bandeaux "Powered by XY"3 pour promouvoir leurs solutions techniques. Les risquesLes Barbares habitaient dans les angles tranchants des cités exilées au large du business.4 Or pendant ce temps, une autre chose importante avait changé : avec l'accroissement du nombre de machines connectées et l'ouverture aux entreprises puis aux particuliers, le Réseau avait progressivement perdu son statut d'environnement de confiance, les barbares étaient aux portes ! Alors que les bonnes gens commençaient à peine à prendre conscience de la valeur de leurs informations et du fait que certaines étaient plus sensibles que d'autres, des pirates collectaient tranquillement celles sur les logiciels utilisés5, les croisaient avec des bases de vulnérabilités6, puis les exploitaient pour compromettre la sécurité des machines, réseaux et organisations correspondantes. Cette époque a fini par connaître elle aussi sa révolution industrielle : avec l'apparition d'outils automatisant la collecte et l'exploitation des informations sensibles, la piraterie s'est démocratisée, accueillant dans ses rangs de nouvelles générations techniquement moins averties, souvent beaucoup moins subtiles7 et aux motivations parfois quasi ludiques8 ! Aujourd'hui la situation est telle que toute machine, indépendamment de la notoriété de l'organisation l'exploitant, voit sa sécurité éprouvée quelques heures, parfois quelques minutes, après sa mise en ligne. Les particuliers, même connectés temporairement par une connexion téléphonique avec leur fournisseur d'accès Internet, sont également concernés, à plus forte raison depuis le déploiement de solutions d'accès plus permanentes telles que le câble ou l'ADSL9. Dans ces conditions, continuer à fournir gracieusement des informations sensibles au tout venant équivaut vraiment à tendre le bâton pour se faire battre ! Nos recommandationsLe tout venant a été piraté par les mômes. Qu'est-ce qu'on se fait, ... on se risque sur le bizarre ?10 Le préalable indispensable est de sécuriser tout système raccordé à Internet. Sans m'attarder là dessus, car ce n'est pas le sujet de cet article, cela s'articule notamment en moyens de :
Il est ensuite souhaitable de contrôler la diffusion des informations sensibles au nom d'un principe bien connu dans les administrations ou chez les auditeurs : le "besoin d'en connaître"12. Il s'agit tout bêtement de ne communiquer une information sensible qu'aux personnes qui ont une raison légitime d'y avoir accès, c'est-à-dire en général personne, pour ce qui est des utilisateurs de services Internet. Dans le cas qui nous intéresse, celui de la divulgation des informations sur les logiciels utilisés, cela peut se faire de plusieurs façons :
La série d'articles accessibles à partir de cette page explique comment faire cela pour les services réseau classiquement utilisés sous FreeBSD. Alors place à la créativité et vive les Powered by Unknown, by you don't need to know, by you must be joking, comme il vous plaira ! Les objections classiquesC'est de la sécurité par l'obscuritéDès que l'on commence à parler de masquer les informations permettant d'identifier les logiciels que l'on utilise, on s'attire généralement une réponse quasi pavlovienne : "c'est de la sécurité par l'obscurité !"14. Traduction, "c'est mal !". Il s'agit (souvent, mais hélas pas toujours...) d'un bien mauvais procès d'intention car :
Pour faire simple, ce n'est pas parce que l'on ne communique pas une information, qu'on la considère comme un secret, dont la divulgation affaiblirait la sécurité du système correspondant. En fait, la notion même de sécurité par l'obscurité est très mal comprise. Elle devrait vraiment s'apprécier par son corollaire, "la sécurité par la transparence", c'est-à-dire par le bénéfice qui pourrait être retiré de la communication de l'information concernée. Or ici, il est clair que la communauté des pirates est désormais la seule qui pourrait tirer un bénéfice de ces informations. Histoire d'enfoncer le clou, il ne s'agirait donc pas de sécurité par l'obscurité, mais plutôt d'insécurité par la transparence ! Après tout, vous viendrait-il à l'idée de publier la topologie de votre réseau, la liste de vos équipements de sécurité et les règles de filtrage de vos pare-feu ? Ces informations ne sont pourtant pas secrètes, non plus 15. C'est inutile car les attaques sont systématiquesUne autre objection classique est que le masquage des informations permettant d'identifier les logiciels que l'on utilise ne sert à rien, parce que la plupart des attaques, aujourd'hui, sont automatisées et systématiques : c'est-à-dire qu'elles ne tiennent justement pas compte de ces informations. En premier lieu cependant, toutes les attaques automatisées ne sont pas systématiques. Les récents vers visant Apache sont là pour le rappeler...16 Ensuite, ces attaques ne sont pas les plus dangereuses. On les repère en effet assez facilement et les systèmes de détection d'intrusions suffisent généralement à les contrer. L'intérêt de la non divulgation est donc de gêner les gens qui ont suffisamment de talent pour monter une attaque discrète, en les obligeant à tâtonner un peu plus avant qu'ils ne puissent lancer une attaque décisive, ce qui augmente les chances de les détecter. Ca ne sert à rien car l'identification d'un serveur est toujours possible avec un analyseur d'empreintes réseauCertes, mais à bien y regarder :
Cela vaut donc tout de même la peine de masquer ces informations... Cela rend la tâche plus difficile aux administrateursC'est ce que l'on entend parfois auprès de certains administrateurs qui ont recours aux chaînes de version affichées par les logiciels pour faire de l'inventaire de parc, ou encore à des outils de balayage de ports pour faire de l'inventaire de services réseau... C'est un cas typique d'emploi d'outils inappropriés pour accomplir une tâche et, pour les deux exemples cités ci-dessus, bien peu fiables par dessus le marché ! Les logiciels modifiés sont plus difficilement maintenablesCet argument là est déjà plus recevable que les autres. Heureusement, comme on pourra le constater dans cette série d'articles, beaucoup de logiciels permettent le masquage ou le remplacement de leurs informations identifiantes par (relativement) simple paramétrage. Pour les autres, disons que la génération d'une version modifiée donnera peut-être l'occasion de mieux en étudier la documentation et d'en optimiser le paramétrage ainsi que le binaire généré.
--
|