web-dev-qa-db-fra.com

Quelle est la résistance des codes-barres et des codes QR aux tentatives de modification des données stockées?

Supposons que nous voulons protéger un document contre la manipulation et la falsification. Ainsi, nous encodons certaines informations sensibles du document et les stockons dans un QR-code inséré dans le document.

Peut-on être sûr qu'un attaquant n'est pas en mesure de changer et de modifier les données stockées dans le QR-code? Et s'il est possible de le modifier, est-il difficile pour un attaquant de le faire? En d'autres termes, à quel point un QR-code est-il sécurisé?

45
Questioner

... à quel point un QR-code est-il sécurisé?

Les données dans un code QR sont en quelque sorte protégées contre les dommages accidentels en ayant ne certaine correction d'erreur mais elles ne sont pas protégées contre une manipulation délibérée. De plus, un attaquant pourrait remplacer complètement le code QR du document par un autre.

112
Steffen Ullrich

Les codes QR ne sont normalement pas protégés contre la manipulation. Mais:

Vous pouvez inclure un signature numérique dans les données afin que tout le monde puisse vérifier si le code QR a été créé par vous et n'a pas été modifié. Ensuite, la seule chose qu'un attaquant peut faire est de remplacer le code QR par un autre code QR que vous avez créé.

Une telle approche fonctionnera généralement comme ceci:

  • Sur un serveur sécurisé, une paire de clés (clé publique et clé privée) est générée. La clé publique peut être publiée en toute sécurité. La clé privée ne quitte jamais le serveur.
  • Lorsqu'un code QR doit être créé, le serveur calcule la signature numérique à partir des informations et de la clé privée. Les informations ainsi que la signature numérique sont mises dans un code QR.
  • On crée une application pour scanner les codes QR. La clé publique est incluse dans l'application. Un algorithme qui prend en entrée la clé publique, les informations et la signature numérique peut vérifier si les données d'un code QR ont été falsifiées ou non.

Je ne sais pas s'il existe un logiciel standard ou bon pour les signatures numériques dans les codes QR.

60
Paul

Un code QR ou un code-barres ne sont que des données écrites dans un format non alphabétique. Il n'offre pas plus de sécurité que ce que vous obtiendriez en écrivant les mêmes données dans du texte ordinaire.

45
David Richerby

Les codes QR n'offrent aucune protection contre les modifications intentionnelles.

La protection des documents peut être abordée de plusieurs façons selon votre intention. La vérification du contenu peut être effectuée en joignant une signature numérique, mais il doit y avoir une vérification extérieure (hors bande) de votre clé publique pour éviter de remplacer simplement la clé de signature par la clé de signature de quelqu'un d'autre. Ceci est courant dans les téléchargements de code où la signature du code (document) est disponible via un site Web ou une autre vérification hors bande.

Les filigranes cachés ou d'autres techniques stéganographiques peuvent aider à valider un document, mais cela dépend de ne pas être détecté par opposition à une signature cryptographique rigoureuse. Il existe de nombreuses approches et leur efficacité dépend de la distribution et de l'utilisation. Par exemple, un micro-espacement personnalisé des mots ou lettres sélectionnés. Rotations du graphique à secteurs non standard. Espaces supplémentaires dans des emplacements sélectionnés d'un document numérique. Petits points jaunes sur papier blanc d'un document imprimé. Beaucoup d'autres, mais une signature numérique est l'étalon-or.

8
user10216038

Les codes-barres sont faciles à manipuler. Après tout, ils ne sont qu'un encodage pour un nombre. Certains ont une redondance, certains ont des sommes de contrôle, certains n'ont aucune protection du tout.

Vous aimerez peut-être ces notes d'un discours sur les codes-barres: Jemandem einen Strich auf die Rechnung machen (titre allemand, mais diapositives anglaises).

L'orateur s'est beaucoup amusé en manipulant différents types de codes-barres et explique les choses les plus élémentaires comment ils fonctionnent, comment la manipulation fonctionne et quels systèmes sont vulnérables et lesquels ont une protection suffisante contre les personnes qui jouent avec les codes-barres.

3
allo

Un code QR et des codes à barres ne sont rien d'autre que des informations lisibles par machine. Ce n'est pas parce qu'un être humain ne peut pas facilement le lire qu'il s'agit d'un type de sécurité.

Les codes-barres ne sont pas mis sur des choses pour la sécurité, mais pour la facilité d'utilisation. La raison pour laquelle les codes QR (et d'autres similaires) existent, c'est parce que vous pouvez y mettre plus de données. En fin de compte, les données sont des données et tant que les données elles-mêmes ne sont pas sécurisées, la représentation ne l'est pas non plus.

2
John Keates

Si vous voulez dire "modifier le code à barres imprimé et le code QR", c'est plutôt difficile car le code à barres cesse généralement de fonctionner s'il est modifié, et le code QR a une sorte de "correction d'erreur" et survit donc grâce à une petite falsification. Il est pratiquement impossible de modifier un code QR en un autre arbitraire.

Mais c'est tout simplement trop stupide de modifier un existant. Vous pouvez imprimer des autocollants d'un QR/bar malveillant et le coller directement sur votre cible. Il y a déjà plusieurs cas où un voleur "vole" de l'argent dans les magasins en remplaçant (en collant un autocollant) son "code QR du destinataire" que les gens scannent pour payer de l'argent. Par exemple, ici est une vraie nouvelle qui s'est produite il y a quelque temps.

1
iBug