web-dev-qa-db-fra.com

Le système de pétitions électroniques du Parlement britannique est-il fiable?

Au cours des derniers jours, j'ai souvent entendu parler de la pétition pour (pratiquement) "répéter" le référendum sur le Brexit et j'ai remarqué qu'il s'agit d'une pétition en ligne .

J'ai remarqué que le formulaire de "signature de la pétition" nécessite simplement un nom, une adresse e-mail et un code postal, puis vous recevrez un e-mail pour confirmer votre signature.

Ce système est-il sécurisé? Quelqu'un ne peut-il pas simplement créer un bot qui remplira le formulaire en continu (et confirmera l'e-mail) en utilisant une adresse différente à chaque fois? En regardant page de confidentialité , il apparaît également qu'il n'a même pas de système captcha, et la vérification par e-mail est le seul "système" à empêcher les bots.

Enfin et surtout, il n'a pas de système pour garantir que le signataire est britannique.

52
Matteo Umili

Le site des pétitions est purement un mécanisme pour voir s'il peut y avoir un nombre suffisamment élevé pour soutenir quelque chose, et si c'est le cas, ce sujet sera discuté au Parlement.

Il existe des freins et contrepoids (par exemple, 80 000 faux votes ont été identifiés et supprimés), mais il n'y a pas besoin d'un fort niveau de confiance ici, car rien n'est décidé par aucune de ces pétitions.

Pour la refonte du référendum sur la sortie européenne, il y a environ 4 millions de signataires, et même avec un certain niveau de fraude, le gouvernement sait déjà que c'est quelque chose dont ils doivent discuter.

En résumé - peut-on faire confiance au niveau requis à cet effet? presque certainement. Peut-on faire confiance pour ne pas avoir de fraude? Non.

78
Rory Alsop

Observations générales

Pouvez-vous être sûr à 100% que chaque signature provient d'une personne réelle? Pouvez-vous prendre quelques précautions pour rendre la triche plus difficile? Oui.

Voici certaines choses que le gouvernement britannique pourrait faire (aucune idée s'il le fait réellement):

  • Nécessite un CAPTCHA réussi après X tentatives à partir de la même IP.
  • Limite de débit par IP. Bien sûr, cinq personnes dans le même ménage pourraient vouloir s'inscrire, ou 10 personnes sur le même réseau d'entreprise après en avoir discuté pendant le déjeuner. Mais si vous obtenez 100 signatures de façon régulière, vous pouvez être sûr que quelqu'un essaie de gonfler les chiffres.
  • Faites la géolocalisation de l'IP et corrélez avec le code postal entré. La plupart des gens le feraient à la maison sans VPN ni proxy. Si 90% des signatures correspondent, vous pouvez être assez sûr que la plupart d'entre elles sont légitimes.
  • Recherchez le modèle dans les données. S'il y a un pic étrange d'inscription pendant deux heures et que ces inscriptions ont des caractéristiques différentes des autres, c'est peut-être parce que quelqu'un a loué un botnet pendant cette période.
  • Lorsque la pétition atteint une limite, choisissez une sélection aléatoire de signataires et essayez de les vérifier. Cela pourrait être fait par exemple en leur envoyant un e-mail et en leur demandant d'appeler à partir d'un numéro de téléphone britannique figurant sur le nom qu'ils ont utilisé dans la pétition. Cela vous donnerait une estimation de limite supérieure sur le pourcentage important de signatures fausses.

Un attaquant intelligent avec un botnet pourrait-il surmonter ces problèmes? Peut-être, mais cela élève la barre.

Étude de cas

Stu-W lié à a Python utilisé pour signer automatiquement la pétition. Le script présente un certain nombre de faiblesses qui pourraient être facilement utilisées pour filtrer les contrefaçons:

  • Le code postal est une constante codée en dur dans le script (SW1A 0AA). Même si des utilisateurs individuels le modifiaient, un grand nombre de signatures provenant du même code postal dans un court laps de temps serait un cadeau mort.
  • Les e-mails utilisés sont générés avec le module Python tempmail , qui est juste un wrapper pour le service temp-mail.r . Donc juste filtrer les domaines utilisés par eux ferait l'affaire.
  • Le nom n'est qu'un groupe de caractères aléatoires comme "ûqv knzõâ".
  • Tous les messages proviendraient de la même adresse IP. Il suffit donc de limiter la limite ou de filtrer les adresses IP avec plus de X signatures en temps Y de la base de données.
  • Il n'y a aucune tentative de définir un en-tête User-Agent Crédible.

En d'autres termes, ce script est plutôt stupide. Même s'il peut être utilisé pour signer la pétition, cela ne signifie pas que les fausses signatures manifestement ne seront pas filtrées plus tard. Ce n'est pas parce que vous soumettez que vous serez compté.

20
Anders

Je ne sais pas si c'est ainsi que les choses se font en Grande-Bretagne, mais c'est ainsi que les choses se font aux Pays-Bas chaque fois qu'une pétition est présentée au gouvernement:

  • Un échantillon aléatoire des signatures est prélevé;
  • Ces signatures sont vérifiées (je pense qu'ils appellent les gens pour leur demander s'ils ont signé);
  • le rapport résultant de signatures valides: non valides est ensuite appliqué à l'ensemble de la pétition.

Si suffisamment de signatures sur la pétition sont valides, la pétition doit être prise en considération par le parlement.

Étant donné que le seuil sur les pétitions britanniques est de 10 000 à examiner par le gouvernement et de 100 000 à examiner pour débat, seulement 0,3% (considération)/2,7% (débat) de 677 062 signatures = devrait être valide.

15
user2428118

Pour l'outil gouvernemental:

Je vois un point intéressant: il y a une carte montrant la répartition entre les votes: http://petitionmap.unboxedconsulting.com/?petition=131215 .

On voit ici que les votes ont été faits dans tout le pays, et la répartition semble suivre la densité de population (plus de votes sur Londres, ...). Un bot élaboré aurait pu imiter ça, mais si vite? Cela semble peu probable.

Cela nécessitera toujours de fournir 4 milliards d'adresses électroniques différentes. La plupart des fournisseurs effectuent des vérifications, et si vous utilisez un ou deux domaines de messagerie qui ne sont pas largement utilisés et protégés contre les bots, vous pouvez toujours détecter et rejeter ces votes.

De plus, c'est un outil gouvernemental, donc ils peuvent avoir pas mal de contrôles autour de lui (interdire l'IP proxy en détectant beaucoup de la même IP, ...) mais je ne les connais pas.

