危机/滥用网站中紧急按钮的最快退出策略?[关闭]


122

我正在为一个女性虐待资源中心建立一个网站。许多这样的中心都具有被中心称为“紧急按钮”的功能。一个基本的的例子被发现这里在每个页面中的绿条的顶部。

链接或按钮的想法是,如果妇女正在浏览此网站寻求帮助,而他们的施虐者或不想与之交往的人走进了房间,则可以快速逃脱。有时,链接比关闭浏览器窗口快得多,这可能是可疑的。

我看到的问题是,我看到的大多数按钮只会将您发送至google或类似的网站。我将要做这样的事情:

<a href="http://www.msn.com/#news" rel="noreferrer">LEAVE WEBSITE NOW!</a>

要么

<a href='data:text/html;charset=utf-8, <html><meta http-equiv="refresh" content="0;URL=&#39;http://www.msn.com/#news/&#39;"></html>'>LEAVE WEBSITE NOW!</a>

这样的链接会将您滚动到一些实际内容。它不是空白的Google搜索,但也不是很具体的东西,可以视为可疑。

我知道屏蔽引荐来源网址是很好的方法,但是即使有了该解决方案,您也可以在浏览器上单击“后退”按钮,然后将其捕获。对于这个问题,我认为我可以这样做:

的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()
}

我发布这个消息是因为这样做有生命危险,我需要尽可能接近整体解决方案的东西。你会怎么做?

 

UPDATE-3-26-14:
我运行了一些与我合作的资源中心在此处发布的教育思想,这是他们的答案。“我们的用户甚至进入我们的网站都需要极大的勇气。当他们进入我们的网站时,他们正在寻找一种快速,便捷的资源来摆脱可能危及生命的情况。在大多数情况下,他们没有时间或精力来对他们进行安全的教育以浏览我们的网站。当出现“紧急按钮”的想法时,如果做得好,似乎是我们所治疗的大多数受害者一直要求的资源。”

在阅读了很多想法之后,似乎总的解决方案是将一个大按钮悬浮在左侧的恒定位置。页面加载时,它会在后台加载另一个站点(可能是ajax调用),因此单击按钮仅会删除覆盖框架。单击将意味着没有加载时间。为了避免按下浏览器上的后退按钮,似乎有必要告诉浏览器不要缓存,以及可能replaceState在每次页面更改时都禁用显示该站点的后退按钮。

这仍然是一个技术问题。辩论很有帮助,但我仍然需要有效的技术解决方案。任何人都认为他们能够将所有这些想法整合到某种功能上吗?病态的我自己马上进行研究,并将发布我提出的任何内容。谢谢大家


39
当链接被单击时,我将先清除或遮盖当前页面(使用javascript)(因为链接可能需要一些时间...)
Cameron

8
有趣的是,在链接页面中,iPad上似乎无法访问“单击此处快速离开”链接,但被社交媒体按钮遮盖了 ……关于我最近历史上最糟糕的UX决定:/
大卫说,恢复莫妮卡

6
与David Thomas商定是否使用Google的默认设置-在我家中使用MSN本身会令人怀疑。
Stephen P

6
您的实际问题是什么?
Petah 2014年

15
将按钮放在顶部似乎很糟糕。想想费茨定律!您有一条必须有人打的细条,如果他们超调,他们将不会被击中。荒谬。将其放在左侧,大多数用户都可以利用有效的无限大小。(右边可能是某些显示器上的滚动条,底部是默认任务栏,顶部是默认选项卡栏。任何精明的人都可以更改这些默认值,可能知道^w
Phoshi 2014年

Answers:


37

(ALMOST)最终编辑

好的,我已经阅读了所有评论,这是我认为是最好的解决方案,但是我也想到了全本地替代方案。我愿意进一步改进/讨论

var panic= function(){
    document.body.innerHTML = '';
       //this clears the current html in the body 
       //making it look like the page is loading
    
    if(...){ //check if replaceState is supported so no error is thrown
        var title="Decoy Article Title",
        url="/decoypage"; //another endpoint on your server that gives the decoy website
        window.history.replaceState("", title , url); //replace current history entry
    }

    //should be pretty fast up to this point
    window.location.replace("http://www.google.com"); //load the google page or my alternative.
}

我将示例放在54.186.79.95的AWS实例上,转到该页面,单击按钮,访问另一页面,然后回击,您现在位于54.186.79.95/decoywebsite上,而您在54.186.79.95上没有记录/,如果禁用了缓存,则您的服务器将看到“ ../decoywebsite”请求并发送一个诱饵页面。不幸的是,您无法修改整个域,因此您需要该域不可疑。

如果您想摆脱页面内容,我相信最好的方法是使用document.body.innerHTML='';。从技术上讲您仍然在页面上,但所有内容均已消失。

下一步是修改您的浏览器历史记录。window.history.replaceState链接到文档)是HTML5的一项功能,可以修改您的历史记录而无需重新加载页面或请求服务器。它的速度非常快,但仅适用于现代浏览器。当用户单击紧急按钮时,我们将用伪造的URL替换其历史记录中的当前页面。

