Полезная информация

В мире Mozilla происходит много интересных событий. Но вам не нужно постоянно посещать новостные сайты, чтобы быть в курсе всех изменений. Зайдите на ленту новостей Mozilla Россия.
  • Форумы
  •  » Firefox
  •  » Защита от подглядывания через историю посещений...

№101-04-2010 02:16:38

Крошка Ру
Участник
 
Группа: Extensions
Зарегистрирован: 19-10-2008
Сообщений: 8718
UA: Namoroka 3.6

Защита от подглядывания через историю посещений...

Разработчики Firefox закрыли возможность подглядывания через историю посещений

Существует достаточно простая и в тоже время серьёзная проблема с использованием ссылок и истории посещения во всех существующих веб браузерах. Представим простую ситуацию - вы регулярно посещаете набор сайтов, а затем попадаете на web-страницу злоумышленника, который хочет узнать куда вы заходили. Сделать это очень просто - атакующий помещает незаметно для вас огромный список интересующих его сайтов на свою страницу, а затем, используя атрибуты посещенного сайта (стандартная возможность начиная с первой версии HTML), он легко может вычислить на каких сайтах вы были раньше, потому что все эти ссылки, которые он у себя разместил, будут иметь состояние "посещён", т.е. например поменяют цвет. Пример подобной атаки можно найти на сайте debugtheweb.com.Так, например, используя стандартную функцию JavaScript getComputedStyle(), можно абсолютно незаметно для пользователя проверить сотни тысяч посещений за одну секунду.

Разработчики Mozilla Firefox решили устранить эту "уязвимость", которая, как очевидно, является неотъемлемой частью стандарта HTML. Какие варианты они предложили:

    * Атаки, связанные с изменением внешнего вида посещенной ссылки. Стандарт разрешает менять для посещенных ссылок огромное количество атрибутов: цвет фона и самой ссылки, начертание, границы, SVG черточки и цвет заполнения. Разработчики Mozilla будут ограничивать стили, применяемые к посещенным ссылкам.
    * Атаки, основанные на временных задержках. В принципе, атакующий может узнать факт посещения и по задержке с которой веб-браузер отобразит ссылку. Разработчики Mozilla меняют механизм рендеринга таким образом, чтобы стили применялись до самого факта рендеринга, и тогда будет невозможность отличить ссылки по времени их вывода на экран пользователя.
    * Конечное CSS-состояние ссылки может быть вычислено с помощью JavaScript - Firefox больше не будет различать вывод подсчитанного CSS для таких запросов.

Что это означает для конечных пользователей? Во-первых, может незначительно поменяться внешний вид отображения посещенных ссылок на некоторых веб сайтах. Те сайты, которые меняют цвет для посещенных ссылок, будут выглядеть несколько иначе. Тем не менее, данная защита не будет доступна в существующих версиях Firefox, поэтому вы вручную можете себя обезопасить поменяв состояние опции layout.css.visited_links_enabled в false на странице настроек (url: about:config) - но только в том случае, если у вас установлен Firefox 3.5 и выше.

Отсутствует

 

№201-04-2010 03:43:25

okkamas_knife
We are the Borg.       Resistance is futile.
 
Группа: Members
Зарегистрирован: 21-10-2009
Сообщений: 9558
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

слоупок.жпг:D
а вообще ерунда если отключить скрипты то следильщики обломаются
а со включенными через флэш можно много чего вытащить и с указанной защитой.


я помню те времена когда обновления программ убирали проблемы и исправляли баги, а не добавляли их.
toxID:05AB9B827D896AACEE7FF4573A02FB8F025F46ADC856B98F65BC1BA9BD21A81DC98BA9C36CE3

Отсутствует

 

№301-04-2010 04:40:06

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

okkamas_knife
Спорим я на одном только CSS смогу отследить какие сайты ты посещал если указанная опция не установлена?
Как минимум на моём сервере данные о тебе окажутся, хоть твой браузер и не выполнит ни одного скрипта.

Отредактировано Lain_13 (01-04-2010 04:42:54)

Отсутствует

 

№401-04-2010 05:06:18

