Декабрь
24
2010

Заставляем Firefox шифровать трафик

Заставляем Firefox шифровать трафик

Пару дней назад в сети появилось видео о краже сессии вконтакте в публичной Wi-Fi сети. Это произвело немало обсуждений на различных ресурсах. Я уже долгое время использую плагин для Firefox HTTPS Everywhere, который перенаправляет запросы пользователей таким образом, что-бы они использовали зашифрованное соединение. Список поддерживаемых сайтов велик, но он не затрагивает отечественные ресурсы, к счастью разработчики реализовали создание собственных правил.

Этот пост будет написан задом наперед. Сначала я расскажу как проблему защиты в сети решить, а только потом порассуждаю о причинах самой проблемы.

HTTPS Everywhere

Плагин для Mozilla Firefox, который разработан организацией Electronic Frontier Foundation. Это некоммерческая организация, которая была основана еще в 1990 году, на заре интернета. Цели у организации самые благородные: защита приватности, анонимности, интеллектуальных прав и остальных важных вещей. Они то и создали плагин HTTPS EveryWhere, информация о нем есть среди других дополнений на сайте Mozilla, но ссылки на скачивание ведут на сайт организации.

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

После установки плагин сразу-же начнет отправлять на шифрование такие сайты:

  • DropBox
  • Google Search
  • Mail.com
  • Twitter
  • Amason S3
  • Gentoo
  • Google Services
  • Meebo
  • NYTimes
  • bit.ly
  • Hotmail / Live
  • Microsoft
  • PayPal
  • Wikipedia
  • Evernote
  • Mozilla
  • WordPress.com
  • Cisco
  • Facebook
  • Google APIs
  • и некоторые другие

Так-же есть стандартные правила, но при запуске они неактивны:

  • Amazon (работает с ошибками)
  • Facebook+ (расширенная версия шифрования в фейсбуке, но может мешать некоторым плагинам)

Создание правил

Конечно-же интернет не ограничивается этими сайтами, и каждый должен иметь возможность защитить свою среду серфинга, к сожалению не все сайты заботятся о своих пользователях и имеют возможность шифрованного использования. Например при заходе на https://vkontakte.ru получаем ошибку 403(запрещено), видимо администраторы этой социальной сети рады, когда воруют аккаунты их пользователей.

Ну от философии перейдем к делу, например в стандартной поставке нет правила для youtube.com, вот его мы и создадим.

Для начала нужно зайти в папку %AppData%\Mozilla\Firefox\Profiles\…\HTTPSEverywhereUserRules\ и создать там файл, например youtube.xml

В этом файле нужно написать:

<ruleset name="Youtube">
<target host="www.youtube.com" />
<target host="youtube.com" /></p>
<p style="text-align: justify;"><rule from="^http://(www\.)?youtube\.com/" to="https://www.youtube.com/"/>
</ruleset>
  • <ruleset name=»Youtube»> — имя, которое будет отображаться в настройках плагина
  • <target host=»www.youtube.com» /> — домен, который будет шифроваться. Для каждого субдомена нужно по правилу, но можно использовать звездочку (*), например *.youtube.com (но нельзя youtube.*)
  • <rule from=»^http://(www\.)?youtube\.com/» to=»https://www.youtube.com/»/> — это непосредственно само правило, которое имеет два параметра from и to. Первый отвечает за обработку введенной ссылки, второй за генерацию ссылки на шифрованную страницу. Для этого используются регулярные выражения JavaScript
  • <exclusion pattern=»^http://   «/> — в этом примере не используется, но служит для исключения адреса из шифрования.

После сохранения файла, необходимо перезапустить Firefox.

В самом конце я приведу несколько кодов, которые пригодятся пользователям рунета.

Самое сложное, это узнать что писать. Обычно это просто замена http, на https в адресе сайта, но бывает сложнее, например поисковый запрос из http://google.com превращается в https://encrypted.google.com. В этом поможет гугл, или FAQ нужного сайта.

Проблемы

Сам плагин находится в стадии бета и на сайте дополнений Mozilla предоставлена только ссылка на сайт авторов. Но это не самая большая проблема.

Самое неприятное то, что при использовании шифрованной страницы, Google не использует некоторые фишки поиска, такие как Google Instant. Но это не вина плагина.

Источник проблем

Откуда-же появилась эта проблема? Она не взялась вдруг, а существовала давно, просто о ней особо не вспоминали, и тут произошло стечение обстоятельств: открытые точки Wi-Fi в McDonalds, отсутствие шифрования у vkontakte.ru.

Открытые точки Wi-Fi

В открытых сетях все пакеты рассылаются на все устройства, а те под честное слово разбирают только свои. И если в проводной сети сложно прийти в чужой кабинет и воткнуть свой ноутбук, то в публичной беспроводной сети человек с ноутбуком не вызывает подозрений.

Далее нужно взять «нечестный» Wi-Fi, который позволяет получать данные адресованные другим клиентам в сети. Список таких устройств легко найти в интернете, либо найти сторонний драйвер, который реализует эту функцию у приличного устройства.