如果滥用用户单击,您的服务器(Php,python等)将收到带有伪造URL的请求。因此,您需要在服务器中拥有另一个端点(如果您不了解端点,请告诉我)。制作与您的原始网站外观相似的良性文章,食谱或天气报告,以免在滥用者快速浏览该网站时引起怀疑。另外,请使用<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">标签确保浏览器不会缓存。

附加说明

  • 理想情况下,您的整个网站(当然还有诱饵文章除外)都应该是SPA(单页应用程序),这样它才只会生成一个浏览器历史记录,而您只需要修改该记录即可。
  • 归根结底,我认为您无法制造出100%万无一失的应急按钮,总有办法解决。您只需要找到具有可接受水平的安全性和便利性的服务器即可。

另一种选择:局部更改原始信息并修改浏览器历史记录

我还在考虑是否最好不要在本地加载带有无害信息的Google网站而不是加载google。这看起来比加载google(每个人都这样做)的可疑性小,您可以在本地完成所有操作而无需重新加载页面。

当他们单击紧急按钮时,您需要进行一些快速(且与跨浏览器兼容的)DOM操作,以更改您网站上的犯罪信息并使它看起来无害(也许只是更改文本,它必须很快)。这样,所有操作都在本地完成,在当今的绝大多数浏览器中,这些操作几乎都是即时的。您不必担心重新加载/服务器,因为脚本应该已经加载并可以使用了。如果您保持相同的外观,则感觉用户只是在导航到网站的其他页面。从网站的外观上不要太明显,这是一个危机网站。当然,您将无法导航回原始内容。我还要在紧急按钮上清楚说明该策略是什么,以便用户不会害怕。

我仍将尝试更改浏览器的历史记录,并购买另一个托管诱饵页面副本的域,如上例所示。不仅在域名可疑时,而且在滥用用户点击刷新或返回其历史记录的情况下。您应该将整个网站设置为SPA,因为您只能修改当前条目,而不能修改过去的历史记录。当然,这仅在HTML5浏览器中仍然有效,只要确保没有引发任何错误并且脚本的其他部分仍在旧浏览器中运行即可。

人们怎么看?有什么弱点吗?有什么好内容可以替换?


10
Angular / Backbone不会做您本机JS无法做的任何事情。
Frambot 2014年

建议的编辑:您应该阐明#foo ref / fragment没有发送到服务器。您可以通过检查使用cURL发送的内容来证明这一点:curl -v http://example.org/#/foo RFC 3986 “ ...在取消引用之前,片段标识符与URI的其余部分是分开的,因此片段本身内的标识信息仅由用户代理来取消引用。 ..”
乔·利弗塞奇

