The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

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

31.03.2010 22:09

Существует достаточно простая и в тоже время серьёзная проблема с использованием ссылок и истории посещения во всех существующих веб браузерах. Представим простую ситуацию - вы регулярно посещаете набор сайтов, а затем попадаете на 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 и выше.

  1. Главная ссылка к новости (http://blog.mozilla.com/securi...)
  2. OpenNews: Ресурс, демонстрирующий невозможность сохранения конфиденциальности в web-браузерах
Автор новости: Artem S. Tashkinov
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/26038-web
Ключевые слова: web, mozilla, firefox, security, privacy
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (21) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 23:23, 31/03/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >неотъемлемой частью стандарта HTML

    не html, а тогда уж вебдванольного г-на - css и javascript.

    >Если вы используете веб браузер Internet Explorer 8, то вы можете прочитать как предлагают решить эту проблему его разработчики.

    не судьба просто ссылки не проверять в истории?

     
     
  • 2.2, Иван Иванович Иванов (?), 23:29, 31/03/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > не html, а тогда уж вебдванольного г-на - css и javascript.

    a:visited был всегда ещё до прихода CSS и назывался VLINK, хотя да, без CSS/JS его не достать.

     
  • 2.4, Петр (??), 23:30, 31/03/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > не судьба просто ссылки не проверять в истории?

    Таки часто хочется видеть на сайте где ты был, а где ещё нет (я не говорю про шлак типа вконтакте/фейсбук, а про сайты насыщенные текстовой информацией).

     
  • 2.13, Below (ok), 10:19, 01/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    "вебдваноль" тут вообще никаким боком (!!!) не при чем!
     

  • 1.3, Аноним (-), 23:30, 31/03/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ура! Осталось ещё закрыть дефолтную возможность показать все сохранённые пароли при физическом доступе к браузеру.
     
     
  • 2.5, Иван Иванович Иванов (?), 23:31, 31/03/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Ура! Осталось ещё закрыть дефолтную возможность показать все сохранённые пароли при физическом
    >доступе к браузеру.

    master password ставить не пробовали?

     
     
  • 3.7, Аноним (-), 23:56, 31/03/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > дефолтную возможность
     
     
  • 4.8, йцукен (??), 00:07, 01/04/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А мастер-пароль не дефолтная разве?
     
     
  • 5.15, Аноним (-), 13:01, 01/04/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А мастер-пароль не дефолтная разве?

    и чему же равен мастер-пароль по дефолту?

     
     
  • 6.16, теоретик (?), 13:54, 01/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    А чему равны остальные пароли по дефолту?
     
     
  • 7.17, аноним (?), 15:37, 01/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    "password"
     

  • 1.6, pavlinux (ok), 23:51, 31/03/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    1 Апреля уже начинается!!! Ура товарищи!!!
     
     
  • 2.9, birdie (?), 01:36, 01/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Эта новость - не шутка, вы о чём?
     

  • 1.10, Аноним (-), 01:51, 01/04/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    v Chrome by takoe zhe.
     
  • 1.11, nazgul (?), 06:25, 01/04/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Фигнёй какй-то страдают. С ограничением стилей для посещённых ссылок будет
    очень удобно гуглить, когда непонятно станет смотрел ты уже выданную ссылку или нет..
    ИМХО так лучше поменять функцию getComputedStyle таким образом, чтобы для visited ссылок выдавался стиль дефолтной ссылки (пез псевдокласса visited). Во внешнем виде страницы при этом абсолютно ничего не поменяется, а скриптов, в которых действительно надо различать посещённую и непосещённую ссылку не так и много. Гораздо меньше людей пострадает при таком подходе.
     
     
  • 2.12, filosofem (ok), 09:09, 01/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Фигней какой-то страдает nazgul вместо того чтобы сабж прочитать.
     
  • 2.14, yerenkow (??), 10:52, 01/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Простой пример:
    непосещенные ссылки - шрифт моноспейс размер 1пкс, посещенные моноспейс 120 пкс.
    ссылки по одной фигачатся в скроллабельный див шириной чуть больше чем количество символов.
    а потом программно пытаются проскроллить этот див вправо, и узнать позицию скроллинга.
    Никакой getComputedStyle не используется, а используются косвенные визаульные изменения.

    А теперь вопрос, чем хакеру помешает ваше чудо-предложение переделать ответ от getComputedStyle?

     
     
  • 3.20, Aleksey (??), 12:43, 02/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Я так понял для внутренних движков все ссылки будут считаться непосещенными. Цвет для ссылок будет меняться в конце, причем к установленному цвету доступа изнутри не будет.
     
     
  • 4.21, Аноним (-), 13:25, 02/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Так вот "в конце", после всей отрисовки и начнётся жаваскрипт-экплуатирование.
     

  • 1.19, Аноним (-), 12:02, 02/04/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Одного не понял а как эти данные попадут к злоумышленнику?
     
     
  • 2.22, Sergey Kovalyov (?), 15:04, 14/04/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Вы еще не используете белый список для тех, кому разрешено запускать код (JS) на вашей машине?! Тогда мы идем к вам. И будем ходить и ходить. =)
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру