J'ai initialement posé cette question sur Stack Overflow , mais les gens ont suggéré que je pose ici à la place.
J'écris un logiciel qui doit identifier de manière unique plusieurs machines différentes. Je prévoyais de l'utiliser /etc/machine-id
pour ce faire.
En lisant les documents pour machine-id, je suis tombé sur ce passage:
Cet ID identifie de façon unique l'hôte. Elle doit être considérée comme "confidentielle" et ne doit pas être exposée dans des environnements non fiables, notamment sur le réseau. Si un identifiant unique stable lié à la machine est nécessaire pour certaines applications, l'ID de la machine ou une partie de celui-ci ne doit pas être utilisé directement. Au lieu de cela, l'ID de la machine doit être haché avec une fonction de hachage à clé cryptographique, à l'aide d'une clé fixe spécifique à l'application.
Je ne sais pas grand-chose sur dbus, mais j'avais l'impression que c'était uniquement pour IPC. Si tel est le cas, je ne sais pas pourquoi cela importerait vraiment si un attaquant distant connaissait l'identifiant de la machine. Outre les problèmes de confidentialité évidents, existe-t-il des raisons de sécurité légitimes (connues) de ne pas partager son ID d'ordinateur? Ou s'agit-il simplement d'un cas de documentation fortement formulée?
/etc/machine-id
est un fichier et l'adresse MAC est facilement usurpée - en tant que telle peut être facilement copiée (en contournant votre identification).Réponses:
Non, ce texte a été ajouté pour des raisons de confidentialité plutôt que de sécurité.
L'ID machine est similaire à un UDID iOS ou à une adresse MAC; l'exposer inutilement (sur le réseau ou à des applications en bac à sable) pourrait permettre à quelqu'un de suivre les utilisateurs du programme sur des réseaux ou de lier l'utilisation par une même personne d'applications différentes.
Voir discussion:
la source