1
@JoeLiversedge是的,您可能是对的。但是,有可能摆脱hashbang(#),从而让服务器看到这些片段。一些JS框架开箱即用。我对window.history纯JS解决方案并不熟悉,但是欢迎任何人编辑我的文章。我正在使用的当前应用程序(Angular + Express)的工作方式如下:当我在应用程序中导航时,服务器看不到,但是如果刷新或退出并回击,服务器将看到完整的请求。
NicolasMoise 2014年

在这种情况下,我认为您不应该使用框架,因为您希望退出脚本尽可能轻巧(不需要DOM操作,只需在没有hashbang的情况下推送状态就可以退出)
NicolasMoise 2014年

2
我确实喜欢可以自动隐藏历史记录的想法,但是您不能确定用户使用的是兼容HTML5的浏览器。如果他们不是精通技术的人,他们可能不会。
暗恋

28

既然您说实施过程中存在生命危险,所以我强烈建议教育用户使用多个选项卡,而不是单击一些紧急按钮。

我的理由是

  1. 在“紧急情况”下,用户将手移到鼠标上需要花费多长时间(假设他们抬起手来打字或触摸头发或想要做的事情),我们假设它花了-> 0.5秒
  2. 在您的示例站点中,绿色条实际上很小,坦率地说,并不是每个人的手,眼协调都非常准确(此外,操作系统和用户配置文件之间的鼠标光标加速度可能有所不同),用户必须移动鼠标单击“ Panic”按钮,然后单击,除非他们是专业的FPS游戏玩家,否则很可能还需要他们-> 1-2秒
  3. 我最后一个可变的假设是,如果您的脚本涉及加载远程资源(例如www.google.com),则可以通过假设浏览器为
    • 现代
    • 启用了脚本
    • 网络速度和延迟是最佳的
    • 缓存已准备好。

如果要加载远程资源,我建议您插入一个z-index为-1的div和一些虚拟Web内容。单击时,将其z索引上移至与屏幕上的所有内容重叠。

因此,如果我们假设您加载了一个远程资源并包含所有未知变量,那么我们可以假设花费的时间为-> 0.5-10秒

如果您要编写可能杀死某人的程序,我强烈建议您不要冒险做可能需要2到12秒才能保存的程序。

通过放置带有说明的标语来教育用户

  1. 打开一个不会威胁自己生命的标签(例如google.com,msn.com,yahoo.com)
  2. 用您的网站打开另一个标签
  3. 在您的网站上正常浏览
  4. 在紧急情况下,请按,Ctrl+W以查看Google Chrome,IE,Firefox,Opera(请确认是否支持其他主要浏览器)

如果您有完整的想法,请按ctrl + w vs您计划的解决方案,我当然可以保证它Ctrl+W会更快。


3
作为历史线索,有一个为IE和隐身模式在私人的模式铬
李加里-

7
我认为这是个好主意,因为它肯定更快/更安全,但不能代替紧急按钮。您不能期望所有访问者都阅读并理解您的教程,尤其是在初次访问时。我认为OP应该既有关于安全浏览技术的教程,又有紧急按钮。
NicolasMoise 2014年

42
目标受众显然不是很精通技术,而且情绪非常紧张。目前,他们最不关心如何以最隐秘的方式(可能是他们的语言说得不太好)使用浏览器。如果那一刻他们正在接受教育,他们会怎么办?通常让他们知道例如ctrl-w是一个好主意,但您可以保证他们记得吗?高度可见的“紧急按钮”是您可以给他们的良好而直观的帮助。其他所有内容都只能添加。
PlasmaHH 2014年

16
我不知道为什么投票赞成。这个答案太荒谬了,如果每个人都知道适当的安全浏览技术,那将是很好的选择。您不能指望某个处于困境中并且可能在第一时间访问您的网站的人知道/阅读/理解这一点。

11
老实说,我不明白为什么要投票。这是一个糟糕透顶的答案,给OP的原始问题带来了不必要的复杂性。更好的建议是更大,更明确的横幅,而不是额外的标签。不再从经验丰富的开发人员或超级用户的角度思考此问题,他们已经掌握了键盘快捷键。我妈妈不在乎,或更明确地说,不会理解键盘快捷键,而这正是它的目标用户。
theGreenCabbage 2014年

23

该答案假定“历史记录”和“地址栏”不是问题。至少不是立即。

情境

朱莉是配偶虐待的受害者。她正在互联网上寻求帮助,并且她进入了您的网站:http : //www.crisisprevention.com(此答案是虚构的)

在浏览您的站点时,她听到配偶迅速接近房间。她慌了。幸运的是,您有一个漂亮的大按钮,在滚动时固定在页面上。

她单击此按钮,然后...

她带她去了Google.com

由于以下原因,我不喜欢这种方法:没有人会相信您只是坐在计算机前,盯着Google搜索提示。相信我。我曾经尝试过。

我过去一直使用Google提示符打开一个标签页,如果我在工作中浏览题外话,我会切换到Google标签页,这样没有人会更明智。它起作用了。直到人们开始质疑为什么我整天盯着Google搜索屏幕。

从那以后,我开始打开一个标签,其中包含处于不同状态的各种工作项目。通常,在浏览之间我总是在处理东西。所以,现在我实际上已经完成了一些工作!不需要技术天才就能弄清楚这种方法,这就是@LeeGary的答案可能是最好的原因。

它需要她...仍然需要她...哦,互联网连接问题

这是您需要准备的现实。恐慌之际,互联网连接可能会中断。当她等待HTTP GET请求获取可以开始呈现的内容时,当前内容仍显示在页面上……仅,没有内容被检索。Internet连接已断开。发生这种情况可能有多种原因:

  • 配偶断开了连接。
  • 正在联系的服务器承受极大的负载。
  • 浏览器内存不足。
  • ISP出现问题。
  • 拨号连接/断开连接(是的,仍然存在)。
  • 电脑速度很慢。
  • DNS服务器已关闭。

原因不断,以及为什么当浏览器按下紧急按钮时浏览器可能会阻塞,并试图将其移至新站点。

即时服务替代网站

我的解决方案建议您在网站的后台预加载一个网站。将其加载到<div>并将其隐藏在常规网站的后面。如果内容太多,则可以考虑使用z-index代替隐藏它display: none。这样,它将被预先渲染(我相信,这里可能是错误的)。

现在,她的Internet连接是否断开都没关系。她已经有了内容。HTTP GET请求没有延迟。它只是立即显示。

如果地址栏是一个问题,您仍然可以通过提供与您的域相关的替代网站来缓解这种情况。

例如,以虚拟(针对此答案)的域名:http : //www.crisisprevention.com

您可以提供一些替代性文章,以解决世界饥饿危机。

这里的想法是,最令人讨厌的是最初的第一眼。当配偶走进去时,当他看到她正带着惊慌的神情转身前往Google.com时,他会怀疑情况正在发生,并倾向于进行调查。同样,如果她因为HTTP GET请求缓慢或失败而陷入试图隐藏自己的行为的行为,则可能会更糟。


3
如果替代网站可以与真实网站具有相同的外观和感觉,那就是很好:颜色,布局。因此,如果滥用者在进入房间时从他的眼角看到了该站点,那么它似乎只会闪烁一下-不会更改为另一个站点。
micapam

我喜欢这个思考过程。我想补充一下我们需要使用JavaScript来触发切换的想法,因此我们应该有一个备份选项,以防止发生JS错误或禁用JS设置实际href的可能性(尽管微不足道)在链接上,因此它确实放在某处,而不是重新定位到页面顶部(然后在JS中的click事件上仅返回false)。
GreatBlakes

1
从设计角度(针对micapam),我完全同意,并补充说,创建需要使用紧急按钮的网站的设计师应避免突出显示颜色(饱和度和唯一性),并使用带有阴影的白色/浅灰色辅助色调中性/通用原色。
GreatBlakes 2014年

16

紧急按钮有一些大问题:

  • 很难单击它(您必须准确)
  • 选择它需要花费时间(如果您使用的是没有鼠标的笔记本电脑,则需要花费大量时间)
  • 它可以保存您的历史记录
  • 可通过后退按钮/退格键访问它。

还有一个女人在阅读这篇文章时试图快速单击该按钮的惊恐的随机动作呢?如果她会在第一次尝试中错过按钮,该怎么办?

因此,如果真的有可以挽救的人命,那是个坏主意。

更好的方法是向他们展示正常的操作方式(在可能进入此站点之前,通过某种帮助)。可能是这样的:

根据用户的浏览器,为他们提供仅使用键盘(根本不使用鼠标)的步骤列表。例如,如果她在Chrome上。

  1. 打开您喜欢的网站(FB,Twitter,有趣的兔子,并假装自己在做某事)。
  2. 按CRTL + SHIFT + N(打开隐身窗口),将不允许使用退格/历史记录技巧
  3. 在此处进入我们的网站(请勿复制粘贴以防止检查缓冲区中的内容)
  4. 阅读相关内容,并始终将手放在靠近CRTL和W的键盘上
  5. 紧急情况下按CRTL + W
  6. 继续主演您的FB,Twitter,有趣的兔子

当然,您必须使用适当的语言来修改您的解释。但是这种方式真的很难被抓住。还要说说坐在镜子和其他反射表面(例如窗户,眼镜和其他东西)旁边的情况。要求他们尝试使用这些组合一段时间,以便熟悉。

如果涉及到人命,则必须专业并且不要使用这些紧急按钮。特别是如果这样容易教人们如何更快,更安全地进行操作。

回答诺比乌斯

我明白了,谢谢。但是我不同意你的观点。经过大量的活动准备在FB上投放之后,您实际上在FB上看到了吗?我还没有。非技术人员臭名昭著的是想到了一些荒谬的坏主意,您可能会遇到其中的一些主意(防止在银行页面上单击鼠标右键以提高安全性,使用4位数字的密码更容易从手机中键入)。按下按钮听起来比较容易,但是请看一下我的步骤列表-在压力很大的情况下,您唯一需要做的就是按下CTRL + W。您无需考虑选项卡,模式和其他内容。这取决于基本模式-看到某人,然后按CTRL + W。我认为这一点都不困难,也很容易记住。到目前为止,记住按钮并不困难。您必须在正常的气氛中阅读其他所有内容。

按下2个按钮的速度比移动鼠标快得多,并且当您的手指放在它们上时,真的很难错过它们(做一个实验,让自己处于压力最大的状态,然后尝试快速单击该按钮)。就像我提到的那样-我至少看到了四种panic button情况可能会出错的原因,而在CRTL + W中却没有那么多的原因。如果涉及人的生命-您需要专业。

回答NicolasMoise。为什么人们总是说您需要精通CTRL + W?我并不是要向人们展示如何使用TOR,VPN,设置加密通道。这只是CTRL + W。人们学会了如何玩愤怒的小鸟以节省时间(这比记住2个按钮要难得多),因此人们可以学习CRTL + W来挽救生命。可以以这样一种方式来显示教程:观察者无法理解您为什么要阅读这篇文章(当您看到我的步骤列表时,我不认为第一个猜测是-啊,这是针对虐待妇女的网站)。

但是最有可能使人们对错误安全性有更好的了解。答案不是题外话。该人员正在询问如何实施紧急按钮-我正在解释为什么当前方式存在缺陷,以及他可以做些什么来做得更好。它与“我想确保通信安全并且我正在使用替代密码”处于同一级别,是的,您可以提高其密码的速度并假装一切正常,或者可以显示另一种方式。

最后一个解释我的观点的尝试是:您必须正确地向人们解释您的方法背后的风险。当人们没有正确解释问题时,一个很好的例子是白俄罗斯博客的问题,他们认为在互联网上匿名张贴将使他们无法被政府镇压。资源使他们错误地相信,如果他们不提供真实的身份,他们将得到拯救。他们了解到这并非是艰难的(当他们被判入狱数年时)。

如果有人向他们解释风险,我认为其中一些人会很乐于学习如何使用任何工具来挽救他们的下一个五年。

那么为什么不给女性几个选择:

  • 您可以立即使用方法A,这是您可能遇到的问题的列表。
  • 您可以使用方法B,该方法在第一时间需要X分钟才能阅读和理解。然后,您可能出现的问题的列表会减少到较小的列表。

让他们决定自己想做什么。这样他们就知道了风险。


14
我没有投票,但是我不同意您的说法,这很荒谬。恐慌按钮是英国许多慈善机构和国会议员竞选的对象,目的是将脸书放到Facebook上,供那些在网上被欺负,不知道从谁那里寻求帮助的青少年使用。在压力很大的情况下,按一下按钮要容易得多,然后必须事先承诺要记忆很长的步骤,并希望在情况出现时不会出错。
Nobilis 2014年

2
@Mark很好,OP确实说过这是一个基本的概念:)但是我想指出的是,该概念是众所周知的,熟悉的,并且在我看来更适合非技术人员。您知道什么是按钮,然后按它。对于选项卡,私人模式和键盘快捷方式进行思考,对于那些可能仅偶尔浏览Web的人来说,可以说更加复杂且不那么熟悉。
Nobilis 2014年