okkamas_knife
We are the Borg.       Resistance is futile.
 
Группа: Members
Зарегистрирован: 21-10-2009
Сообщений: 9558
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

Lain_13
давай. мне уже интересно:cool:
тока в личку пиши чтоб я не прозевал сообщение.

Отредактировано okkamas_knife (01-04-2010 05:07:35)


я помню те времена когда обновления программ убирали проблемы и исправляли баги, а не добавляли их.
toxID:05AB9B827D896AACEE7FF4573A02FB8F025F46ADC856B98F65BC1BA9BD21A81DC98BA9C36CE3

Отсутствует

 

№501-04-2010 09:53:04

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Minefield 3.7

Re: Защита от подглядывания через историю посещений...

okkamas_knife
Не, прямо тут напишу. Идея заключается в том, что страница генерируется скриптом, который берёт из базы сочетания адрес_сайта / ключ и вставляет ключ в атрибут class или id у ссылки. Параллельно с этим тебе выгружается CSS-файл, в котором для каждого class или id в состоянии :visited назначается картинка в виде a-blahblahblah.png (.blahblahblah:visited {background-image:url('a-blahblahblah.png');}). На запрос любой картинки с именем на "a-"  у меня висит другой скрипт, который выплёвывает пустую прозрачную картинку 1х1 пиксел размером, а по ключу blahblahblah скрипт узнаёт на каком сайте ты был. Сохраняем списки IP/посещённые сайты, например, и пользуемся.
Вот так совершенно примитивным образом стандартными средствами CSS я узнал был ли ты хоть на одном сайте, который меня интересует.

Вот proof of concept. Скачай, переименуй, распакуй в папку локального http-сервера (апачу скорми, например) и запусти. У первой ссылки mozilla-russia появится фон в виде мигающих шестиугольников, а у ссылки blahblahblah - нет. Если посмотришь в адблоке, то запрос происходит только к файлу "a-abc.png", который назначен первой ссылке, а файл "a-def.png" для второй ссылки не загружается.

p.s. apng-шестиугольник нарисовал я, можно безвозмездно пользоваться.
p.p.s. Естественно этот метод не работает если установить указанный выше параметр - он напрочь вырубает разметку посещённых страниц. Теоретически в будущем картинку к css-фильтру с :visited в пути установить будет нельзя.

Отредактировано Lain_13 (01-04-2010 10:11:20)

Отсутствует

 

№601-04-2010 10:10:45

okkamas_knife
We are the Borg.       Resistance is futile.
 
Группа: Members
Зарегистрирован: 21-10-2009
Сообщений: 9558
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

Lain_13
но так можно узнать только адреса конкретных страничек
а если ходить так http://anonymouse.org/cgi-bin/anon-www.cgi/http://forum.mozilla-russia.org/viewtopic.php?pid=419277#p419277
то всё это вытягивание сойдёт на нет потому что придётся делать такой огромный список(прикинь этож надо для каждой ссылки на форуме делать) что он мало того что грузится будет очуметь сколько плюс сервак задолбается его обрабатывать
а если учесть что многие сайты добавляют sessionid в адрес то вообще фиг засечёшь.
вобщем это только proof of concept. а практически его  примененить очень сложно


я помню те времена когда обновления программ убирали проблемы и исправляли баги, а не добавляли их.
toxID:05AB9B827D896AACEE7FF4573A02FB8F025F46ADC856B98F65BC1BA9BD21A81DC98BA9C36CE3

Отсутствует

 

№701-04-2010 10:13:00

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Minefield 3.7

Re: Защита от подглядывания через историю посещений...

okkamas_knife
Так ведь и старый метод действует точно так же оперируя точными ссылками, просто все проверки выполняет локально прямо на открытой странице. ж) Полотнища ссылок можно подгружать во фреймах, например, что б не особо тормозить загрузку основной страницы. Метод на JS так же не отслеживает перехода напрямую на какую-то страницу или через анонимайзер. Но если ты ходил на Хабр без анонимайзера и был на заглавной странице, то я об этом узнаю ...и уж определённо я узнаю, что ты пользуешься анонимайзером, если добавлю ссылку на него, а ты не удалишь его главную страницу у себя в истории. ^_^

