Extension:QuestyCaptcha
QuestyCaptcha État de la version : stable |
|
---|---|
Implémentation | Action de page |
Description | Ajoute un CAPTCHA basé sur une question. |
Auteur(s) | Emufarmers |
MediaWiki | 1.43+ |
Licence | Licence publique générale GNU v2.0 ou supérieur |
Téléchargement | |
skipcaptcha |
|
Utilisé par les wikis publics | 1,332 (Ranked 210th) |
Traduire l’extension QuestyCaptcha sur translatewiki.net si elle y est disponible | |
QuestyCaptcha est un greffon pour l'extension ConfirmEdit .
Au lieu d'utiliser un problème mathématique (trivialement résolu) ou une image (voir ci-dessous), QuestyCaptcha oblige les utilisateurs à répondre à une question.
Le propriétaire du site ajoute les questions (avec leur réponse) dans LocalSettings.php
, et l'extension vient les chercher de manière aléatoire.
Installation
Le processus d'installation est très similaire à celui de ConfirmEdit.
- Téléchargez l'instantané pour votre version et décompressez-le
- Créez un répertoire ConfirmEdit dans le répertoire des extensions
- Téléversez les fichiers dans le répertoire
extensions/ConfirmEdit/
- Modifiez
LocalSettings.php
à la racine de votre installation MediaWiki, et ajoutez les lignes suivantes en fin de fichier :
wfLoadExtensions([ 'ConfirmEdit' ]);
wfLoadExtensions([ 'ConfirmEdit/QuestyCaptcha' ]);
...
- Vous pouvez aussi configurer les déclencheurs de ConfirmEdit et d'autres options, si le Captcha n'apparaît pas ajoutez ceci après le code. Cela signifie que le Captcha est déclenché c'est à dire qu'il s'affiche si vous faites l'action spécifiée telle que la mise à jour ou la création d'une page. Vous pouvez écrire
true
pour qu'il n'apparaîsse pas.
$wgMainCacheType = CACHE_ANYTHING; $wgCaptchaTriggers['edit'] = true; $wgCaptchaTriggers['create'] = true; $wgCaptchaTriggers['addurl'] = true; $wgCaptchaTriggers['createaccount'] = true; $wgCaptchaTriggers['badlogin'] = true;
Ce conseil est extrait de cette page.
Faiblesses
Les CAPTCHA basés sur les images présentent quelques failles. Les robots qui utilisent la reconnaissance optique des caractères (Optical Character Recognition) peuvent forcer les Captcha, et la seule défense est de faire des images plus difficiles à lire par les humains et les machines. Les algorithmes OCR sont en constante évolution et les ordinateurs en viendront même à résoudre les CAPTCHA d'une façon meilleure que les humains. En attendant, les spammeurs peuvent payer des travailleurs dans les pays en développement pour résoudre les CAPTCHA ou inciter les internautes ordinaires à les résoudre. Les CAPTCHA basés sur les calculs mathématiques sont si évidents qu'ils sont résolus par les robots spammeurs automatisés pour des raisons évidentes.
Un CAPTCHA basé sur une question n'est pas attaquable par OCR. Les humains peuvent toujours être payés pour les résoudre, mais une question peut être sensible au contexte : si une question vous demande quelle plante MediaWiki utilise pour son logo, la réponse ne sera pas évidente à moins que vous ne soyez sur mediawiki.org.
Si votre wiki contient un contenu controversé ou aurait tendance à être la cible de l'animosité des autres, QuestyCaptcha n'est peut-être pas le meilleur Captcha pour vous, car les vandales peuvent simplement résoudre tous les captchas et les charger dans un robot vandaliseur. QuestyCaptcha n'est pas conçu pour écarter les vandales déterminés.
D’un autre côté, étant donné que la base de données de questions utilisée par un site particulier est petite, il est simple pour un humain de répondre à toutes les questions d’un site donné et de stocker leur réponse. Même pour les attaquants qui s'en prennent à un grand nombre de sites, ils n’ont besoin d’effectuer qu’une petite quantité de travail manuel par site, et il est également possible pour les spammeurs de récupérer les questions et les réponses de divers sites Web afin de les réutiliser pour forcer les CAPTCHA. En ce sens, il est inférieur à d'autres CAPTCHA qui produisent un puzzle unique pour chaque utilisateur. Pratiquement il faut le dire, si vous exécutez un petit site, impopulaire de surcroit, il y a généralement peu de chances que les spammeurs s'acharnent à forcer votre QuestyCaptcha.
En choisissant votre question, faites attention aux biais culturels. Par exemple une série télé aux USA peut ne pas être familière aux contributeurs du Brésil, et parallèlement un américain n'est pas censé connaitre le premier ministre d'Australie. Cantonnez-vous aux questions de culture générale ou relatives à la connaissance représentée par le sujet du wiki.
Vous pouvez aussi demander des questions-réponses aux utilisateurs de votre wiki. Si vous le faites sur le wiki, vous souhaiterez peut-être ensuite supprimer la page contenant les questions et les réponses, ou au moins effacer cette partie de la page afin que les attaquants ne puissent pas la retrouver en recherchant sur Google ou en utilisant Special:Search sur votre wiki pour trouver les questions. Notez bien que l'obscurcissement basé sur les modèles va vous protéger des utilisateurs Google mais pas de Special:Search, qui recherche dans le wikicode brut.
Installer les questions / réponses
Les réponses ne sont pas sensibles à a casse, et vous pouvez ajouter plusieurs réponses à une même question en les plaçant dans un tableau. Les réponses sont écrites en minuscules :
$wgCaptchaQuestions = [
"What is one color on this web page?" => [ 'red', 'green', 'blue', 'white', 'black' ],
];
CSS
Il est facile de passer à côté de la « question » QuestyCaptcha sur la page Special:CreateAccount. Les nouveaux venus peuvent échouer facilement à la question parce qu'ils ne l'ont même pas remarquée. Le texte et l’arrière-plan de la question sont identiques au texte et à l’arrière-plan adjacents et sont faciles à ignorer.
Si les responsables pouvaient corriger ce problème, de sorte que sur la page spéciale de Création de compte, la question ressorte en texte vert gras avec un aperçu ou quelque chose du genre, cela aiderait les utilisateurs.
Vous pouvez utiliser le MediaWiki:Common.css de votre wiki pour mettre en forme la question du QuestyCaptcha de sorte à ce qu'elle apparaisse mieux visuellement.
Il faut d'abord définir $wgAllowSiteCSSOnRestrictedPages à true
, car Common.css est désactivé par défaut sur la page de création de compte par mesure de sécurité.
Pour l'activer, ajoutez ceci à LocalSettings :
$wgAllowSiteCSSOnRestrictedPages = true; //la valeur par défaut est false
$wgUseSiteCss devra aussi valoir true
, qui est également la valeur par défaut (sauf si elle a été changée depuis) :
$wgUseSiteCss = true; //la valeur par défaut est true
Ce CSS (testé dans MediaWiki 1.31.1) avec Common.css affiche en rouge la question du QuestyCaptcha sur la page Création de compte, ce qui est difficile à ignorer :
/* QuestyCaptcha de ConfirmEdit -- sur création de compte */
.htmlform-tip + .mw-htmlform-field-HTMLInfoField { color:red; }
Ce CSS affiche « question » sur la page « Modifier » de la même façon que lors de l'ajout d'une URL : en italiques, vert, gras et plus gros :
/* QuestyCaptcha de ConfirmEdit -- sur modification de page et ajout d'URL */
label[for=wpCaptchaWord] {
color:green;
font-weight:bold;
font-size:150%;
font-style:italic;
}
Liens externes
- Arrêter le spam de MediaWiki avec les Captchas Dynamiques Questy, billet de Jamie Thingelstad .
- Captchas dynamiques Questy mis à jour, billet de Jamie Thingelstad.