2
@Salvador这个答案是题外话。就像是这样:“哦,您处于虐待关系中,有人在监视您的一举一动,为什么不花一些时间阅读和理解有关适当浏览技术的这份长篇教程,以便下次访问该网站时您会感到安全(假设您没有被阅读本教程所吸引)”。任何假设其所有用户都精通技术的系统都将不可避免地失败。同样,我们并不是说您的方法不好或很慢(实际上是更快,更安全),但是您不能期望每个访客都知道这一点,这就是为什么您需要一个紧急按钮。
NicolasMoise 2014年

4
没有冒犯,但我认为您不理解我和Nobilis试图提出的观点。我同意,您是说Ctrl + W更快/更安全。我们不同意的是,您不能指望每个访问者都知道或记得Ctrl + W,因为您在站点的某个地方提到了它。另外,OP特别要求提供紧急按钮。
NicolasMoise 2014年

1
@NicolasMoise我认为执行此操作的正确方法是进行理论研究,以了解人们在特定情况下的行为方式并比较两种方法。使用按钮和CTRL + W。看看人们可以多快地学会按CTRL + W(也许这真的很难,我听不懂)。然后查看失败的百分比。如果您认为这是必需品-为什么不告诉人们这种必需品背后的风险。他们可能会认为恐慌按钮完全没有故障,如果有人可以使用退格键显示您看到他们在做什么,就会感到非常惊讶。
萨尔瓦多·达利