+ если меня интересует всего пара десятков сайтов, то я могу и заморочиться добавлением вариантов с популярными анонимайзерами.

Отредактировано Lain_13 (01-04-2010 10:26:03)

Отсутствует

 

№801-04-2010 10:26:30

okkamas_knife
We are the Borg.       Resistance is futile.
 
Группа: Members
Зарегистрирован: 21-10-2009
Сообщений: 9558
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

Lain_13
ну у меня хистори вообще чистится при закрытии:D
и кстати веришь ли - я на заглавной хабра не был ни разу!;) только по ссылкам откуда либо заглядываю туда.
таким макаром разве что вконтактников палить;)
ну а анонимайзер я привёл в качестве примера. можно например для сёрфа и гугль транслейт использовать
или просто в поисковике смотреть сохранённые копии.
да а из поисковика кстати на твою страничку хитрую сложно будет попасть потому что робот посчитает её поисковым спамом и выкинет из результатов - так что списочек должен быть мааленький.
вобщем слишком много если должно сложиться чтоб утащить часть хистори.


я помню те времена когда обновления программ убирали проблемы и исправляли баги, а не добавляли их.
toxID:05AB9B827D896AACEE7FF4573A02FB8F025F46ADC856B98F65BC1BA9BD21A81DC98BA9C36CE3

Отсутствует

 

№901-04-2010 11:33:11

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Minefield 3.7

Re: Защита от подглядывания через историю посещений...

okkamas_knife
Ну так ведь и оригинальный метод с JS гибкостью не блещет, как я уже говорил. Опять же, если меня интересует десять-сто сайтов и мне плевать на анонимайзеры, то страничка получится нормального размера. Если мою страничку будут вставлять во фрейме как рекламу (а почему бы не выводить рекламу на основании собранных данных?), то свою аудиторию мой сайт точно получит (точнее многие увидят рекламу, а у меня будет собираться статистика). Меня могут интересовать не конкретно твои предпочтения, а предпочтения всех пользователей каждого сайта, где мой во фрейме поставят. В таком случае его будут вызывать указывая некий ключ в пути к сорцу фрейма, а у меня этот ключ будет передаваться в имена картинок. Соответственно статистика будет так вот собираться. Кстати, при работе во фрейме я вообще могу держать базу в десятки тысяч сайтов, а во фрейм каждый раз кидать от 10 до 50 ссылок. При достаточной посещаемости основного сайта и по прошествии некоторого времени у меня будет более чем достаточная статистика по пользователям данного сайта.
Если ты историю принципиально не хранишь, то тебе и на JS-реализацию должно быть почти наплевать - больше чем за текущую сессию всё равно ни кто и ни чего так не узнает. Но далеко не все ведь такие умные...

Отредактировано Lain_13 (01-04-2010 11:37:07)

Отсутствует

 

№1001-04-2010 11:56:14

luitzen
Участник
 
Группа: Members
Зарегистрирован: 19-07-2008
Сообщений: 791
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

Что-то нигде явно не сказано, что определённые CSS-свойства будут запрещены не только для :visited, но и для :not(:visited) :).

Отсутствует

 

№1101-04-2010 12:12:57

okkamas_knife
We are the Borg.       Resistance is futile.
 
Группа: Members
Зарегистрирован: 21-10-2009
Сообщений: 9558
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

эх.. кто бы написал расширение работающее следующим образом
1 получили страничку,начинаеем парсить весь исходник целиком на предмет запрещенных слов и регулярных выражений
2 после чистки отдаём её браузеру для рендеринга, как только появляется запрос на любой элемент проверяем его не текст ли он и если текст - сначала парсим потом передаём браузеру.
таким макаром можно былоб резать как скрипты  и цсс так и отдельные тэги и операторы.
решилась бы проблема с кучей зайцев,а если воткнуть не только обрезку но и замену то вообще кайф.
останется только сидеть писать правила.
куча дополненй блокирующих контент и меняющих вид страничек просто бы отпала и заменилась отдельными правилами.


