вторник, 13 мая 2008 г.

Proxy тебя не спасет!

Оказывается "сесть на коня" очень даже легко. Я только что написал длиннющую статью, про прокси и когда уже добавлял подписку зависла опера - мама, не горюй, я готов был все метать и крошить - статья тянула страницы на 3. И как на зло, в черновик автоматически  сохранилось только название. Вот уж облом, так облом. 

     Остыл часок и попробую начать все с начала. Написать пост на эту тему, меня попросили читатели блога.  Но, как видите, название несколько странное, ну что не стандартное, так это точно. Я бы конечно мог написать о том, что какая это отличная вещь proxy-сервера и анонимайзеры, как с их помощью можно безнаказанно бродить по интернету, зная что твой IP не будет вычислен. Для тех, кто еще не в курсе, IP - это индивидуальный адрес пользователя в интернете, который ему назначается при подключении - именно на этот адрес и идет информация от серверов.

     Каждый раз, когда в окне браузера открывается страничка или закачивается файл, ваш компьютер пересылает свой IP-адрес туда, где эта страничка (файл) располагается. И только после этого сервер начинает высылать данные по адресу Вашего компьютера. Зная ваш IP можно вычислить очень многое, вплоть до вашего номера телефона и местонахождения. 

Так вот, я не буду писать о том как легко скрыть ваш IP-адрес, а знаете почему? Не хочу быть дешевым популистом и писать то, что другие хотят прочитать. Если вы до сегодняшнего дня считали, что для того, чтобы скрыть свой IP-адрес достаточно зайти через прокси или анонимайзер, или еще лучше построить цепочку из одних и других, то увы в этой статье я вас сильно разочарую и огорчу, хотя и не до конца. 

Данная статья не зря имеет название " Proxy тебя не спасет!", потому как, если не знать некоторых вещей, то это истина на все 100%.  Можно ли вычислить IP человека, использующего Proxy?. Да можно! Так давайте с вами посмотрим, какими такими способами это можно сделать, и что нам нужно предпринять, дабы наш IP всеже остался в секрете.

Cookies  Что представляет собой cookies. Это небольшая порция текстовой информации, которую сервер передает браузеру, который будет хранить её и передавать обратно, запрашивая очередную страницу. Некоторые значения “cookie” хранятся только в течение одного сеанса работы с сервером и удаляются после закрытия браузера. Другие записываются в файл, который, например, в Netscape называется cookies.txt и находится в его рабочей директории. Internet Explorer хранит каждое значение “cookie” в отдельном файле. 

Что дает cookie для определения proxy? IP адрес с помощью cookie не определить. Однако, при первом входе на web сайт, IP адрес клиента (определенный сервером, т.е. IP proxy) сервер может сохранить в cookies. А когда Вы в следующий раз входите на сайт, сервер вновь определяет Ваш IP и сравнивает его с сохраненным в cookies. И если IP адреса (старый и новый) различаются, сервер "может сделать выводы". И если Вы не запретите у себя cookies, никакой proxy Вам не поможет (анонимайзеры могут запретить cookies прямо у себя, не пропуская их к Вашему компьютеру). 

JavaScript / VBScript   Это специальные подпрограммы (скрипты), которые выполняются на компьютере пользователя. Поэтому как Вы ни настраивайте браузер (если только Вы не запретите выполнение активных сценариев - этих скриптов), Ваш реальный IP адрес скрыть не удастся. Эти скрипты являются простыми программами и обладают довольно ограниченным набором функций, однако теоретически они могут определить Ваш IP и множество различных настроек Вашего браузера. Кроме того, они (в принципе) могут даже изменить настройки Вашего браузера!

Защита от этих скриптов является многоступенчатой, Вы можете ограничивать доступ скриптов к тем или иным возможностям браузера. Однако наиболее надежным вариантом защиты является полный запрет выполнения активных сценариев. Запретить скрипты Вы можете и прямо в анонимайзерах.

Java В отличие от JavaScript, Java является полноценным языком программирования и (как следствие) программы на Java обладают значительно более широкими возможностями (в частности, это касается определения настроек Вашего браузера и различных функций для работы с Internet). То есть программы на Java могут легко определить Ваш IP и практически любые настройки браузера.

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


ActiveX и plug-ins - это подключаемые к браузеру модули и различные дополнения для браузера. Эти модули являются на самом деле полноценными программами, которые выполняются на компьютере пользователя. Поэтому они обладают гораздо более широкими возможностями, чем Java и JavaScript. Они могут легко определить любые настройки браузера, "вычислить" Ваш реальный IP адрес, и даже легко изменить настройки proxy!

Защитой от них является полный запрет ActiveX и запрет автоматической установки plug-ins.

RBL   Существует еще один довольно эффективный способ "вычислить" proxy сервер. Он не дает 100% гарантии (не все прокси можно определить таким образом), однако от него нельзя защититься, меняя любые настройки на своем компьютере.
В чем суть проверки proxy по RBL? В Intenet существуют так называемые "черные списки" ("блеклисты", RBL - Realtime Blackhole List), которые изначально были предназначены для борьбы со спамом (достаточно сделать поиск в Яндексе по фразе "что такое RBL", чтобы узнать об этом подробнее). В настоящее время в эти RBL вносятся не только SMTP сервера (через которые можно рассылать спам), но и многие прокси сервера (через которые также можно рассылать спам). Эти списки являются (как следует из названия: RBL - realtime) постоянно обновляемыми и наиболее оперативными (прокси сервер может попасть в них в течение нескольких часов после того, как через него был разослан спам).