10

我认为您还有很长的路要走。

将人们引导到Google页面的原因是

  1. 它加载非常快
  2. 仍然可能会被缓存
  3. 它呈现非常
  4. 真的很好优化
  5. 我提过快吗?

您提供的链接很慢。

如果您想提供一种快速更改屏幕的方法,请在框架集中打开您的网站-斗篷的高度为0,而您的网站的高度为全高。然后,当用户单击链接交换时,将围绕框架高度进行切换,并重定向到顶层窗口至已加载的页面。


我不认为google可以容忍在框架中加载Google,但我确实喜欢框架切换斗篷的想法。
大卫说恢复莫妮卡2014年

这不是一个坏主意,尽管我看到的一个问题是网址将保持不变。
NicolasMoise 2014年

即使有高速缓存,它仍然大约需要2-3秒(可能在慢速互联网上会更长)。
Petah 2014年

@David:OP不想使用Google。
symcbean 2014年

@NicolasMoise:发出重定向后,地址栏中的网址不会更改
symcbean 2014年

5

我扩大了问题的范围,因为单击紧急按钮确实可以确保不会吸引用户。

根据风险以及用户对计算机的了解程度,需要发布此问题中的多个问题。

这样,最好以尽可能友好的方式为用户提供一些基本的安全知识。即使用户承受很大的压力,最好还是让他们知道可以留下哪些痕迹。

