Я делаю сайт Ресурсного центра по борьбе с насилием в отношении женщин. У многих подобных центров есть то, что они называют «тревожной кнопкой». Пример базового можно найти здесь, вверху каждой страницы, на зеленой полосе.
Идея ссылки или кнопки заключается в том, что если женщина искала на этом веб-сайте помощь, а ее обидчик или кто-то, кого они не хотели знать, вошел в комнату, это позволяет быстро сбежать. Иногда ссылка выполняется намного быстрее, чем закрытие окна браузера, и это может вызывать подозрение.
Проблема, которую я вижу, заключается в том, что большинство кнопок, которые я вижу, просто отправляют вас в 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='http://www.msn.com/#news/'"></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()
}
Я публикую, потому что есть риск для жизни из-за этого, и мне нужно что-то, что как можно ближе к полному решению. Как бы вы это сделали?
ОБНОВЛЕНИЕ-3-26-14:
Я опубликовал некоторые образовательные идеи, размещенные здесь ресурсным центром, с которым я работаю, и вот их ответ. «Нашим пользователям требуется огромное мужество, чтобы даже зайти на наш веб-сайт. Когда они приходят, они ищут быстрый и простой способ выйти из потенциально опасной для жизни ситуации. В большинстве случаев у них не будет времени или умственных способностей, чтобы обучите себя безопасному способу просмотра нашего веб-сайта. Когда им представлена идея «тревожной кнопки», когда все сделано правильно, это кажется ресурсом, который всегда требуется большинству жертв, которых мы лечим ».
После прочтения большого количества идей кажется, что полное решение - это большая кнопка, которая постоянно находится в левом положении. Когда страница загружается, она загружает другой сайт в фоновом режиме (может быть, вызов ajax), так что нажатие кнопки просто удаляет перекрывающийся фрейм. Это будет означать отсутствие времени загрузки при нажатии. Чтобы избежать нажатия кнопки возврата в браузере, кажется, что необходимо указать браузеру не кэшировать, а также, возможно, использовать replaceState
при каждом изменении страницы для отключения кнопки возврата, которая открывает этот сайт.
Это все еще технический вопрос. Дебаты очень помогают, но мне все еще нужно рабочее техническое решение. Кто-нибудь думает, что они могут собрать все эти идеи во что-то функциональное? Я сразу буду работать над этим и опубликую все, что придумаю. Спасибо всем.
источник
^w
Ответы:
(ПОЧТИ) ОКОНЧАТЕЛЬНОЕ РЕДАКТИРОВАНИЕ
Хорошо, я прочитал все комментарии, и это то, что я считаю лучшим решением, но я также подумал о ВСЕЛОКАЛЬНОЙ АЛЬТЕРНАТИВЕ. Я открыт для дальнейшего улучшения / обсуждения
Я разместил пример на своем экземпляре AWS по адресу 54.186.79.95. Перейдите на эту страницу, нажмите кнопку, перейдите на другую страницу, затем нажмите ответ, теперь вы находитесь на 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">
тега.Дополнительные примечания
ЕЩЕ ОДНА АЛЬТЕРНАТИВА: ЛОКАЛЬНО ИЗМЕНИТЬ ВКУСНУЮ ИНФОРМАЦИЮ И ИЗМЕНИТЬ ИСТОРИЮ БРАУЗЕРА
Я также подумал, если вместо загрузки Google лучше всего локально преобразовать ваш сайт с невинной информацией . Это выглядит менее подозрительно, чем загрузка Google (так делают все), и вы можете делать все это локально, не перезагружая страницу.
Когда они нажимают кнопку паники, вы выполняете быстрые (и совместимые с кроссбраузерностью) манипуляции с DOM, чтобы изменить компрометирующую информацию на своем веб-сайте и сделать ее невинной (возможно, просто измените текст, это должно быть быстро). Таким образом, все это делается локально, что в подавляющем большинстве современных браузеров происходит практически мгновенно. Вам не нужно беспокоиться о перезагрузке / серверах, потому что скрипты уже должны быть загружены и готовы к работе. Если вы сохраните тот же внешний вид, это будет похоже на то, что пользователь просто перешел на другую страницу веб-сайта. Не делайте слишком очевидным по внешнему виду вашего веб-сайта, что это кризисный веб-сайт. Конечно, вы лишаете возможности вернуться к исходному содержанию. Я бы также прояснил на тревожной кнопке, какова стратегия, чтобы пользователь не волновался.
Я бы все равно попытался изменить историю браузера и купить другой домен, на котором размещена копия страницы-приманки, как в предыдущем примере. Не только в том случае, если доменное имя подозрительно, но и в случае, если злоумышленник нажимает кнопку «Обновить» или возвращается в свою историю. Вы должны сделать весь свой веб-сайт SPA, потому что вы можете изменять только свою текущую запись, а не свою прошлую историю. Конечно, это по-прежнему будет работать только в браузерах HTML5, просто убедитесь, что не возникает ошибок, а другая часть скриптов все еще выполняется в старых браузерах.
Что думают люди? какие слабые места в этом? Чем было бы хорошо заменить контент?
источник
curl -v http://example.org/#/foo
RFC 3986 "... идентификатор фрагмента отделяется от остальной части URI до разыменования, и, таким образом, идентификационная информация внутри самого фрагмента разыменовывается исключительно пользовательским агентом. .. "#
) и, следовательно, ваш сервер увидит фрагменты. Некоторые JS-фреймворки делают это из коробки. Я не знаком сwindow.history
чистым JS-решением, но любой желающий может редактировать мой пост. Текущее приложение, над которым я работаю (Angular + Express), работает следующим образом: сервер не видит, когда я нахожусь в своем приложении, но если я обновляюсь или выхожу и нажимаю обратно, мой сервер увидит полный запрос.Поскольку вы сказали, что жизнь в вашей реализации находится под угрозой, я настоятельно рекомендую научить пользователей использовать несколько вкладок вместо того, чтобы нажимать какие-то кнопки паники.
Мои причины быть
Если вы собираетесь загружать удаленные ресурсы, я предлагаю вам вставить div с z-index: -1 и некоторое фиктивное веб-содержимое. При щелчке переместите их z-index выше, чтобы перекрыть все на экране.
Итак, если мы предполагаем, что вы загружаете удаленный ресурс и со всеми неизвестными переменными, мы можем предположить, что затраченное время будет -> 0,5 - 10 секунд.
Если вы собираетесь написать программу, которая может кого-то убить, я настоятельно рекомендую вам не рисковать и делать то, что может занять 2–12 секунд, чтобы спасти их.
Обучайте своих пользователей, разместив баннер с инструкциями
Если вы поняли всю идею, нажмите ctrl + w вместо запланированного решения, я могу точно гарантировать, что Ctrl+Wоно будет быстрее.
источник
Этот ответ предполагает, что история и адресная строка не являются проблемой. По крайней мере, не сразу.
сценарий
Джули стала жертвой супружеского насилия. Она ищет помощи в Интернете и заходит на ваш сайт: http://www.crisisprevention.com (ответ на этот вопрос вымышленный)
Просматривая ваш сайт, она слышит, как ее супруг быстро приближается к комнате. Она паникует. К счастью, у вас есть красивая большая кнопка, которая прикрепляется к странице во время ее прокрутки.
Она нажимает эту кнопку и ...
Это приводит ее на Google.com
Мне не нравится этот подход по следующей причине: никто не поверит, что вы просто сидите перед своим компьютером и смотрите на подсказку поиска Google. Поверь мне. Я пробовал это раньше.
Раньше я держал вкладку открытой с подсказкой Google, и если я просматривал не по теме на работе, я переключался на вкладку Google, чтобы никто не был мудрее. Это сработало ... вроде как. Пока люди не начали спрашивать, почему я весь день смотрю на экран поиска Google.
С тех пор я начал открывать вкладку с различными рабочими проектами в разных состояниях. Обычно над вещами я работаю в перерывах между просмотром. Итак, теперь я действительно делаю кое-какую работу! Не требуется технический гений, чтобы понять этот подход, поэтому ответ @ LeeGary может быть лучшим.
Это требует ее ... это все еще занимает ее ... о, проблемы с подключением к Интернету
Вот вам реальность, к которой нужно быть готовым. Возможно, в момент паники соединение с Интернетом прерывается. Текущее содержимое остается отображенным на странице, пока она ждет HTTP-запроса GET, чтобы получить содержимое, которое он может начать отображать ... только содержимое не извлекается. Интернет-соединение прервано. Это могло произойти по любому количеству причин:
Причины продолжаются и продолжаются, почему браузер может подавиться, когда она нажимает кнопку паники и пытается переместить ее на новый сайт.
Мгновенное обслуживание альтернативного веб-сайта
Мое решение предполагает предварительную загрузку веб-сайта в фоновом режиме. Загрузите его в
<div>
и спрячьте за обычным сайтом. Если это большой бит содержания, то вы могли бы рассмотреть пряча егоz-index
вместоdisplay: none
. Таким образом, он будет предварительно обработан ( я считаю, что здесь может ошибаться ).Теперь не имеет значения, отключено ли ее подключение к Интернету. У нее уже есть контент. Запрос HTTP GET не требует задержки. Он просто отображается сразу.
Если адресная строка вызывает беспокойство, вы все равно можете смягчить это, обслуживая альтернативный веб-сайт, который соответствует вашему домену.
Например, возьмем вымышленный (для этого ответа) домен: http://www.crisisprevention.com
Вы могли бы подать альтернативную статью, которая касается, скажем, решения мирового голодающего кризиса.
Идея здесь в том, что это первый первый взгляд, который больше всего поражает. Когда супруг входит и видит, как она уходит на Google.com с таким испуганным взглядом, он заподозрит, что что-то не так, и будет более склонен расследовать. Точно так же было бы еще хуже, если бы она была поймана на процессе попытки скрыть свои действия из-за того, что запрос HTTP GET был медленным или не удался.
источник
С тревожной кнопкой возникают большие проблемы:
А как насчет панических случайных движений женщины, которая пытается быстро нажать на эту кнопку, когда она читала это. Что, если она упустит кнопку с первой попытки?
Так что, если есть действительно человеческие жизни, которые можно спасти, это плохая идея.
Лучше всего показать им нормальный способ сделать это (через какую-то помощь, прежде чем вы сможете войти на этот сайт). Это может быть примерно так:
В зависимости от браузера пользователя вы даете ему список шагов, для которых используется только клавиатура (без мыши). Например, если она на хроме.
Конечно, вы должны изменить свое объяснение на соответствующем языке. Но так очень сложно попасться. Также расскажите о том, как сидеть рядом с зеркалами и другими отражающими поверхностями, такими как окна, очки и другие вещи. Попросите их попробовать использовать эту комбинацию в течение некоторого времени, чтобы они были вам знакомы.
Если речь идет о человеческих жизнях, вы должны действовать профессионально и не пользоваться этими тревожными кнопками. Особенно, если так легко научить людей делать это быстрее и безопаснее.
Ответ Нобиусу
Я вас понял, спасибо. Но я не согласен с вашей точкой зрения. После долгой кампании по размещению на FB, вы действительно видели это на FB? Я не. Нетехнические люди известны тем, что придумывают до смешного плохие идеи, некоторые из которых вы, возможно, уже испытали (предотвращение щелчка правой кнопкой мыши на страницах банков для повышения безопасности, 4-значные пароли, чтобы их было легче набирать с мобильных телефонов). Нажатие кнопки звучит проще, но посмотрите мой список шагов - единственное, что вам нужно сделать в стрессовой ситуации, - это нажать CTRL + W. Вам не нужно думать о вкладках, режимах и других вещах. Это похоже на базовый шаблон - посмотрите кого-нибудь, нажмите CTRL + W. На мой взгляд, это совсем несложно и легко запомнить. Это не сложнее, чем не забыть нажать на кнопку. Все остальное вы должны прочитать в нормальной атмосфере.
Нажатие 2 кнопок происходит НАМНОГО быстрее, чем перемещение мыши, и действительно трудно пропустить их, когда ваши пальцы находятся на них (проведите эксперимент и поставьте себя в полную стрессовую ситуацию и попытайтесь быстро нажать на эту кнопку). Также, как я уже упоминал, я вижу по крайней мере четыре причины, по которым что-то может пойти не так в
panic button
ситуации, тогда как в CRTL + W я вижу гораздо меньше причин. Если в дело вовлечены человеческие жизни - нужно быть профессионалом.Ответ NicolasMoise . Почему люди продолжают говорить, что нужно быть технически подкованным, чтобы нажимать CTRL + W? Я не пытаюсь показать людям, как использовать TOR, VPN, настраивая канал шифрования. Это просто CTRL + W. Люди научились играть в Angry Birds, чтобы тратить свое время (что намного сложнее, чем запомнить 2 кнопки), поэтому люди могут выучить CRTL + W, чтобы спасти свою жизнь. Учебное пособие может быть показано таким образом, чтобы наблюдатель не мог понять, почему вы это читаете (когда вы видите мой список шагов, я не думаю, что первое предположение было бы - ах, это сайт о насилии над женщинами).
Но, скорее всего, гораздо лучше дать людям представление о ложной безопасности. Ответ не не по теме. Человек спрашивает, как реализовать кнопку паники, и я объясняю, почему текущий способ ошибочен и что он может сделать, чтобы сделать это лучше. Это на том же уровне, что и «Я хочу сделать общение безопасным и использую подстановочный шифр», да, вы можете повысить скорость его шифрования и сделать вид, что все в порядке, или вы можете указать другой способ.
Последняя попытка объяснить мою дополнительную мысль : вы должны правильно объяснить людям риски, стоящие за вашим подходом. Хорошим примером, когда люди страдали от того, что они не объясняли проблемы должным образом, была проблема с белорусскими блоггерами, которые думали, что анонимное размещение сообщений в Интернете сделает их незамеченными для правительственных репрессий. Ресурс дал им ложную уверенность в том, что они спасаются, если не сообщат свою настоящую личность. Они узнали, что это неправда, на собственном горьком опыте (когда их посадили на несколько лет).
Если бы кто-нибудь объяснил им риск, я думаю, некоторые из них были бы счастливы узнать, как использовать любой инструмент, чтобы сэкономить свои следующие пять лет.
Так почему бы не дать женщинам несколько вариантов:
И пусть они сами решают, что они хотят делать. Таким образом, они знают о рисках.
источник
Я думаю, тебе еще предстоит долгий путь.
Причина отправки людей на страницу Google заключается в том, что
Указанная вами ссылка медленная.
Если вы хотите обеспечить быстрый способ смены экрана, откройте свой сайт в наборе фреймов - плащ в кадре высотой 0, а ваш сайт во фрейме полной высоты. Затем, когда пользователь нажимает на ссылку, поменяйте местами высоту фрейма и перенаправьте в окно верхнего уровня на уже загруженную страницу.
источник
Я немного расширяю объем вопроса, поскольку нажатие кнопки паники гарантирует, что пользователя не поймают.
В этой проблеме есть несколько проблем, которые необходимо решить в зависимости от риска и того, насколько вычислительно грамотным является пользователь.
Таким образом, было бы неплохо дать пользователю некоторые базовые знания о безопасности наиболее удобным способом. Даже если пользователь находится в состоянии сильного стресса, ему лучше знать, какие следы он может оставить.
Следы
История браузера
В любое время, когда пользователь использует ваш веб-сайт без приватного просмотра, он оставит очень очевидные следы. Нет надлежащего способа определить, работает ли браузер в частном режиме, но вы можете получить предупреждение на входе, что они должны переключиться в частный режим, а также удалить текущую историю входа. Вы можете подготовить несколько снимков экрана, по которым пользователь будет следовать, чтобы удалить историю (или, если доступно, удаление только записи на сайте)
Печенье
Если вы используете файлы cookie, следующий человек может получить эти файлы cookie (даже если срок их действия истек) и сможет понять, что этот сайт был использован. По возможности используйте настраиваемые заголовки для авторизации, которые не оставят никаких следов на компьютере.
Это может заставить вас изменить структуру приложения, что может быть не очень хорошей идеей. Настройка файлов cookie в браузере только после того, как вы убедитесь, что пользователь использует сеанс приватного просмотра.
Кэширование
Технически подкованный человек может определить, был ли сайт посещен, если вы воспользуетесь кешированием, открыв страницу и проверив сеть. Убедитесь, что вы явно указали браузеру не кэшировать, используя эти заголовки в своих ответах:
Кнопка назад
При смене страниц каждая страница будет помещена в текущую историю (даже в сеансе приватного просмотра), что позволит использовать кнопку «Назад». Если можете, используйте при
replaceState
каждом изменении страницы, чтобы кнопка возврата не работала.шифрование
Используйте HTTPS для предотвращения подслушивания. Обратите внимание, что запросы DNS по-прежнему будут оставаться незашифрованными, но я не думаю, что это будет проблемой, если только пользователь не утекает правительственные данные. Если это так, веб-сайт в любом случае будет недостаточно безопасным.
В общем, этого должно быть достаточно для удаления следов, также убедитесь, что вы не используете другие уровни сохранения, например
localStorage
.Кнопка паники
Это совершенно другая проблема, и нам нужно учитывать несколько вещей в наших расчетах.
Во-первых, если это опасный для жизни сценарий, мы должны понимать, что пользователь будет испытывать крайний стресс, когда ему понадобится запустить
panic exit
. Мы не знаем, как расположен экран компьютера, и не можем угадать, что делает пользователь во время паники.Проблемы с позиционированием экрана
В худшем случае экран будет расположен таким образом, чтобы угроза могла видеть (на расстоянии) экран и сайт. Если это так, сайт должен быть разработан таким образом, чтобы он выглядел очень похоже на сайт
exit site
, чтобы исключить любые подозрения. Переход от другого дизайна к белому Google будет заметен, даже если экран не виден напрямую, просто сравнив цвета, которые экран излучал между двумя сайтами (в достаточно темной комнате).Скорость выхода
Если вы просто сделаете перенаправление, оно может оказаться недостаточно быстрым, чтобы вовремя внести изменения. Вы должны предварительно загрузить выходную сторону в iframe, и во время паники вы должны поместить ее в полноэкранный режим, а затем выполнить перенаправление. Это поможет не только кэшировать статическое содержимое сайтов выхода, но и ускорит работу. Убедитесь, что вы используете
replaceState
вместо естественной навигации, чтобы отключить кнопку возврата.Выездные маршруты
Вы должны убедиться, что маршруты выхода будут доступны сразу и легко для пользователя. Я думаю, что наиболее вероятными двумя состояниями являются либо пользователь печатает , либо пользователь перемещается . Это означает, что у вас должны быть и сочетание клавиш для выхода, и большая кнопка в вашем HTML.
Клавиатура Выход
Я думаю, что использование либо двойного нажатия клавиши ESC должно вызвать его, либо удержания одной из больших клавиш (например, пробела или ввода). В любом случае вы должны сообщить об этом пользователю и, возможно, позволить ему потренироваться, попробовав. Попытка выйти из паники поможет им предвидеть паническое поведение, чтобы получить веские доводы (ожидаемое поведение может облегчить), и они будут обучены этому, так что с большей вероятностью они сделают это должным образом в панике. время.
Выход мыши
Это будет довольно просто, у вас будет большая кнопка разного цвета, которая вызовет панику.
Куда выйти?
Это зависит от случая. По умолчанию может быть разумным сделать перенаправление на обычно используемый сайт с аналогичным дизайном по умолчанию. Также может быть разумным позволить пользователю самостоятельно выбирать сайт выхода (после того, как он установит нормальное значение по умолчанию).
Ноты
источник
Надежный побег
РЕДАКТИРОВАТЬ: Еще одна вещь, которая приходит на ум, заключается в том, что если пользователь потерял подключение к Интернету, что происходит по разным причинам, включая отключение кабеля, вы не сможете перейти на другой сайт. Они могли застрять там, как олень в свете фар, на «компрометирующей» странице. Я думаю, что это добавляет доверия к идее фактического перехода на надежный партнерский / аффилированный сайт, который, в свою очередь, загружает ваш сайт в iframe прямо на своей странице. Все, что вам нужно сделать, чтобы ваш сайт исчез, - это удалить свой iframe из DOM с помощью JavaScript, который уже загружен в iframe. Это сработало бы, даже если бы Интернет-соединение пропало.
Я бы включил клавишу Escape для быстрого выхода. Это физическая, хорошо известная клавиша на клавиатуре, которую пользователь может при необходимости нажать, вместо того, чтобы перемещать привередливый указатель мыши к виртуальной кнопке и щелкать.
EDIT: Я просто понял , что ранее плакат сделал «ESC» отметить клавишу Escape , со ссылкой на него , как Перед тем, как написать ответ, я искал на странице «Ключ выхода», но пропустил это.
РЕДАКТИРОВАТЬ: Я бы также оставил кнопку паники на странице с текстом «Щелкните здесь или НАЖМИТЕ ESCAPE для быстрого выхода». Но я бы поставил один вверху и один внизу страницы. Может быть, я бы положил полоску на всю страницу. Если посетитель щелкает где-нибудь в этой пограничной зоне, ваш контент исчезает.
Также учтите; чтобы было достаточно легко нажимать кнопку паники в ситуации паники, вам, вероятно, придется сделать ее немного завышенной и убедиться, что она всегда на экране, перемещая ее при прокрутке страницы или помещая несколько кнопок паники на страница, которая сама по себе может выглядеть подозрительно. Кажется, что это, вероятно, хотят быть довольно дискретными страницами, о которых вы говорите.
Если вы используете jQuery, вы можете сделать что-то вроде следующего, чтобы ответить на клавишу Escape:
Одностраничное приложение AJAX
Похоже, что все предлагаемые решения касаются того, чтобы найти способ быстро перейти на какой-либо другой сайт, либо предварительно загрузив его и быстро отобразив поверх вашего сайта, либо очистив DOM, а затем уйдя, или без разницы.
Если бы я собирался применить этот подход, у меня был бы обширный список универсально безвредных сайтов и поисковых запросов, которые я бы периодически просматривал, чтобы каждый раз не появлялся один и тот же «поиск черной женской обуви».
Но как насчет того, чтобы перевернуть всю концепцию с ног на голову? Использовать один или несколько безобидных сайтов-обманов или даже запрашивать несвязанные безобидные коммерческие сайты для размещения безобидно выглядящей ссылки и загружать свой сайт как одностраничное приложение AJAX в iframe поверх главной (-ых) страницы (-ей)?
РЕДАКТИРОВАТЬ: вы даже можете сделать это, кратко указав на своей домашней странице, что он будет перенаправлять посетителя на сайт кооперативного партнера для их собственной безопасности, и отобразить большую дружественную кнопку «Перейти». Если у вас есть несколько партнерских сайтов, вы можете их подтолкнуть, тем лучше. Когда они нажимают, сотрите историю браузера для вашей страницы, перенаправьте на аффилированный сайт с параметром запроса URL, который сообщает вашему загрузочному JavaScript в партнерке, чтобы немедленно загрузить ваш iframe. С этого момента дополнительная нагрузка на веб-сервер партнера не возникает. Таким образом, у вас есть официальная домашняя страница, но вы сразу же полностью убираете посетителя со своей страницы.
Нажатие клавиши Escape или нажатие кнопки паники просто удалит ваш iframe из DOM, оставив безобидную страницу хоста и не историю браузера. (Пуф)
Вы могли бы смягчить проблемы истории браузера , что путь , так как Ваша ссылка будет работать немного самозагрузки коды JavaScript , и вы никогда не будете на самом деле ориентироваться браузером на ваш сайт на всех.
Когда щелкают ссылку начальной загрузки на странице хоста, она вставляет iframe в DOM, перемещает его (абсолютное позиционирование и z-порядок), чтобы разместить его поверх главной страницы, а затем выполняет вызов AJAX к вашей веб-службе, чтобы получить содержимое HTML, которое будет загружено во фрейм. Все дополнительные ссылки и / или кнопки во фрейме также будут вызывать AJAX-вызовы вашей службы, будь то отправка данных на сервер или получение данных для отображения. Вы вообще никогда не загрузите настоящую «страницу» в браузере пользователя.
Еще один приятный аспект этого подхода заключается в том, что если браузер выйдет из строя или станет нестабильным и его придется закрыть из диспетчера задач, что предотвратит запуск кода очистки, это не имеет значения, потому что у вас (обязательно) нет ничего очистить.
Хьюстон...?
Несколько серьезных проблем, которые я вижу с любым из этих решений, не выходят из моей головы, особенно с учетом контекста, в котором жизнь может быть поставлена на карту:
кэшированные объекты (в первую очередь изображения) в кеше браузера
маршрутизатор / брандмауэр может регистрировать запросы HTTP / HTTPS, и жертва может этого не знать, и ничто из того, что вы делаете, чтобы очистить браузер, не смягчит это
на компьютере пользователя может быть установлено шпионское ПО для клавиатурных шпионов / снимков экрана, и ничто из того, что вы можете сделать из приложения браузера, не смягчит это
компьютеры дают сбой, веб-браузеры перестают работать, а следы остаются, потому что код очистки не запускается.
Как было предложено по крайней мере еще одним постером (честно говоря, я только бегло просмотрел другие сообщения), использование браузеров в безопасном режиме должно смягчить многие из этих сценариев. Но это проблема обучения пользователей, и обучение пользователей может быть немного сумасшедшим в лучших условиях. Это может быть очень сложно сделать, если жертвы не очень разбираются в технологиях, особенно если они действительно находятся в ситуации панического режима, когда спокойное мышление может быть затруднено.
источник
Вы можете взглянуть на кнопки паники «Босс» на некоторых старых играх и на сайтах. Идея состоит в том, что вы могли бы быстро переключиться на что-то невинное, если бы подошел ваш босс (конечно, вы должны сначала увидеть, как он приближается!).
Практически любое поспешное / бешеное действие, когда приходит обидчик, вызывает у них подозрения. Рассмотрите возможность создания экранов так, чтобы они выглядели как общие новости или тому подобное (на расстоянии), без больших заголовков или изображений, раскрывающих их цель. Часто это дает время для «неторопливого» выхода с сайта без паники. Если ссылка тревожной кнопки ведет пользователя, скажем, на добросовестный новостной сайт, тем лучше (если он появится достаточно быстро).
Как уже упоминали другие, если злоумышленник становится подозрительным (а многие из тех, кто умеет контролировать), в браузере все еще есть исторический след, по которому они могут быстро узнать, где был пользователь. Откровенно говоря, вы мало что можете сделать, особенно если пользователь входит в режим безумной паники, пытаясь замести следы, и обидчик это видит. Даже если сам экран может быть обновлен до чего-то невинного по истечении некоторого времени ожидания, в истории браузера будет URL.
Вы можете посоветовать пользователям расположить компьютер так, чтобы злоумышленник не мог подкрасться к ним сзади, или пойти в библиотеку или другое неприкосновенное место, чтобы использовать этот сайт. Если контент на экране выглядит тусклым на расстоянии (см. Выше), он не должен вызывать интереса у окружающих.
Удачи с этим!
источник
Вы можете показать страницу с ошибкой вместо фактического сайта, который уже загружен в фоновом режиме. Может быть, фальшивая страница на YouTube или Google 404? Я думаю, что это позволит свести к минимуму размер дополнительного контента.
Как предлагали другие, я бы также использовал клавишу выхода. Уменьшает вероятность того, что кто-то пропустит его, будет намного проще для кого-то с ковриком для мыши, и пользователь может удерживать палец на нем, когда он / она просто просматривает сайт.
Вы также можете использовать другие варианты; кнопку на самой странице или сообщите им о других методах выхода (ctrl + w, как упоминалось ранее). Может, тоже жест для пользователей планшетов? Наверное, для этого есть какие-нибудь библиотеки.
И, конечно же, вы можете изменить URL-адрес на панели задач. (См. Код о том, как это сделать, в других сообщениях).
Поощряйте их попробовать варианты побега. Таким образом, они знают, что делают и как могут на это отреагировать.
источник
Думаю, мы можем поступить иначе. Моя идея следующая:
источник