Je crée un site Web pour un centre de ressources sur la violence faite aux femmes. Un grand nombre de centres comme celui-ci ont ce que les centres appellent un «bouton de panique». Un exemple de base se trouve ici en haut de chaque page dans la barre verte.
L'idée du lien ou du bouton est que si une femme cherchait de l'aide sur ce site Web et que son agresseur ou quelqu'un qu'elle ne voulait pas connaître marchait dans la pièce, cela permettait une évasion rapide. Parfois, un lien est beaucoup plus rapide que la fermeture d'une fenêtre de navigateur et cela peut être suspect.
Le problème que je vois est que la plupart des boutons que je vois faire cela vous envoient simplement vers Google ou quelque chose du genre. Je vais faire quelque chose comme ça:
<a href="http://www.msn.com/#news" rel="noreferrer">LEAVE WEBSITE NOW!</a>
ou
<a href='data:text/html;charset=utf-8, <html><meta http-equiv="refresh" content="0;URL='http://www.msn.com/#news/'"></html>'>LEAVE WEBSITE NOW!</a>
Un lien comme celui-ci vous fera défiler jusqu'à un contenu réel. Ce n'est pas une recherche Google vierge, mais ce n'est pas non plus une chose très spécifique qui pourrait être considérée comme suspecte.
Je sais que bloquer le référent est une bonne chose, mais même avec cette solution, vous pouvez appuyer sur le bouton Précédent de votre navigateur et votre capture. Pour ce problème, j'ai pensé que je pouvais faire quelque chose comme ça:
HTML
<a href="javascript:goNewWin()" rel="noreferrer">LEAVE WEBSITE NOW!</A>
JavaScript
function goNewWin() {
window.open("backbuttonnewpage.html",'TheNewpop','toolbar=1,location=1,directories=1,status=1,menubar=1,scrollbars=1,resizable=1');
self.close()
}
Je poste parce qu'il y a des vies en danger avec cela et j'ai besoin de quelque chose qui soit aussi proche d'une solution totale que possible. Comment ferais-tu ceci?
MISE À JOUR - 3-26-14:
J'ai couru quelques-unes des idées éducatives affichées ici par le centre de ressources avec lequel je travaille et voici leur réponse. "Il faut un courage extrême pour que nos utilisateurs viennent même sur notre site Web. Quand ils viennent, ils recherchent une ressource rapide et facile pour se sortir d'une situation potentiellement mortelle. Ils n'auraient pas le temps ou la capacité mentale dans la plupart des cas se renseigner sur un moyen sûr de naviguer sur notre site Web. Lorsqu'on lui a présenté l'idée d'un «bouton de panique», lorsqu'il est fait correctement, cela semble être une ressource toujours demandée par la plupart des victimes que nous traitons. "
Après avoir lu beaucoup d'idées ici, il semble qu'une solution totale serait un gros bouton qui flotte dans une position constante sur le côté gauche. Lorsque la page se charge, elle charge un autre site en arrière-plan (peut-être un appel ajax) de sorte que cliquer sur le bouton supprime simplement le cadre de superposition. Cela signifie pas de temps de chargement lorsque vous cliquez dessus. Pour éviter d'appuyer sur le bouton de retour du navigateur, il semble qu'il soit nécessaire de dire au navigateur de ne pas mettre en cache et d'utiliser éventuellement à replaceState
chaque changement de page pour désactiver un bouton de retour qui révèle ce site.
C'est encore une question très technique. Le débat aide beaucoup mais j'ai encore besoin d'une solution technique fonctionnelle. Quelqu'un pense-t-il pouvoir rassembler toutes ces idées en quelque chose de fonctionnel? J'y travaillerai tout de suite moi-même et publierai tout ce que je proposerai. Merci a tous.
la source
^w
Réponses:
(PRESQUE) MODIFICATION FINALE
OK, j'ai lu tous les commentaires et c'est ce que je pense être la meilleure solution mais j'ai aussi pensé à une ALTERNATIVE TOUT-LOCAL. Je suis ouvert à d'autres améliorations / discussions
J'ai mis un exemple sur mon instance AWS à 54.186.79.95 Allez sur cette page, cliquez sur le bouton, visitez une autre page, puis répondez, vous êtes maintenant sur 54.186.79.95/decoywebsite et il n'y a aucune trace de votre présence sur 54.186.79.95 /, si le cache est désactivé, votre serveur verra la requête "../decoywebsite" et enverra une page leurre. Malheureusement, vous ne pouvez pas modifier l'intégralité du domaine, vous aurez donc besoin que le domaine ne soit pas suspect.
Si vous voulez vous débarrasser du contenu de la page, je pense que le meilleur moyen est de l'utiliser
document.body.innerHTML='';
. Vous êtes toujours techniquement sur la page mais tout le contenu a disparu.L'étape suivante consiste à modifier l'historique de votre navigateur.
window.history.replaceState
( lien vers la documentation ) est une fonctionnalité HTML5 qui peut modifier votre historique sans effectuer de rechargement de page ni de requête à votre serveur. C'est assez rapide mais ne fonctionne que sur les navigateurs modernes. Lorsque l'utilisateur cliquera sur le bouton de panique, nous remplacerons la page actuelle de son historique par une fausse URL.Si l'utilisateur abusif clique en arrière, votre serveur (Php, python, peu importe) recevra une requête avec votre fausse URL. Vous devez donc avoir un autre point de terminaison sur votre serveur (faites-moi savoir si vous ne comprenez pas les points de terminaison). Créez un article, une recette ou un bulletin météo sans intérêt avec une apparence et une sensation similaires à celles de votre site Web d'origine afin d'éviter tout soupçon si l'agresseur jetait un coup d'œil rapide sur le site Web. Assurez-vous également que le navigateur ne met pas en cache en utilisant la
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
balise.Remarque additionnelle
UNE AUTRE ALTERNATIVE: MODIFIER LOCALEMENT LES INFORMATIONS INCRIMINATIVES ET MODIFIER L'HISTORIQUE DU NAVIGATEUR
Je pensais aussi si au lieu de charger google , s'il n'est pas préférable de réellement transformer votre site localement avec des informations innocentes . Cela semble moins suspect que de charger google (tout le monde le fait) et vous pouvez tout faire localement sans recharger la page.
Lorsqu'ils cliquent sur le bouton de panique, vous effectuez une manipulation DOM rapide (et compatible avec tous les navigateurs) pour modifier les informations incriminantes sur votre site Web et lui donner un aspect innocent (peut-être simplement changer le texte, cela doit être rapide). De cette façon, tout est fait localement, ce qui, dans la grande majorité des navigateurs, est aujourd'hui presque instantané. Vous n'avez pas à vous soucier du rechargement / des serveurs car les scripts devraient déjà être chargés et prêts à l'emploi. Si vous gardez le même aspect et la même sensation, il semble que l'utilisateur naviguait simplement vers une autre page du site Web. N'indiquez pas trop clairement à l'apparence de votre site Web qu'il s'agit d'un site Web de crise. Bien sûr, vous empêchez de revenir au contenu d'origine. Je voudrais également préciser sur le bouton de panique quelle est la stratégie pour que l'utilisateur ne panique pas.
J'essaierais toujours de changer l'historique du navigateur et d'acheter un autre domaine qui héberge une copie de la page leurre, comme dans l'exemple précédent. Non seulement si le nom de domaine est suspect, mais au cas où l'utilisateur abusif frappe, actualisez ou retourne dans son histoire. Vous devriez faire de votre site Web entier un SPA, car vous ne pouvez modifier que votre entrée actuelle, pas votre historique. Bien sûr, cela ne fonctionnerait toujours que dans les navigateurs HTML5, assurez-vous simplement qu'aucune erreur n'est générée et que l'autre partie des scripts fonctionne toujours dans les anciens navigateurs.
Que pensent les gens? des faiblesses à cela? Quel serait le bon contenu à remplacer?
la source
curl -v http://example.org/#/foo
RFC 3986 "... l'identifiant de fragment est séparé du reste de l'URI avant une déréférence, et ainsi les informations d'identification dans le fragment lui-même sont déréférencées uniquement par l'agent utilisateur. .. "#
) et donc de faire voir les fragments à votre serveur. Certains frameworks JS le font hors de la boîte. Je ne suis pas familier avecwindow.history
une solution JS pure, mais tout le monde est le bienvenu pour modifier mon message. L'application actuelle sur laquelle je travaille (Angular + Express) fonctionne comme ceci: le serveur ne voit pas quand je navigue dans mon application mais si j'actualise ou quitte et répond, mon serveur verra une demande complète.Puisque vous avez dit que des vies sont en danger dans votre implémentation, je suggère fortement d'éduquer les utilisateurs à utiliser plusieurs onglets au lieu de cliquer sur certains boutons de panique.
Mes raisons étant
Si vous allez charger des ressources distantes, je vous suggère d'insérer un div avec z-index: -1 et un contenu Web factice. Au clic, déplacez leur z-index plus haut pour tout chevaucher à l'écran.
Donc, si nous supposons que vous chargez une ressource distante et avec toutes les variables inconnues, nous pouvons supposer que le temps pris est -> 0,5 - 10 secondes
Si vous allez écrire un programme qui pourrait tuer quelqu'un, je vous suggère fortement de ne pas prendre le risque de faire quelque chose qui pourrait prendre 2 à 12 secondes pour le sauver.
Éduquez vos utilisateurs en mettant une bannière avec des instructions
Si vous avez toute l'idée, appuyez sur ctrl + w par rapport à votre solution prévue, je peux certainement vous garantir que ce Ctrl+Wsera plus rapide.
la source
Cette réponse suppose que l'historique et la barre d'adresses ne sont pas un problème. Du moins, pas immédiatement.
Scénario
Julie est victime de violence conjugale. Elle est sur Internet à la recherche d'aide et elle vient sur votre site Web: http://www.crisisprevention.com (fictif pour cette réponse)
En parcourant votre site, elle entend son conjoint s'approcher rapidement de la pièce. Elle panique. Heureusement, vous avez un joli gros bouton, fixé à la page pendant qu'elle défile.
Elle clique sur ce bouton et ...
Cela l'emmène sur Google.com
Je n'aime pas cette approche pour la raison suivante: personne ne va croire que vous êtes simplement assis devant votre ordinateur à regarder l'invite de recherche Google. Crois moi. Je l'ai déjà essayé.
J'avais l'habitude de garder un onglet ouvert avec l'invite Google, et si je naviguais hors du sujet au travail, je passais à l'onglet Google pour que personne ne soit plus sage. Cela a fonctionné ... en quelque sorte. Jusqu'à ce que les gens commencent à se demander pourquoi je regardais l'écran de recherche Google toute la journée.
Depuis, j'ai commencé à ouvrir un onglet avec divers projets de travail dans différents états. Habituellement, je travaille de toute façon entre la navigation. Donc, maintenant, je fais du travail! Il ne faut pas un génie de la technologie pour comprendre cette approche, c'est pourquoi la réponse de @ LeeGary est peut-être la meilleure.
Ça la prend ... ça la prend encore ... oh problèmes de connexion Internet
Voici une réalité à laquelle vous devez vous préparer. Peut-être que la connexion Internet est interrompue au moment où elle panique. Le contenu actuel reste affiché sur la page pendant qu'elle attend la requête HTTP GET pour obtenir le contenu dont elle peut commencer le rendu ... seulement, aucun contenu n'est en cours de récupération. La connexion Internet est déconnectée. Cela peut se produire pour un certain nombre de raisons:
Les raisons continuent et pourquoi le navigateur peut s'étouffer lorsqu'elle appuie sur le bouton de panique et tente de la déplacer vers un nouveau site.
Servir un site Web alternatif instantanément
Ma solution vous propose de précharger un site web en arrière-plan de votre site. Chargez-le dans un
<div>
et cachez-le derrière votre site normal. Si c'est un gros morceau de contenu, vous pouvez envisager de le cacher avecz-index
au lieu dedisplay: none
. De cette façon, il sera pré-rendu ( je crois, pourrait être faux ici ).Maintenant, peu importe si sa connexion Internet est coupée. Elle a déjà le contenu. Il n'y a pas de latence impliquée avec une requête HTTP GET. Il s'affiche simplement immédiatement.
Si la barre d'adresse est un problème, vous pourrez peut-être encore l'atténuer en proposant un site Web alternatif qui correspond à votre domaine.
Par exemple, prenez le domaine fictif (pour cette réponse): http://www.crisisprevention.com
Vous pourriez servir un article alternatif sur la résolution de la crise de la faim dans le monde.
L'idée ici est que c'est le premier coup d'œil initial qui est le plus accablant. Lorsque le conjoint entre et qu'il la voit se diriger vers Google.com, avec ce regard paniqué à son sujet, il va soupçonner que quelque chose se passe et être plus enclin à enquêter. De même, cela pourrait être encore pire si elle était prise en train d'essayer de cacher ses actions parce que la requête HTTP GET était lente ou échouait.
la source
Il y a de gros problèmes avec le bouton panique:
Et que dire des mouvements aléatoires paniqués d'une femme qui essaie de cliquer rapidement sur ce bouton, alors qu'elle lisait ceci. Et si elle manquait le bouton dès la première tentative?
Donc, s'il y a vraiment des vies humaines qui pourraient être sauvées, c'est une sorte de mauvaise idée.
La meilleure façon est de leur montrer la manière normale de le faire (via une sorte d'aide avant de pouvoir éventuellement accéder à ce site). Cela peut être quelque chose comme ceci:
En fonction du navigateur d'un utilisateur, vous leur donnez une liste d'étapes à faire qui n'utilisent que le clavier (pas de souris du tout). Par exemple si elle est sur chrome.
Vous devez sûrement modifier votre explication dans la langue appropriée. Mais de cette façon, il est vraiment difficile de se faire prendre. Parlez également de vous asseoir à côté de miroirs et d'autres surfaces de réflexion comme des fenêtres, des lunettes et d'autres choses. Demandez-leur d'essayer d'utiliser ces combinaisons pendant un certain temps pour se familiariser.
Si des vies humaines sont impliquées, vous devez être professionnel et ne pas utiliser ces boutons de panique. Surtout s'il est si facile d'enseigner aux gens comment le faire plus rapidement et plus en toute sécurité.
Réponse à Nobius
Je vous ai fait remarquer, merci. Mais je ne suis pas d'accord avec votre argument. Après une longue campagne pour qu'il soit mis sur FB, l'avez-vous réellement vu sur FB? Je n'ai pas. Les non-techniciens sont connus pour avoir proposé des idées ridiculement mauvaises, dont certaines pourraient être éprouvées (empêcher le clic droit sur les pages des banques pour améliorer la sécurité, les mots de passe à 4 chiffres pour être plus faciles à taper à partir des téléphones mobiles). Appuyer sur un bouton semble plus facile, mais regardez ma liste d'étapes - la seule chose que vous devez faire dans une situation stressante est d'appuyer sur CTRL + W. Vous n'avez pas besoin de penser en termes d'onglets, de modes et autres. Cela revient au modèle de base - voir quelqu'un, appuyez sur CTRL + W. À mon avis, ce n'est pas du tout difficile et facile à retenir. Il n'est de loin pas plus difficile que de se rappeler de cliquer sur le bouton. Tout le reste, vous devez lire dans une atmosphère normale.
Appuyer sur 2 boutons est BEAUCOUP plus rapide que déplacer la souris, et il est vraiment difficile de les rater lorsque vos doigts sont dessus (faites une expérience et mettez-vous en pleine situation de stress et essayez de cliquer rapidement sur ce bouton). Aussi, comme je l'ai mentionné - je vois au moins quatre raisons pour lesquelles quelque chose peut mal tourner dans une
panic button
situation, alors que je vois beaucoup moins dans les raisons dans CRTL + W. Si des vies humaines sont impliquées, vous devez être professionnel.Réponse à NicolasMoise . Pourquoi les gens continuent de dire que vous devez être doué pour la technologie pour appuyer sur CTRL + W? Je n'essaye pas de montrer aux gens comment utiliser TOR, VPN, configurer un canal de cryptage. C'est juste CTRL + W. Les gens ont appris à jouer aux oiseaux en colère pour perdre leur temps (ce qui est beaucoup plus difficile que de se souvenir de 2 boutons), afin que les gens puissent apprendre CRTL + W pour sauver leur vie. Le tutoriel peut être montré de telle manière que l'observateur ne puisse pas comprendre pourquoi vous lisez ceci (quand vous voyez ma liste d'étapes, je ne crois pas que la première hypothèse serait - ah c'est pour le site d'abus de femmes).
Mais il est très probablement préférable de donner aux gens une fausse sécurité. La réponse n'est pas hors sujet. La personne demande comment mettre en œuvre le bouton de panique - et j'explique pourquoi la méthode actuelle est défectueuse et que peut-elle faire pour mieux le faire. C'est au même niveau que «Je veux sécuriser la communication et j'utilise un chiffrement de substitution», oui vous pouvez améliorer la vitesse de son chiffrement et faire semblant que tout va bien, ou vous pouvez montrer une autre façon.
Une dernière tentative pour expliquer mon point supplémentaire : vous devez bien expliquer aux gens les risques derrière votre approche. Le problème des blogueurs biélorusses, qui pensaient que publier de manière anonyme sur Internet les rendrait introuvables à cause des répressions gouvernementales, est un bon exemple lorsque les gens souffrent de ne pas expliquer correctement les problèmes. La ressource leur a fait croire à tort qu'ils sont sauvés s'ils ne fournissent pas leur véritable identité. Ils ont appris que ce n'est pas vrai à la dure (lorsqu'ils ont été emprisonnés pendant quelques années).
Si quelqu'un leur expliquait le risque, je pense que certains d'entre eux seraient heureux d'apprendre à utiliser n'importe quel outil pour sauver leurs cinq prochaines années.
Alors pourquoi ne pas donner aux femmes quelques options:
Et laissez-les décider de ce qu'ils veulent faire. De cette façon, ils connaissent les risques.
la source
Je pense que vous avez encore un long chemin à parcourir.
La raison d’envoyer des personnes sur la page Google est
Le lien que vous avez fourni est lent.
Si vous souhaitez fournir un moyen rapide de changer d'écran, ouvrez votre site dans un jeu de cadres - avec la cape dans un cadre de hauteur 0 et votre site dans un cadre de pleine hauteur. Ensuite, lorsque l'utilisateur clique sur le lien, permutez autour des hauteurs du cadre et redirigez vers la fenêtre de niveau supérieur vers la page déjà chargée.
la source
J'étends un peu la portée de la question, car cliquer sur le bouton de panique garantit que l'utilisateur ne sera pas attrapé.
Il y a de multiples préoccupations dans ce problème qui doivent être émises en fonction du risque et du degré de maîtrise du calcul de l'utilisateur.
En tant que tel, il peut être judicieux de donner à l'utilisateur des connaissances de base en matière de sécurité de la manière la plus conviviale possible. Même si l'utilisateur est soumis à un stress élevé, il est préférable qu'il sache quelles traces il peut laisser derrière lui.
Traces
Historique de navigation
A tout moment que l'utilisateur utilise votre site web sans navigation privée, il laissera des traces très évidentes. Il n'y a pas de moyen approprié de détecter si le navigateur est en cours d'exécution en mode privé, mais vous pouvez avoir un avertissement à l'entrée indiquant qu'il devrait passer en mode privé, ainsi que la suppression de l'historique d'entrée actuel. Vous pouvez préparer des captures d'écran pour que l'utilisateur suive pour supprimer l'historique, (ou si disponible, ne supprimant que l'entrée sur le site)
Biscuits
Si vous utilisez des cookies, la personne suivante peut obtenir ces cookies (même s'ils sont expirés) et peut comprendre que ce site a été utilisé. Si vous le pouvez, utilisez des en-têtes personnalisés pour l'autorisation, qui ne laisseront aucune trace dans l'ordinateur.
Cela peut vous obliger à modifier la structure de l'application, ce qui n'est peut-être pas une bonne idée. Ne définissez les cookies dans le navigateur qu'après vous être assuré que l'utilisateur utilise une session de navigation privée.
Mise en cache
Une personne technophile peut détecter si le site a été visité si vous utilisez la mise en cache en ouvrant la page et en inspectant le réseau. Assurez-vous de demander explicitement au navigateur de ne pas mettre en cache en utilisant ces en-têtes dans vos réponses:
Bouton retour
Lors du changement de page, chaque page sera placée dans l'historique actuel (même dans la session de navigation privée), permettant d'utiliser le bouton retour. Si vous le pouvez, utilisez
replaceState
à chaque changement de page pour que le bouton de retour soit cassé.Chiffrement
Utilisez HTTPS pour empêcher les écoutes clandestines. Notez que les requêtes DNS ne seront toujours pas cryptées, mais je ne pense pas que ce sera un problème à moins que l'utilisateur ne divulgue des informations gouvernementales. Si tel est le cas, un site Web ne serait pas assez sûr de toute façon.
En général, ceux-ci devraient être suffisants pour supprimer les traces, assurez-vous également que vous n'utilisez pas d'autres couches de persistance comme
localStorage
.Un bouton d'alerte
C'est un problème totalement différent et nous devons inclure plusieurs choses dans notre calcul.
Tout d'abord, s'il s'agit d'un scénario potentiellement mortel, nous devons comprendre que l'utilisateur sera soumis à un stress total lorsqu'il aura besoin de lancer le
panic exit
. Nous ne savons pas comment l'écran de l'ordinateur est positionné, et nous ne pouvons pas deviner ce que fait l'utilisateur au moment de la panique.Problèmes de positionnement de l'écran
Le pire des cas serait que l'écran soit positionné de manière à ce que la menace puisse voir (de loin) l'écran et le site. Si tel est le cas, le site doit être conçu de manière à ressembler beaucoup à celui-ci
exit site
afin d'éliminer tout soupçon. Passer d'un design différent au blanc Google sera perceptible même si l'écran n'est pas directement visible en comparant simplement les couleurs que l'écran émettait entre deux sites (dans une pièce raisonnablement sombre).Vitesse de sortie
Si vous effectuez simplement une redirection, il se peut qu'elle ne soit pas assez rapide pour effectuer le changement dans le temps. Vous devez précharger le côté sortie dans une iframe, et en cas de panique, vous devez le mettre en plein écran, puis effectuer la redirection. Cela aidera à la fois à mettre en cache le contenu statique des sites de sortie et à rendre les choses plus rapides. Assurez-vous d'utiliser
replaceState
au lieu de la navigation naturelle pour désactiver le bouton de retour.Itinéraires de sortie
Vous devez vous assurer que les itinéraires de sortie seront disponibles immédiatement et facilement pour l'utilisateur. Je pense que les deux états les plus possibles sont soit l'utilisateur tape , soit l'utilisateur navigue . Ce qui signifie que vous devriez avoir à la fois un raccourci clavier pour quitter et un gros bouton dans votre HTML.
Sortie clavier
Je pense qu'en appuyant deux fois sur la touche ESC devrait le déclencher, ou en tenant l'une des grandes touches devrait (comme espace ou entrée). Dans tous les cas, vous devez en informer l'utilisateur et éventuellement, le laisser s'entraîner en essayant. Essayer les sorties de panique les aidera à anticiper les comportements de panique pour faire un bon raisonnement (avoir le comportement attendu pourrait être soulageant), et ils seront formés pour le faire, de sorte qu'ils seront plus susceptibles de le faire correctement dans la panique. temps.
Sortie de la souris
Cela va être assez simple, avoir un gros bouton de couleur différente qui déclenchera la panique.
Où sortir?
Cela dépend du cas, de par sa conception, il peut être judicieux de faire une redirection vers un site couramment utilisé et de conception similaire par défaut. Il peut également être judicieux de permettre à l'utilisateur de choisir lui-même le site de sortie (après avoir fait une valeur par défaut raisonnable).
Remarques
la source
Évasion fiable
EDIT: Une autre chose qui me vient à l'esprit est que si l'utilisateur a perdu la connectivité Internet, ce qui se produit pour toutes sortes de raisons, y compris quelqu'un qui déconnecte le câble, alors il n'y a aucun moyen de naviguer vers un autre site. Ils pourraient être coincés là comme un cerf dans les phares sur la page "incriminante". Je pense que cela ajoute de la crédibilité à l'idée de naviguer réellement vers un site partenaire / affilié bénin qui à son tour charge votre site dans un iframe directement sur leur page. Tout ce que vous avez à faire pour faire disparaître votre site est de supprimer votre iframe du DOM en utilisant le JavaScript déjà chargé dans l'iframe. Cela fonctionnerait même si la connexion Internet était coupée.
J'activerais la touche Échap pour une sortie rapide. C'est une touche physique bien connue du clavier sur laquelle l'utilisateur peut se faufiler s'il en a besoin, plutôt que de déplacer un pointeur de souris capricieux sur un bouton virtuel et de cliquer.
EDIT: Je viens de réaliser qu'une affiche plus tôt fait mention sur la touche Echap, se référant à lui comme « ESC ». J'ai cherché sur la page "Clé d'échappement" avant d'écrire ma réponse, mais je l'ai ratée.
EDIT: Je laisserais aussi le bouton Panic sur la page, avec le texte "Cliquez ici ou APPUYEZ SUR ÉCHAPPEMENT pour quitter rapidement." Mais j'en mettrais un en haut et un en bas de page. Peut-être que je mettrais une bande tout autour de la page. Si le visiteur clique n'importe où dans cette zone de bordure, votre contenu disparaît.
Considérez également; pour rendre le bouton de panique raisonnablement facile à cliquer dans une situation de panique, vous devrez probablement le rendre un peu surdimensionné et vous assurer qu'il est toujours à l'écran en le déplaçant au fur et à mesure que la page défile, ou en mettant plusieurs boutons de panique sur le page, qui pourrait sembler suspecte en soi. Il semble que ceux-ci veulent probablement être des pages assez discrètes dont vous parlez.
Si vous utilisez jQuery, vous pouvez faire quelque chose comme ce qui suit pour répondre à la touche Échap:
Application AJAX à page unique
Il semble que toutes les solutions suggérées consistent à trouver un moyen de naviguer rapidement vers un autre site, soit en le préchargeant et en l'affichant rapidement au-dessus de votre site, soit en effaçant le DOM puis en naviguant, ou peu importe.
Si je devais adopter cette approche, j'aurais une longue liste de sites universellement bénins et de recherches sur les moteurs de recherche que je parcourirais pour que ce ne soit pas la même «recherche de chaussures pour femmes noires» qui apparaisse à chaque fois.
Mais qu'en est-il de renverser tout le concept? Utiliser un ou plusieurs sites leurres bénins, ou même solliciter des sites commerciaux bénins non liés pour héberger un lien d'apparence bénigne, et charger votre site en tant qu'application AJAX d'une seule page dans un iframe en haut de la ou des page (s) hôte (s)?
EDIT: Vous pouvez même le faire en demandant à votre page d'accueil d'indiquer brièvement qu'elle va rediriger le visiteur vers un site partenaire coopératif pour sa propre sécurité et d'afficher un gros bouton "Go" convivial. Si vous avez plusieurs sites partenaires sur lesquels vous pouvez les pousser, tant mieux. Lorsqu'ils cliquent, effacez l'historique du navigateur de votre page, redirigez vers le site affilié avec un paramètre de requête d'URL qui indique à votre JavaScript de démarrage chez l'affilié de charger immédiatement votre iframe. À partir de là, il n'y a plus de charge supplémentaire sur le serveur Web de l'affilié. De cette façon, vous avez une page d'accueil officielle, mais vous obtenez immédiatement le visiteur complètement hors de votre page.
Appuyer sur la touche Échap ou cliquer sur le bouton Panic supprimerait simplement votre iframe du DOM, laissant la page hôte bénigne et aucun historique du navigateur. (Pouf)
Vous pourriez atténuer les problèmes d'historique du navigateur de cette façon, car votre lien exécuterait un peu de code JavaScript de démarrage et vous ne navigueriez jamais du tout dans le navigateur vers votre site.
Lorsque le lien d'amorçage dans la page hôte est cliqué, il insère un iframe dans le DOM, le fait flotter (positionnement absolu et ordre z) pour le positionner en haut de la page hôte, puis effectue un appel AJAX à votre service Web pour récupérer le contenu HTML qu'il chargerait dans le cadre. Tous les liens et / ou boutons supplémentaires dans le cadre feraient également des appels AJAX à votre service, que ce soit pour publier des données sur le serveur ou pour récupérer des données à afficher. Vous ne chargeriez jamais du tout une "page" réelle dans le navigateur de l'utilisateur.
Un autre aspect intéressant de cette approche est que si le navigateur se bloque ou devient instable et doit être fermé à partir du Gestionnaire des tâches, ce qui empêcherait le code de nettoyage de s'exécuter, eh bien cela n'aura pas d'importance car vous n'avez (nécessairement) rien. nettoyer.
Houston ...?
Quelques problèmes graves que je vois avec l' une de ces solutions, en particulier compte tenu du contexte dans lequel la vie peut être en jeu:
objets mis en cache (images, principalement) dans le cache du navigateur
le routeur / pare-feu enregistre peut-être les requêtes HTTP / HTTPS, et la victime peut ne pas le savoir, et rien de ce que vous faites pour nettoyer le navigateur ne pourra atténuer cela
il peut y avoir un logiciel espion keylogging / screencap installé sur la machine de l'utilisateur et rien de ce que vous pouvez faire à partir d'une application de navigateur ne peut atténuer cela
les ordinateurs tombent en panne, les navigateurs Web deviennent floconneux et plantent et des traces sont laissées parce que le code de nettoyage ne peut pas s'exécuter.
Comme suggéré par au moins une autre affiche (honnêtement, je n'ai parcouru que brièvement les autres messages), l'utilisation de navigateurs en mode sécurisé devrait atténuer bon nombre de ces scénarios. Mais c'est un problème de formation des utilisateurs et la formation des utilisateurs peut être un peu folle dans les meilleures conditions. Il pourrait être très difficile de faire les choses correctement si les victimes ne sont pas très douées pour la technologie, surtout si elles sont vraiment dans une situation de mode panique où une réflexion calme peut être difficile.
la source
Vous pouvez jeter un œil aux boutons de panique "Boss" sur certains anciens jeux et sites. L'idée est que vous pourriez passer rapidement à quelque chose d'innocent si votre patron venait (bien sûr, vous devez le voir approcher en premier!).
Presque toute action précipitée / frénétique lorsque l'agresseur arrive va éveiller leurs soupçons. Envisagez de concevoir les écrans de manière à ce qu'ils ressemblent à des informations générales ou similaires (à distance), sans grands titres ou images révélant leur objectif. Cela pourrait souvent laisser le temps de sortir "tranquillement" du site, sans panique. Si le lien du bouton de panique amène l'utilisateur vers, par exemple, un site d'actualités de bonne foi, tant mieux (s'il apparaît assez rapidement).
Comme d'autres l'ont mentionné, si l'agresseur devient suspect (et de nombreux maniaques du contrôle le sont), il y a toujours une piste d'historique sur le navigateur qui leur permet de savoir rapidement où se trouve l'utilisateur. Franchement, vous ne pouvez pas faire grand chose, surtout si l'utilisateur entre dans un mode panique frénétique essayant de couvrir ses traces, et l'agresseur le voit. Même si l'écran lui-même peut être actualisé à quelque chose d'innocent après un certain délai, l'historique du navigateur aura l'URL.
Envisagez de conseiller aux utilisateurs de positionner l'ordinateur de sorte que l'agresseur ne puisse pas se faufiler dessus par derrière, ou d'aller dans une bibliothèque ou tout autre endroit non privé pour utiliser ce site. Si le contenu de l'écran est terne à distance (voir ci-dessus), il ne devrait pas susciter l'intérêt des autres.
Bonne chance!
la source
Vous pouvez afficher une page d'erreur au lieu d'un site réel, qui est déjà chargé en arrière-plan. Peut-être une fausse page youtube ou google 404? Je pense que cela réduirait au minimum la taille du contenu supplémentaire.
Comme d'autres l'ont suggéré, j'utiliserais également la touche d'échappement. Réduit le changement de manquer, serait beaucoup plus facile pour quelqu'un avec un tapis de souris et l'utilisateur peut garder son doigt dessus quand il / elle ne fait que naviguer sur le site.
Vous pouvez également utiliser d'autres options; un bouton sur la page elle-même ou leur faire connaître d'autres méthodes d'échappement (ctrl + w, comme mentionné précédemment). Peut-être aussi un geste pour les utilisateurs de la tablette? Il existe probablement des bibliothèques pour cela.
Et bien sûr, vous pouvez modifier l'URL dans la barre des tâches. (Voir d'autres articles pour le code sur la façon de faire cela).
Encouragez-les à essayer les options d'évasion. Ils savent donc ce qu'ils font et comment ils peuvent y réagir.
la source
Je pense que nous pouvons faire cela différemment. Mon idée est la suivante:
la source