痕迹

浏览记录

用户在任何时候使用您的网站而未进行私人浏览时,都会留下非常明显的痕迹。没有适当的方法来检测浏览器是否在私有模式下运行,但是您可以在入口处发出警告,告知他们应切换到私有模式,删除当前的输入历史记录。您可以准备一些屏幕截图,以供用户删除历史记录(或者,如果有的话,仅删除站点条目)。

饼干

如果您使用cookie,那么下一个人可以获取这些cookie(即使它们已过期),并且可以了解该站点已被使用。如果可以,请使用自定义标头进行授权,这将不会在计算机中留下任何痕迹。
这可能会迫使您更改应用程序的结构,但这可能不是一个好主意。确保用户正在使用私人浏览会话后,才在浏览器中设置cookie。

快取

如果您通过打开页面并检查网络来使用缓存,则技术精明的人可以检测该站点是否已被访问。确保通过在响应中使用这些标头来明确指示浏览器不要缓存:

'Cache-Control: no-cache, no-store, must-revalidate'
'Pragma: no-cache'
'Expires: 0'

返回键

更改页面后,每个页面都将置于当前历史记录中(即使在私人浏览会话中),并允许使用“后退”按钮。如果可以的话,请replaceState在每个页面上进行更改,以使后退按钮损坏。

加密

使用HTTPS防止窃听。请注意,DNS查询仍将不加密,但是除非用户泄漏政府的东西,否则我认为这不会成为问题。如果真是这样,那么无论如何网站还是不够安全的。

通常,这些应该足以除去痕迹,并确保您未使用其他持久层,例如localStorage

紧急按钮

这是一个完全不同的问题,我们需要在计算中包括多个内容。
首先,如果这是威胁生命的场景,我们必须了解,用户在需要启动时会承受巨大的压力panic exit。我们不知道计算机屏幕的位置,也无法猜测用户在出现紧急情况时正在做什么。

屏幕定位问题

最坏的情况是,屏幕的放置方式应使威胁可以(从远处)看到屏幕和站点。如果真是这样,该网站应该以与看起来非常相似的方式进行设计,exit site以消除任何怀疑。通过仅比较两个站点之间(在相当暗的房间中)屏幕发出的颜色,即使不是直接可见屏幕,也可以从其他设计转向白色Google。

出口速度

如果您仅进行重定向,那么它可能不够快,无法及时进行更改。您必须将出口端预先加载到iframe中,并且在出现紧急情况时,应将其全屏显示,然后进行重定向。这将有助于缓存出口站点的静态内容,并使事情看起来更快。确保使用replaceState而不是自然导航来禁用后退按钮。

出口路线

您必须确保出口路线可立即方便地供用户使用。我认为最可能的两种状态是用户正在键入用户正在导航。这意味着您应该同时具有退出的键盘快捷键和HTML中的大按钮。

键盘出口

我认为使用两次按ESC键应该触发它,或者按住其中一个大键(例如空格或Enter)。无论哪种方式,您都应该让用户知道这一点,并可能让他们通过尝试来训练自己。尝试紧急出口既可以帮助他们预测紧急情况下的行为以做出合理的推理(可以缓解预期的行为),也可以对其进行培训,以便他们更有可能在紧急情况下正确地进行操作。时间。