Je pense donc que cette pétition utilisant l'outil gouvernemental semble fiable car générer autant de votes compte tenu des adresses de messagerie et de la répartition des codes postaux semble difficile à faire dans le court laps de temps écoulé depuis les premiers résultats.

EDIT: Répondre aux commentaires de DW: puisque le PO est gagnant si l'outil du gouvernement est fiable concernant la pétition avec 4000000 votes, ce que je disais qu'il y a dans ce cas, il est définitivement fiable, les faux votes seront suffisamment filtrés pour ne pas soyez si représentatif.

Maintenant, si vous avez demandé 10 000 votes, il est possible que les faux votes soient trop représentatifs pour être dignes de confiance.

3
Walfrat

Vous ne pouvez pas faire correspondre le code postal à l'emplacement IP, j'utilise Plusnet au Royaume-Uni et il apparaît comme étant à Dundee (à plusieurs centaines de kilomètres) de moi lorsque je vérifie mon emplacement en fonction de l'emplacement. Il ne peut donc pas utiliser cela pour vérifier.

De même, vous n'avez pas besoin de millions d'adresses e-mail, une seule avec de nombreux alias - en supposant que l'adresse e-mail est réellement vérifiée.

Je doute que le site de pétition ait été construit avec la vérification de la fraude à l'esprit, car jusqu'à récemment, les pétitions concernaient principalement des questions triviales. C'est probablement juste un simple formulaire Web utilisant une réponse par e-mail et un vérificateur de doublons pour le code postal et le nom (plusieurs personnes peuvent vivre au même endroit)

3
gbjbaanb

Ils peuvent vérifier le nom et le code postal par rapport au liste électorale . Quand ils disent que 80 000 noms frauduleux ont été supprimés, je m'attends à ce que ce soient ceux qui ne correspondent pas (je ne le sais pas avec certitude).

Cependant, cela est imparfait car beaucoup de la liste électorale est publique.

2
paj28

Bien que la réponse soit "non", dans ce cas, cela n'a pas d'importance. Tout ce que c'est, c'est en "indicateur". Il n'a pas besoin de faire confiance pour être "examiné".

Si quelqu'un devait voter sur Internet, ce système serait une très, très mauvaise idée à utiliser.

2
John Keates

Ce n'est pas seulement la sécurité technique que vous devez considérer. Aucun système de vote en ligne n'est un scrutin secret; il n'y a aucun moyen d'éliminer la pression sociale pour voter d'une manière particulière. Un membre dominant du ménage peut intimider d'autres membres de la famille à signer, ou simplement utiliser leur adresse e-mail pour le faire lui-même.

1
Michael Kay

Vous ne pouvez pas le rendre infaillible, mais vous pouvez augmenter la quantité de paramètres à prendre en compte afin que le pourcentage maximal de triche devienne statistiquement insignifiant.

Pourtant, je vis en France, je suis allé au Pays de Galles une semaine ou deux toute ma vie, et je viens de signer la pétition en tant que londonien qui vit au 1 Jamaica St. Mon navigateur Web n'a pas la permission d'utiliser la géolocalisation mais je ne l'ai pas fait utiliser n'importe quel VPN ou proxy pour que je puisse être repéré. Avec une ou deux précautions supplémentaires, j'aurais pu être considéré comme un londonien pleinement légitime, mais je ne suis qu'un individu parmi nos espèces de trous.

La fiabilité ou non des pétitions dépend de vos considérations statistiques et de la définition de la fiabilité.

0
user2189