Противостояние желающих быть анонимными в Internet с желающими знать все о своих клиентах будет вечным. Будут появляться новые средства для сокрытия информации о своих перемещениях по Сети и будут новые средства, "пробивающие" или "обходящие" эту защиту.

Защититься от определения Вашего IP можно несколькими способами: запретить cookies, запретить выполнение активных сценариев, запретить Java, запретить ActiveX, использовать соксификацию браузера. При этом вся информация, которую отправляет и принимает Ваш браузер (или другая программа), "перехватывается" и направляется на proxy сервер. Использовать "чистые" (т.е. еще не попавшие в RBL, non-RBL) прокси серверы. То есть каждый прокси перед использованием нужно проверить хотя бы в 1-2 (лучше в 10-20) наиболее популярных RBL. Есть специальные программы, которые позволяют проверять прокси на наличие в RBL.

В 1-м случае "пробить" такую защиту очень просто: достаточно построить сайт на основе Java / JavaScript / Cookies (например динамические меню и т.д.). В этом случае при отключении активных сценариев сайт станет просто "нерабочим" (а на web почту с отключенными cookies могут просто не пустить).

Во втором случае нет 100% гарантии, что Ваш IP будет действительно "спрятан". Объясняем подробнее: для определения Вашего IP есть 2 метода:
Java программа обращается напрямую в Internet, минуя proxy (она это может, даже если Ваш браузер настроен на работу через proxy) и сервер "сообщает" программе, какой у Вас реальный IP адрес
анализируются настройки Windows и IP адрес выявляется из настроек

Так вот, соксификация может защитить от 1-го способа определения IP, но не от 2-го!

В третьем случае, если IP адрес все-таки имеется в RBL (и сайт проверяет наличие IP клиента в различных RBL), то не поможет никакая анонимность прокси (даже high anonymous / socks4 / socks5), запрет ActiveX / Java / .... Главное - чтобы IP адрес прокси сервера был "чистым" ("не засветившимся" в "черных списках"). На данный момент (начало 2005 года) очень немногие сайты проверяют наличие IP адреса в RBL.
Так что же делать, если очень нужно и анонимным быть и чтобы Java / JavaScript / ActiveX были?

Давайте рассмотрим, в чем именно состоит суть задачи: чтобы, с одной стороны, анализируя настройки компьютера, нельзя было узнать реальный внешний IP адрес, и, в то же время, чтобы нельзя было подключиться в Internet напрямую (минуя анонимный proxy сервер).

Возможны 2 варианта решения этой проблемы:
Вам нужно организовать корпоративную сеть, со внутренними IP адресами (192.168.1.x или что-то в этом роде). Корпоративный proxy сервер (это другой компьютер и он имеет 2 IP адреса: внутренний и внешний) переадресует все запросы на анонимный бесплатный прокси (для того, чтобы это сделать, Вам нужны полномочия (и знания) системного администратора). Минуя корпоративный прокси, в Internet подключиться невозможно (поскольку у компьютера нет внешнего IP адреса), анализируя настройки компьютера - тоже. Если даже Java / ActiveX скрипт определит (и "выдаст" web серверу) Ваш внутренний IP адрес (192.168.1.x), это не раскроет Вашу анонимность. В общем, можно считать это 100% анонимностью.
Вам необходимо установить на своем компьютере Firewall, в котором запретить все соединения с Internet из браузера (кроме как с тем прокси сервером, который Вам нужен). При этом желательно сделать port mapping на этот бесплатный прокси сервер, а в браузере прописать "прокси" 127.0.0.1 и локальный порт из port mapping. Но тут возможна проблема - поскольку у Вас реальный и внешний IP адрес, он может быть передан серверу (скрипт проанализирует настройки Windows и "выдаст" Ваш IP).

 И последнее: любой proxy сервер (а тем более бесплатный) ведет лог-файл (протокол своей работы), в котором подробно расписано, какой IP адрес в какое время куда обращается. И человек (или организация), который располагает соответствующими полномочиями (доступом к любой информации) и запасом времени, всегда сможет выяснить, куда Вы ходили и что Вы делали, даже если Вы будете использовать цепочки из 10 анонимных proxy серверов в разных концах планеты.

В написании данного поста были использованы статьи, скаченные давным давно из интернета и осевшие на моем компе. Поэтому, адреса сайтов, увы уже вспомнить не могу. 

Понравилось?      подпишись на обновление блога

Еще почитать: 

Экономим деньги с помощью Skype

RSS - экономим время и деньги!

Google Maps - найди свой дом!

Как работает поисковая система?


3 коммент.:

Анонимный | 30 июля 2008 г. в 03:25  

Если человек не занимается ничем противозаконным ( не очень противозаконным :)) то ему вся эта лабуда не нужна.

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

Анонимный | 13 октября 2011 г. в 11:59  

Миллион рублей уже выплатил Упоминатор!

Анонимный | 2 июня 2017 г. в 08:34  

Юзаю паблики прокси для ускорения парсинга в кейколлекторе. По тратам — на прокси в месяц 370 (здесь беру https://kupit-proxy.ru/), на кей разовая трата 1700р, а в месячный выхлоп овер 60k за одно только составление семантического ядра

Tu comentario será moderado la primera vez que lo hagas al igual que si incluyes enlaces. A partir de ahi no ser necesario si usas los mismos datos y mantienes la cordura. No se publicarán insultos, difamaciones o faltas de respeto hacia los lectores y comentaristas de este blog.