滑鼠离开

这将非常简单明了,有一个大的,不同颜色的按钮将触发紧急情况。

在哪里退出?

这要视情况而定,默认情况下,通过设计重定向到通常使用的类似设计的站点可能是明智的。允许用户自己选择退出站点(在理智的默认设置之后)可能也是明智的。

笔记

  • 如果用户使用私人浏览和恐慌,则浏览器仍将处于私人浏览状态,这可能会引起怀疑。周围没有简单的方法。您可以尝试指示用户此后清除历史记录,但是他们可能没有足够的时间来保存历史记录。
  • 大多数答案都集中在台式机浏览器上,在移动设备上的体验将有所不同,但差别不大。

3
OP询问“如何实施紧急按钮”,但人们似乎正在回答有关“如何安全浏览网络”的教程。我猜对您来说就是这样,不要告诉我们您的需要,我们会告诉您。

4

可靠的逃生

编辑:想到的另一件事是,如果用户失去了Internet连接,这是由于各种原因而发生的,包括有人断开电缆连接,那么您就无法将他们导航到另一个站点。它们可能像鹿一样被困在那儿,在“入罪”页面上大灯照亮。我认为,这增加了实际导航到良性合作伙伴/关联网站的想法的可信度,而后者又直接将您的网站加载到iframe的页面上。要使网站消失,您所要做的就是使用已经加载到iframe中的JavaScript从DOM中删除iframe。即使Internet连接断开,它也可以工作。

我将启用Escape键以快速退出。那是键盘上的一个物理的,众所周知的键,用户可以根据需要进行调整,而不是将挑剔的鼠标指针移到虚拟按钮上并单击。

编辑:我刚刚意识到,以前的海报确实提到了Escape键,将其称为“ ESC”。在写回应之前,我在页面上搜索了“ Escape key”,但是没有找到。

编辑:我也将在页面上留下“紧急按钮”,并显示文本“单击此处或按ESCAPE快速退出”。但是我要在页面的顶部放置一个,在页面底部放置一个。也许我会在页面上整条地写一条。如果访客单击该边界区域中的任何位置,您的内容就会消失。

还考虑;为了使在紧急情况下可以轻松点击紧急按钮,您可能需要将其稍大一些,并通过在页面滚动时移动它或将多个紧急按钮放在屏幕上来确保它始终在屏幕上页面,其本身可能有点可疑。似乎这些页面可能想要成为您正在谈论的非常离散的页面。

如果您使用的是jQuery,则可以执行以下操作来响应Escape键:

jQuery( function ( $ ) {
    $( document ).keyup( function ( e ) {
        if ( e.which === 27 ) // escape
         {
         // clean up... 
         }
    } );
} ); 

单页AJAX应用

似乎所有建议的解决方案都是关于寻找某种方法来快速导航到其他站点,方法是预先将其加载并快速将其显示在站点顶部,或者先清除DOM然后进行导航,或者随你。

如果要采用这种方法,我将整理一份遍历整个良性网站​​和搜索引擎搜索的清单,以免每次显示的都是“搜索黑人女鞋”。

但是如何将整个概念变为现实呢? 使用一个或多个良性诱饵网站,或者甚至招募不相关的良性商业网站来托管外观良好的链接,并将您的网站作为单页AJAX应用加载到托管页面顶部的iframe中?

编辑:您甚至可以通过使您的主页简短声明,以确保访问者出于自身安全的目的将访问者重定向到合作伙伴站点并显示一个友好的“开始”按钮来执行此操作。如果您有多个合作伙伴站点,则可以将它们推送到那里,那就更好了。当他们单击时,清除页面的浏览器历史记录,并使用URL查询参数重定向到关联网站,该参数告诉您关联公司的引导JavaScript立即加载iframe。从那时起,该会员的Web服务器上没有任何额外的负载。这样,您就有了一个正式的主页,但是您立即使访问者完全脱离了页面。

按Escape键或单击“紧急按钮”只会从DOM中删除您的iframe,从而留下良性的宿主页面,并且没有浏览器历史记录。(of)

您可以通过这种方式缓解浏览器历史记录问题,因为您的链接将运行一些引导JavaScript代码,并且您根本不会真正将浏览器导航到您的站点。