Далее берется программа сниффер, которая собирают и записывает всю информацию, летающую в пространстве.

Отсутствие шифрования у vkontakte.ru

Если раньше хакерам тяжело было ориентироваться в огромных потоках информации, то теперь легко найти лакомый кусочек по ключевому слову — куки vkontakte.ru, файлы, которые хранят данные авторизации пользователей, у приличных сайтов они шифруются, а вот vkontakte об это не задумывались.

Перехватив такой файлик, хакер подсовывает его своему браузеру и заходит на сайт, который не видит разницы между этими компьютерами (внешний IP адрес точки доступа один для всех, куки одинаковые). Теперь хакер может делать все что не требует ввода пароля. Хотя можно получить и пароль, достаточно уловить момент, когда пользователь его вводит. На представленном ниже видео хакер меняет фотографию пользователя, just for lulz, а не такие добрые люди отсылают спам, воруют личные данные и т.д.

Правила HTTPS Everywhere для сайтов рунета

Этот раздел будет пополнятся, по мере необходимости. Если вы используете какой-то сайт, и создали для него правило шифрования, то оставляйте в комментарии. Полезные сайты попадут в это список со ссылкой на сайт автора.

Yandex.ru

YandexRu.xml — Яндекс поддерживает шифрование практически для всех сервисов, я не нашел https версии у Главной страницы и страницы Виджетов. Возможно есть и другие, что-бы исключить какой-то сервис из принудительного шифрования достаточно создать новую строку exclusion, и вставить там этот адрес.

</p>
<p style="text-align: justify;"><ruleset name="Yandex.ru">
<target host="*.yandex.ru" />
<exclusion pattern="^http://www.yandex.ru"/>
<exclusion pattern="^https://wdgt.yandex.ru/"/></p>
<rule from="^http://([^/:@]*)\.yandex.ru/" to="https://$1.yandex.ru/"/>
</ruleset>
<p style="text-align: justify;">

Yandex.ua

Сервера для Украины, работают так-же как и российские. Если вы из Украины, то создайте файлик YandexUA.xml и вставьте туда код

<ruleset name="Yandex.ua">
<target host="*.yandex.ua" />
<exclusion pattern="^http://www.yandex.ua"/>
<exclusion pattern="^https://wdgt.yandex.ua/"/>
<rule from="^http://([^/:@]*)\.yandex.ua/" to="https://$1.yandex.ua/"/>
</ruleset>

Где небезопасно?

Написав статью я решил пройтись по популярным сайтам рунета и проверить у них наличие https версии. Результаты неутешительные.

  • M@il.ru — https://www.mail.ru не соединяется, https://win.mail.ru 403 Forbiden. Единственная спасительная палочка, это защищенная форма ввода пароля https://secure.mail.ru/
  • Rambler.ru — https тихо редиректится на http, а в помощи нет ни одного упоминания https
  • livejournal.com — https поддерживается только для формы ввода пароля и платежей
  • liveinternet.ru — про https ни слова, а https://www.liveinternet.ru не принимает соединение
  • rutube.ru — https редиректится на обычный http

Заключение

Используйте шифрование везде, где это возможно, а если ваш любимый сайт не поддерживает шифрование, то не используйте его в публичных местах.

Неправильная раскладка: pfcnfdkztv ашкуащч ibahjdfnm nhfabr

Понравилась статья? Посоветуйте друзьям!

Firefox Firefox plugin Google HTTPS Mozilla vkontakte.ru Безопасность Взлом социальная сеть Соцсети


Понравилась статья? Подпишись на рассылку по E-Mail или в RSS.
  • Думаю чем улучшать фаерфокс лучше полностью перейти на другой браузер. Вроде хром говорят в этом плане получше.
  • если на сайте ссылка без https, то независимо от браузера она будет небезопасной. даже хром не может сам по себе испоользовать https, на многих сайтах он не предусмотрен как таковой. Этот плагин все открываемые ссылки проверяет по созданной базе, и вставляет где можно https. В итоге если ты откроешь ссылку http://facebook.com, то все браузеры откроют нешифрованную страницу, а мой фаерфокс с плагином откроет шифрованную https://facebook.com
  • Можно использовать VPN с шифрованием, правда это стоит денег, и не понятно, поддерживает ли wi-fi такое. Или же попробовать на нетбуке поставить i2p клиент. Минус - нужно несколько минут ждать установки туннеля, непонятно, можно ли полностью доверять выходным прокси из i2p в обычный интернет.
  • Я читал про человека, который арендовал сервер на amazon и весь трафик пускал через него. Вариантов много, все дело в затратах. Плагин бесплатный, но работает только на сайтах, которые поддерживают шифрование. Аренда сервера стоит денег, но зато безопасны все подключения. Wi-Fi такое поддерживает, если админ специально не закроет.
  • а еще можно использовать браузер тор, неплохо защищается в базовом плане, если правильно настроить конечно, я сижу в москве, захожу на сцайт 2ip точка хрю а он мне рассказывает что я китаец ) ппц.. и прокси не пользую ) даже он сказал..