я помню те времена когда обновления программ убирали проблемы и исправляли баги, а не добавляли их.
toxID:05AB9B827D896AACEE7FF4573A02FB8F025F46ADC856B98F65BC1BA9BD21A81DC98BA9C36CE3

Отсутствует

 

№1201-04-2010 12:16:19

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Minefield 3.7

Re: Защита от подглядывания через историю посещений...

luitzen
А ещё можно вывести ссылки одиночными символами-кубиками, вычислить размер одного кубика на канвасе и быстро просмотреть цвет точек по сетке. Если он будет визуально меняться, то даже если он не будет доступен из скрипта, то таким вот образом он доступен будет всегда.

Добавлено 01-04-2010 12:17:56
okkamas_knife
Помнится была такая локальная прокся. Пишешь правила замены регулярками и она на лету модифицирует страницы в соответствии с этими правилами.

Отсутствует

 

№1301-04-2010 12:29:26

luitzen
Участник
 
Группа: Members
Зарегистрирован: 19-07-2008
Сообщений: 791
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

Lain_13 пишет

А ещё можно вывести ссылки одиночными символами-кубиками, вычислить размер одного кубика на канвасе и быстро просмотреть цвет точек по сетке. Если он будет визуально меняться, то даже если он не будет доступен из скрипта, то таким вот образом он доступен будет всегда.

Lain_13, я не очень вас понял, но вот тут Wladimir Palant опасается canvas, а здесь David Baron говорит ему, что бояться нечего. Впрочем, там я тоже не очень понял.

Отсутствует

 

№1401-04-2010 12:32:55

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Minefield 3.7

Re: Защита от подглядывания через историю посещений...

luitzen
Они не дадут работать даже со своим собственным канвасом? О_о

Добавлено 01-04-2010 12:37:24
А, понял.

Отсутствует

 

№1501-04-2010 14:12:11

okkamas_knife
We are the Borg.       Resistance is futile.
 
Группа: Members
Зарегистрирован: 21-10-2009
Сообщений: 9558
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

pi.v.vitaly
О! надо попробовать.:D


я помню те времена когда обновления программ убирали проблемы и исправляли баги, а не добавляли их.
toxID:05AB9B827D896AACEE7FF4573A02FB8F025F46ADC856B98F65BC1BA9BD21A81DC98BA9C36CE3

Отсутствует

 

№1602-04-2010 17:43:15

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Minefield 3.7

Re: Защита от подглядывания через историю посещений...

Нашёл одну занимательную идею, которая теоретически позволит обмануть даже новую схему работы с посещёнными ссылками.
Я так думаю размер шрифта для посещённых ссылок менять не запретят, а это значит, что этим можно воспользоваться.
Идея состоит в том, что ссылки по одной помещаются в, например, DIV, в котором можно прокручивать содержимое. Для не посещённых ссылок устанавливаем размер шрифта в 1px, а для посещённых - максимальный. Ширину подбираем по самой длинной строке из базы ссылок. Таким образом если ссылка была посещена, то содержимое можно будет скороллить и если программно дёрнуть скролл и посмотреть его позицию, то позиция изменится.
Так же наверное можно размещать ссылку в ячейке таблицы и смотреть на изменение размеров ячейки.

Отсутствует

 

№1702-04-2010 18:25:23

luitzen
Участник
 
Группа: Members
Зарегистрирован: 19-07-2008
Сообщений: 791
UA: Firefox 3.6

Re: Защита от подглядывания через историю посещений...

Запретят.

Отредактировано luitzen (02-04-2010 18:25:42)

Отсутствует

 

№1802-04-2010 18:42:41

Lain_13
Забанен
 
Группа: Members
Откуда: Волшебная Страна
Зарегистрирован: 26-04-2006
Сообщений: 10320
UA: Minefield 3.7

Re: Защита от подглядывания через историю посещений...

luitzen
А где можно посмотреть полный список чего они там ещё запретят?

Добавлено 02-04-2010 18:44:03

Visited links can only be different in color

Ок, сам нашёл.

Отсутствует

 
  • Форумы
  •  » Firefox
  •  » Защита от подглядывания через историю посещений...

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]