02 октября, 2014

Подключение Opera 12 через SSH. Настройка KiTTY и PuTTY

При работе с браузером, можно выделить две проблемы безопасности:

  1. Защита канала связи или его критической части;
  2. Защита локального окружения, в котором работает браузер.

Защита канала

Первая проблема связана с обеспечением приватности нашего доступа к сети или определенным узлам. Важные сайты должны быть с поддержкой защищенного соединения (SSL). В этом случае браузер покажет в адресной строке символ «замок». К нашему величайшему сожалению такую возможность поддерживают не все сайты и данные передаются в открытом, не зашифрованном виде. В том числе и данные авторизации (логин и пароль).

Даже если вы пользуетесь сайтами с поддержкой защищенного соединения, то для вашего поставщика сетевых услуг (провайдер или Wi-Fi точка) остается открытой информация о вашей истории посещений этих сайтов.

Выход — создание дополнительного канала, который будет гарантированно защищен, хотя бы на участке «последней мили», т.е. от вас к вашему провайдеру.

Защита локального окружения

Браузер может выполнять разнообразные скрипты, а также содержать (пусть и непреднамеренные) ошибки. У потенциального злоумышленника есть возможность воспользоваться уязвимостями, основанными на этих ошибках. Элементарные правила безопасности включают в себя:

  • Своевременно обновлять браузер и другие его компоненты, например Flash-плеер.
  • Не посещать опасные и неизвестные сайты.
  • Не запускать файлы если вы не уверены в них.

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

SSH-туннель

Мы можем создать защищенный канал от нас к удаленному компьютеру по протоколу SSH, и далее все запросы в сеть делать через него. Доступ к такому удаленному компьютеру мы можем купить у компании-хостера с услугой VPS. Возможно даже, что вы найдете такую услугу бесплатно. После регистрации и настройки VPS у вас должны быть данные авторизации на компьютере хостера используя SSH: логин и пароль (ситуацию с приватным и публичным ключами здесь не рассматриваем), а также адрес и порт этого компьютера.

Далее воспользуемся SSH-клиентом KiTTY или PuTTY. Кроме подключения к удаленному компьютеру по протоколу SSH, эти программы дают возможность другим программам подключаться к ним по протоколу SOCKS. Далее запросы перенаправляются по уже установленному SSH-соединению. Получается такая схема:

Браузер → SOCKS протокол → KiTTY → SSH протокол → VPS

Настройка KiTTY

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

Настройка KiTTY. Указываем адрес и порт удаленного хоста.

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

Настройка KiTTY. Указываем имя и пароль.

Укажем сжимать данные, чтобы экономить трафик. А также выберем для протокола SSH версию 2, если это позволяет удаленный компьютер.

Настройка KiTTY. Настройки сжатия трафика.

И наконец настройка туннеля. Снимем «галочку» с опции, позволяющей использовать туннель приложениям с других компьютеров. Укажем локальный порт SOCKS, к которому будет подключаться наш браузер. Вы можете указать любой доступный в вашей системе.

Настройка KiTTY. Туннель для локальных приложений.

После того как KiTTY подключится к удаленному компьютеру, он станет доступным для локальных приложений как SOCKS-сервер с адресом 127.0.0.1:11011.

Настройка Socks в браузере

Скачаем Opera 12 с сайта архива старых версий, выбрав наиболее новую из 12-ых, а также нужные язык и платформу (32/64bit). Например Opera v12.17.

Установим в папку %UserProfile%\AppData\LocalLow\Opera 12 for Safe Browsing\ как версию Portable.

Далее откроем в браузере страницу настроек opera:config и укажем данные для соединения с SOCKS сервером (укажите нужный порт).

Настройка «Use Remote SOCKS DNS Lookups» позволяет делать DNS запросы также через защищенное соединение.

Integrity Level как дополнительная защита

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

Папка %UserProfile%\AppData\LocalLow\ обеспечит нас дополнительной защитой. Так как у этой папки установлен Integrity Level (Уровень целостности) как Low (Низкий), то и приложение запущенное из нее будет иметь такой же Integrity Level. Мы вполне можем установить браузер в другую папку, после чего выставить для нее уровень целостности - icacls ПАПКА /setintegritylevel L. Такие настройки безопасности появились начиная с Windows Vista. При использовании Windows XP этот механизм не доступен. Более подробно искать по ключевым словам «Windows Integrity Level» или «Уровни целостности в Windows».

Небольшая справка. Приложения с Low Integrity Level могут изменять только:

  • Папку %UserProfile%\AppData\LocalLow\
  • Ветку реестра HKEY_CURRENT_USER\Software\AppDataLow

Так как доступ к другим папкам будет ограничен, то стоит создать папку %UserProfile%\AppData\LocalLow\Opera 12 for Safe Browsing\Download и указать ее в настройках Opera в качестве папки для скачивания. На рабочем столе можно создать ярлык на эту папку.

Ограничение браузера через Firewall

Дополнительной защитой будет ограничение браузера на доступные соединения. Разрешим ему подключаться только к SOCKS серверу. Установим правила для встроенного в Windows Vista/7/8 фаервола (укажите нужный порт):

set APP_NAME=Opera 12 for Safe Browsing
set APP_PATH=%UserProfile%\AppData\LocalLow\Opera 12 for Safe Browsing\opera.exe
set PORT=11011
netsh advfirewall firewall add rule name="%APP_NAME% (TCP-Out) Block All" dir=out action=block program="%APP_PATH%" protocol=tcp
netsh advfirewall firewall add rule name="%APP_NAME% (UDP-Out) Block All" dir=out action=block program="%APP_PATH%" protocol=udp
netsh advfirewall firewall add rule name="%APP_NAME% (TCP-Out)" dir=out action=allow program="%APP_PATH%" remoteip=127.0.0.1 remoteport=%PORT% protocol=tcp
netsh advfirewall firewall add rule name="%APP_NAME% (UDP-Out)" dir=out action=allow program="%APP_PATH%" remoteip=127.0.0.1 remoteport=%PORT% protocol=udp
Или скачать файл opera12-safe-add-to-firewall.bat

Комментариев нет:

Отправка комментария