单击宿主页面中的引导程序链接时,它将在DOM中插入一个iframe,将其浮动(绝对定位和z顺序)以将其放置在宿主页面的顶部,然后对您的Web服务进行AJAX调用,以检索将加载到框架中的HTML内容。框架中的所有其他链接和/或按钮也会对您的服务进行AJAX调用,无论是将数据发布到服务器还是检索数据以进行显示。您根本不会在用户的浏览器中加载任何实际的“页面”。

这种方法的另一个不错的方面是,如果浏览器崩溃或变得不稳定,必须从任务管理器中关闭,这将阻止运行清理代码,那没关系,因为您(不必要)没有任何东西清理。

休斯顿...?

一些严重的问题,我看到任何这些解决方案把我的头,特别是考虑到背景下,生命可能是在该行的顶部:

  • 浏览器缓存中的缓存对象(主要是图像)

  • 路由器/防火墙可能正在记录HTTP / HTTPS请求,而受害者可能不知道这一点,而您不做任何清理浏览器的操作都可以缓解该问题

  • 用户计算机上可能安装了键盘记录程序/ screencap间谍软件,而您无法通过浏览器应用程序执行任何操作,将会减轻这种情况

  • 计算机崩溃,Web浏览器崩溃并崩溃,并且由于无法运行清理代码而留下了跟踪。

正如至少一个其他发布者所建议的(老实说,我仅简要浏览了其他帖子),以安全模式使用浏览器应该可以缓解许多这种情况。但这是用户培训的问题,在最佳条件下,用户培训可能会有些疯狂。如果受害者不是非常精通技术,那么很难正确对待,特别是如果他们确实处于恐慌状态,而冷静思考可能会很困难。


2

您可能会看到一些旧游戏和网站上的“老板”紧急按钮。这个想法是,如果老板来过,您可以迅速切换到无辜的状态(当然,您必须看到他们先来!)。

虐待者进来时,几乎所有匆忙/疯狂的举动都会引起他们的怀疑。考虑设计屏幕,使它们看起来像一般新闻或类似新闻(从远处看),而不会出现大标题或图片而放弃其用途。这通常可以留出时间从站点“悠闲地”退出,而不会出现恐慌。如果紧急按钮链接将用户带到了一个真正的新闻站点,那就更好了(如果它出现得足够快)。

就像其他人提到的那样,如果滥用者变得可疑(并且有很多控制怪胎),浏览器上仍然存在历史记录,他们可以快速找出用户的位置。坦白说,您无能为力,特别是如果用户进入疯狂的恐慌模式试图掩盖自己的足迹,而施虐者看到了这一点。即使在超时后屏幕本身可以刷新为无辜的内容,浏览器的历史记录也会包含该URL。

考虑建议用户放置计算机,以防止滥用者从后面偷偷摸摸地走到他们身上,也不要去图书馆或其他非私人场所使用此站点。如果从远处看屏幕内容暗淡(请参阅上文),则不应吸引其他人的兴趣。

祝你好运!


我的回答有点关于浏览器历史记录问题(尽管它并不完美,并且可能会得到改善)
NicolasMoise 2014年

2

您可能会显示错误页面,而不是显示已在后台加载的实际站点。也许是假的YouTube或Google 404页面?我认为这将使额外内容的大小保持最小。

正如其他人所建议的那样,我也将使用转义键。减少丢失它的变化,这对于使用鼠标垫的人来说要容易得多,并且当他/她仅浏览网站时,用户可以将手指放在上面。

您还可以使用其他选项。页面本身上的一个按钮,或者让他们知道其他转义方法(如前所述,请按Ctrl + w)。也许对于平板电脑用户也是一个手势?可能有一些图书馆。

当然,您可以在任务栏中更改网址。(有关其他操作的代码,请参见其他文章)。

鼓励他们尝试逃生选项。因此,他们知道自己在做什么以及如何对此做出反应。


0

我认为我们可以做不同的事情。我的想法如下:

  1. 仅显示伪造内容的网站(样式和布局与真实内容相似)。
  2. 用户需要与内容进行某种交互以触发step3(例如,将XYZ放在文本框中,或者单击Checkbox或RadioButton的组合等)。
  3. 满足第2步后,当用户在页面(右侧)上的某个微小点上悬停时,页面将显示其真实内容。如果鼠标悬停在内容上,它将保留下来。
  4. 在紧急/紧急情况下,用户只需将鼠标从真实内容上移开,内容就会变回伪造的内容。

...在头上拿着一袋水果并唱歌“锚定”时,否则真实的内容将不会显示...
Craig

@Craig,您有个主意...
Bolu
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.