Xpoint
   [напомнить пароль]

Об анти-анонимайзере

Метки: [без меток]
[арх]
2005-10-27 18:04:16 [обр] Даниэль Алиевский(9/125)[досье]

У меня родилась идейка одного продукта, и хотелось бы заранее спросить: а не бред ли? Может, покритикуете? Буду благодарен :)

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

Стандартный метод борьбы - бан по IP-адресу. Но, к сожалению, нынче развелось столько анонимизирующих прокси, что метод не очень эффективен. Ушлому спамеру ничего не стоит автоматизировать автоматический перебор базы анонимных прокси и выбирать такой прокси случайно.

В порядке эксперимента, я изготовил несложный апплет, который пытается определить истинный IP-адрес клиента. Вот он: http://algart.net/system/showipinfo.pl?useJavaApplet Апплет соединяется с сервером на уровне сокетов, игнорируя всяческие прокси, и получает от сервера ответ: REMOTE_ADDR. Я проверил несколько анонимизирующих прокси, вроде бы их анонимность "не сработала". В случае же анонимизирующих web-сервисов, понятное дело, апплету не удается соединиться с сервером - домен оказывается недопустимым.

Идея продукта: JavaScript форума мог бы выяснять IP клиента с помощью такого апплета, а если это не получается (что свидетельствует о наличии серьезного анонимизирующего экрана), то запрещать отправку сообщений. Или, по крайней мере, придавать этим сообщениям статус "подозрительных" и показывать по каким-то другим правилам (простейший вариант - требовать для них ручной проверки модератором перед публикации). Если же IP удалось определить, то именно его можно использовать для бана - конечно, в сочетании с IP из цепочки x-forwarded-for.

Мне кажется, 99% "нормальных" посетителей, имеющих Java, не должны пострадать от этой схемы. По крайней мере, для форумов, рассчитанных на людей, выходящих на форум из дома и не защищенных мощными офисными брендмауерами. Конечно, решение требует обязательного наличия Java и JavaScript, но они есть и включены (по моей статистике) у подавляющего большинства посетителей. А те, у кого нет Java, ради возможности отправлять сообщения вполне могут и инсталлировать JVM - при нынешнем качестве Internet это недолго и несложно.

Покритикуйте, пожалуйста. Может быть, я где-то в корне неправ в своих предположениях? Или, может быть, есть способ без Java?

спустя 1 час 30 минут [обр] Давид Мзареулян(31/1003)[досье]
Error 3! java.net.SocketException: Network is unreachable: connect
Я так и не понял, с кем конкретно соединяется Ваш апплет и что именно он получает такого, чего нельзя получить обычным путём. Поясните?
спустя 7 минут [обр] Андрей Брайнин(3/127)[досье]
Апплет соединяется с сервером на уровне сокетов, игнорируя всяческие прокси

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

Идея продукта: JavaScript форума мог бы выяснять IP клиента с помощью такого апплета, а если это не получается (что свидетельствует о наличии серьезного анонимизирующего экрана), то запрещать отправку сообщений.

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

на мой взгляд, этих аргументов уже достаточно для отказа от данного метода.

спустя 1 час 14 минут [обр] Даниэль Алиевский(9/125)[досье]

Давид Мзареулян[досье]
Апплет соединяется с простейшим скриптом на сервере, единственная функция которого - вернуть переменную REMOTE_ADDR. Но соединяется не стандартным путем (которым обычно идет броузер, XMLHttpRequest и т.д.), а самым низкоуровневым - создавая сокет и отправляя GET-запрос в протоколе HTTP. Любые прокси при этом, разуеется, игнорируются.

Андрей Брайнин[досье] Ваше возражение, к сожалению, опирается на статистику, которая мне недоступна.

Скажем, если бы такой продукт в принципе работал только под FireFox, у которого, как хорошо известно, распространенность менее 10%, это было бы возражением. Да и то, нашлись бы форумы (тот же xpoint), где использование продукта имело бы смысл.

Но какова распространенность корпоративных прокси, прячущих исходный IP? Ибо если IP передается в x-forwarded-for, как это делают прокси известных мне городских провайдеров, то ситуация вполне нормальная. Сервер обнаружит, что IP, обнаруженный апплетом, соответствует IP из x-forwarded-for, и предложит для бана на выбор либо его, либо IP следующего уровня - IP маршрутизатора офиса.

Аналогично, какова вероятность, что апплет не сумеет соединиться с сервером? Сколько типичных пользователей потеряет типичный форум, посвященный, скажем, бэйсболу или здоровому питанию? 50%? Или 5%?

Согласитесь, очень многие владельцы форумов предпочтут навсегда потерять 5% своих посетителей, чем видеть свой форум заваленный матом и наездами какого-нибудь недоброжелателя. Да и вообще, разве такая уж неразрешимая проблема - найти способ, которым настоящие, уважаемые клиенты форума смогли бы писать туда даже при наличии корпоративного экрана? Если, конечно, это требуется лишь в исключительной ситуации.

спустя 19 минут [обр] Давид Мзареулян(31/1003)[досье]

Угу. И почему у меня тогда вылезла ошибка? Не потому ли, что модель безопасности апплета не обязана позволять такие фокусы?

Не знаю, по-моему, затея Ваша совершенно бесполезная, особенно учитывая обилие NAT-ов в современном интернете. Что уже, кстати, сделало бан по IP достаточно бессмысленным делом.

И как Вы до сих пор не поймёте, что Java-апплеты на публичных сайтах — это фактор скорее отпугивающий, потому что они чудовищно неудобны для посетителей! Если у меня не установлена Java, и какой-то форум будет постоянно требовать от меня её поставить, то я просто пошлю этот форум нафиг. А уж если она у меня установлена, и каждый раз, заходя на некий форум, вся моя система будет вставать по стойке «смирно»…

спустя 1 час [обр] Владимир Хоменко(0/67)[досье]

Давид Мзареулян[досье]

Неправда ваша. Я написал аналогичный апплет и вывесил его на своем очень посещаемом сайте (адрес говорить откажусь, но в первую 1000 самых посещаемых сайтов интернета он попадал). Количество посетителей ни на малость не уменьшилось. Естественно, что апплет я подгружал только у тех, у кого гарантированно стояла JVM и естественно, что подгрузку апплета я максимально скрыл от пользователя.

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

Идея, как мне кажется, неплохая, только не надо настойчиво пихать этот апплет прямо на главной (я утрирую).

спустя 1 час [обр] Давид Мзареулян(31/1003)[досье]

Интересно… Но вроде же по умолчанию JVM сейчас в IE не стоит. И всё равно ловились?

Кстати, а нельзя аналогичную штуку сделать на флэше? Он, вроде, тоже умеет коннекты открывать?

спустя 41 минуту [обр] Андрей Брайнин(3/127)[досье]

Даниэль Алиевский[досье]

  1. корпоративный прокси.

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

  1. маскарадинг и/или IP трансляция.

принципиально проблемное место для вашего метода, т.к. IP адрес, который вы получите на клиенте не будет соотвествовать IP-адресу, который "видит" сервер.

далее:

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

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

Да и вообще, разве такая уж неразрешимая проблема - найти способ, которым настоящие, уважаемые клиенты форума смогли бы писать туда даже при наличии корпоративного экрана?

 
вот тут стоп.
я критиковал метод (передача IP по "прямым" каналам), но не идею. найдете приемлимый способ - поделитесь. обсудим.

спустя 8 часов [обр] Алексей Полушин(1/231)[досье]
Даниэль Алиевский[досье]Во многих корпоративных и во многих "домашних" сетях используются "серые" ip-адреса 192.168.x.x или 10.x.x.x При наличии nat'а ваш аплет определяет наружный ip адрес. Так что в этом случае вы забаните всю сеть. Ну и на самом деле в корпоративных сетях бывает и так что nat'а нет, для выхода наружу есть только прокси (изначально прокси именно для этого и делались).
Ну и с dialup пользователями тоже непонятно. С одной стороны, спамер дозванивается еще раз и получает новый адрес. С другой стороны, другой дозвонившийса пользователь может получить старый адрес и быть несаслужено забаненым.
Вот если бы аплет умел определять MAC адрес сетевой карты...
спустя 1 час 27 минут [обр] Давид Мзареулян(31/1003)[досье]
Андрей Брайнин[досье]Алексей Полушин[досье] Немного вступлюсь за Даниила: господа, вы, кажется, немного неправильно понимаете основную идею (я сам тоже не сразу понял её правильно). Суть не в том, чтобы определить мифический «истинный IP» юзера — понятно, что во многих случаях его не существует. Суть в том, чтобы отловить случай, когда юзер НАМЕРЕННО ходит через внешний прокси, хотя имеет возможность ходить («напрямую», конечно, условно). Если это так И если прокси при этом анонимизирующий, то высока вероятность того, что юзер — злоумышленник.
спустя 1 час 6 минут [обр] Даниэль Алиевский(9/125)[досье]

Спасибо за столь активное обсуждение. По пунктам.

Давид Мзареулян[досье]

И как Вы до сих пор не поймёте, что Java-апплеты на публичных сайтах — это фактор скорее отпугивающий, потому что они чудовищно неудобны для посетителей! Если у меня не установлена Java, и какой-то форум будет постоянно требовать от меня её поставить, то я просто пошлю этот форум нафиг. А уж если она у меня установлена, и каждый раз, заходя на некий форум, вся моя система будет вставать по стойке «смирно»…

Ну почему же не пойму, меня тоже апплеты порой пугают на собственной главной странице :) Именно из-за вполне ощутимого торможения при первом заходе. Странно, конечно, что даже на моем не самом старом компьютере это чувствуется. Но все-таки я думаю, что на такого рода факторы не следует опираться при разработках, особенно если речь идет о чем-то для будущего. Все-таки мощность компьютеров растет быстрее, чем объем Java-машины. А броузер мой грузится все же гораздо дольше, чем JVM.

Конечно, речь идет о том, что апплет будет грузиться динамически, когда страница уже появилась и посетитель занимается написанием своего сообщения в форум. А вот если JVM нет (что, повторяю, для случайной аудитории большая редкость) - это повод либо предложить ее поставить, либо пойти другим путем. См. далее.

Интересно… Но вроде же по умолчанию JVM сейчас в IE не стоит.

Вроде. А однако ж:
Статистика присутствия в броузерах версий JVM (314534)
Процент без-Java-ских компьютеров, кажется, растет.

Но, с другой стороны, растет и типичная скорость Internet. Уже сейчас для очень многих не проблема подождать пару минут, пока закачается ActiveX или плагин с JVM от Sun. Благо сей процесс вполне автоматичен: ничего, кроме ожидания, делать не надо. А в это время можно писать свое сообщение.

Кстати, а нельзя аналогичную штуку сделать на флэше? Он, вроде, тоже умеет коннекты открывать?

Это и мне интересно. К сожалению, никогда с его скриптами дела не имел - насколько низкоуровневые у него коннекты? Если сама идея продукта окажется стоящей, то, конечно, иметь более "легкую" альтернативу Java будет полезно.

Андрей Брайнин[досье]

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

Такое и правда бывает. Кажется, я тоже с этим сталкивался. Ну что тут можно сделать...
Впрочем, такую ситуацию, может быть, можно как раз считать корректной и легальной. А именно: когда апплет заведомо находится на правильном URL (то бишь не используются веб-анонимайзеры), нормальный доступ к сайту есть, а апплет не может соединиться. Если бы это был анонимизирующий прокси, то это был бы один из базы бесплатных прокси по всему миру, и апплет должен был бы иметь возможность достучаться до сервера.

  1. маскарадинг и/или IP трансляция.
принципиально проблемное место для вашего метода, т.к. IP адрес, который вы получите на клиенте не будет соотвествовать IP-адресу, который "видит" сервер.

Если все это делается не с целью спрятать клиента, то IP-адрес, который увидит апплет, так или иначе будет светиться в цепочке x-forwarded-for. Ну а если с целью спрятать - то как раз с этим мы и боремся.

> Да и вообще, разве такая уж неразрешимая проблема - найти способ, которым настоящие,
> уважаемые клиенты форума смогли бы писать туда даже при наличии корпоративного экрана?
 
вот тут стоп.
я критиковал метод (передача IP по "прямым" каналам), но не идею. найдете приемлимый способ - поделитесь. обсудим.

Да что-нибудь совсем простое. Скажем, у гостевой есть два входа - один открытый, другой запароленный (хотя бы обычной http-авторизацией). Открытый вход защищен анти-анонимайзером: послать что-либо при наличии любой анонимизации либо при отсутствии Java+JavaScript невозможно. (Разумеется, сама отправка происходит через JavaScript методом POST.) А люди, которым модератор сайта доверяет, получают от него персональный секретный пароль для закрытого входа.

Алексей Полушин[досье]
Конечно, при наличии dialup или домашней сети бану подлежит сеть целиком. Это вовсе не такая беда, как кажется. Типичный форум имеет менее 10000 посетителей в день, и они разбросаны чуть ли не по всему миру. Вероятность, что два пользователя случайно окажутся в одной сети, очень мала.

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

Впрочем, например, мои логи показывают довольно много адресов типа 10.x.x.x, переданный в x-forwarded-for. Видимо, нормальные корпоративные сети честно передают внутренний адрес, и его можно использовать для уточнения бана.

И опять вам, Давид:
Давид Мзареулян[досье]

Суть не в том, чтобы определить мифический «истинный IP» юзера — понятно, что во многих случаях его не существует. Суть в том, чтобы отловить случай, когда юзер НАМЕРЕННО ходит через внешний прокси, хотя имеет возможность ходить («напрямую», конечно, условно). Если это так И если прокси при этом анонимизирующий, то высока вероятность того, что юзер — злоумышленник.

Вы совершенно правы, надо с максимальной достоверностью отловить случай использования анонимизатора. По возможности, не помешав 99 процентам прочих пользователей. А отловив, либо преодолеть (выдать серверу истинный IP), либо заблокировать доступ.

спустя 1 час 8 минут [обр] Андрей Брайнин(3/127)[досье]

Даниэль Алиевский[досье],Давид Мзареулян[досье]:

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

Это все лирика. Физика в том, как это сделать. Предложенный метод основан на определении "локального" IP и сравнении его с тем, что видит сервер в x-forwarded-for. Если не совпадает - бан.
В обеих описанных мной ситуациях этот метод не будет работать по двум причинам:

  1. если прокси - единственный выход в Сеть: невозможно передать "локальный" IP описанным методом (правда можно другим - через тот же прокси).
  2. NAT, маскарадинг: в x-forwarded-for попадет не "локальный" IP, который определит аплет, а уже транслированный IP (т.е. отличный от локального).

т.е. будут ложные срабатывания. вот уже причина по-сереьезней.
к этому пункту еще ремарка для Алексей Полушин[досье]:

При наличии nat'а ваш аплет определяет наружный ip адрес.

 
При наличии NAT аплет определит именно внутрений адрес. Внешний адрес известен только транслятору и виден только снаружи.


и еще: если мне (легальному, на мой взгляд, пользователю) по-любым причинам затруднен доступ к форуму (а он будет затруднен т.к. метод не гарантирует мне 100% доступа) я просто найду другой форум, а этим пользоваться не буду. ибо зачем напрягаться, если можно не напрягаться?
пусть напрягаются модераторы :)

спустя 58 минут [обр] Давид Мзареулян(31/1003)[досье]

Андрей Брайнин[досье] При наличии NAT-а апплет определит именно наружный адрес.

Даниэль Алиевский[досье] Нет, в самом деле, если эту штуку окажется возможным реализовать на флэше, будет неплохо:)

спустя 33 минуты [обр] Alexander O(3/460)[досье]
Суть в том, чтобы отловить случай, когда юзер НАМЕРЕННО ходит через внешний прокси, хотя имеет возможность ходить «напрямую»
Так ведь злоумышленнику не составит особого труда прикинуться хорошим пользователем, у которого "нет возможности ходить напрямую".
Тогда вся эта защита не только не имеет смысла, но и вредна, поскольку доставляет неудобства хорошим пользователям.
спустя 34 секунды [обр] Андрей Брайнин(3/127)[досье]
Давид Мзареулян[досье] <[При наличии NAT-а апплет определит именно наружный адрес.]>
непонятно почему.
аплет запускается на машине пользователя, которая имеет приватный адрес, который и доступен аплету.
а собственно трансляцией занимается шлюз, который и знает наружный адрес, который аплету недоступен.
я что-то неправильно понимаю?
спустя 11 минут [обр] Владимир Хоменко(0/67)[досье]

Андрей Брайнин[досье]

Вы неправильно поняли идею. Апплет не имеет возможности узнать IP адрес компьютера по соображениям безопасности. Однако апплет может установить соединение с сервером, с которого этот апплет запущен ( и только с ним). Соответственно открывается простой сокет безо всяких проксей, который делает обычный GET запрос к скрипту, который занимается единственно тем, что выводит $_SERVER['REMOTE_ADDR']. Поэтому апплет будет знать внешний адрес.

спустя 16 минут [обр] Андрей Брайнин(3/127)[досье]

Владимир Хоменко[досье] о! спасибо. теперь понял.


признаю несостоятельной свою аргументацию в случае с NAT.

спустя 1 час 7 минут [обр] GRAy(2/259)[досье]

Очень интересная дискуссия ;)
Попробую упорядочить своё понимание предлагаемого решения:
На странице лежит аплет, который узнаёт IP адрес той машины, с которой запросили эту страницу. Этот адрес может быть:

  1. адресом общего для подсети, в которой находится данный компьютер, прокси, как правило прозрачного, т.е. не скрывающего "настоящий" адрес, и сохраняющего его в x-forwarded-for.
  2. "настоящим" внешним адресом сформированым NAT.
  3. совсем "настоящим" статическим или динамическим IP (т.е. без NAT).

JavaScript сравнивает адрес полученый от аплета с таблицей адресов, которую сформировал сервер на основе x-forwarded-for отдавая страницу. Если адрес в таблице присутсвует, значит пользователь не пытается скрыть своё происхождение и ему позволено писать в форум всё что заблогорассудится. Если адреса нет, то, в самом простом случае, пользователю запрещается писать сообщения вообще.
Возможные сложности и пути их преодоления:

  1. Отключена или не установлена JVM - уведомляем пользователей (на главной странице), что мол наш сайт будет считать вас злоумышленником, если вы не включите/установите JVM.
  2. Отключен javascript - аналогично 1.

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

Если я где-то не правильно понял, плиз, поправьте меня.
ИМХО, идея жизнеспособная :)

спустя 1 минуту [обр] Давид Мзареулян(31/1003)[досье]
Alexander O[досье] Если прикинется — нет проблем, посчитают его честным. А вот как эта защита «доставит неудобства хорошим пользователям» — непонятно.
спустя 3 часа [обр] Alexander O(3/460)[досье]
Давид Мзареулян[досье] когда на странице появляется java-апплет мой Firefox почти подвисает на некоторое время — пока jvm загружается. Это неприятно.
спустя 16 минут [обр] Давид Мзареулян(31/1003)[досье]
Alexander O[досье] C этим не спорю. Это то, что и мне сильно не нравится.
спустя 31 минуту [обр] Владимир Палант(80/4445)[досье]

Даниэль Алиевский[досье]
Проблема именно в этом — вам придется признать легальными случаи, когда апплет не сможет установить прямое соединение с сервером. А тогда любой персональный файрволл может сделать вашу идею бесполезной, достаточно разрешить браузеру соединяться только с прокси.

Что касается спама, то большинсво спама в форумы/блоги рассылается автоматически, а автомат никаких апплетов грузить просто не станет. Так что ваша идея — исключительно средство борьбы с индивидуальными пользователями, но никак не со спамом.

GRAy[досье]
Ага, требовать установки JVM для пользования форумом. Новое слово в веб-программировании...

спустя 47 минут [обр] GRAy(2/259)[досье]
Владимир Палант[досье] Флеш тоже требует установки плагина, что-то я не особо наблюдаю поголовного отказа от использования его на сайтах. :)
спустя 7 минут [обр] Владимир Палант(80/4445)[досье]
Флеш практически никому не нужно устанавливать, у всех уже и так стоит, пусть и не самый новый. Кроме того, флеш запускается моментально.
спустя 1 минуту [обр] Владимир Палант(80/4445)[досье]
сообщение промодерировано
PS: И я еще ни разу не видел форума с сообщением: "для использования этого форума вы должны установить Macromedia Flash". А если бы увидел — угадайте, куда бы я его послал?
спустя 30 минут [обр] GRAy(2/259)[досье]
Владимир Палант[досье] А если бы это был X-Point? ;) Всему есть цена. Если вы (я), как владелец сайта предпочитаете потерять часть посетителей (ленивую - потому что хочет чтобы всё было сразу, параноидальную - потому что боится апплетов и javascript как огня, и вместе с ними маргиналов разнообразных) вместо того, чтобы нести постоянные издержки по очистке форума от "падонкоф" ;) это ваше (моё) право. Кто-то пойдёт на это, кто-то нет. Вы рассуждаете с точки зрения пользователя, а Даниил[досье] с точки зрения владельца ресурса. И надо сказать, что вы нетипичный пользователь интернета в лучшем смысле этого слова ;)
спустя 41 минуту [обр] Oleg(0/12)[досье]
GRAy[досье] Сравните размер файла Flash и Java плагина. Flash: 968 K, Java:15.08 MB Уговорите посетителя, что для того, чтобы попасть на Ваш форум, он должен скачать 15 МВ. Все-таки большинтство в exUSSR видимо использует dial-up и платить повремени или за траффик.
спустя 14 часов [обр] Алексей В. Иванов(28/2861)[досье]
На самом деле, сейчас флэш не имеет никаких низкоуровневых средств для работы с сокетами. Только в Flash Player 8.5 alpha есть эта поддержка flash.net.Socket (данный плеер пока стоит только у разработчиков). Но соединиться с чужими хостами, на которые у плеере не будет разрешения не получится. То же самое с портом — ниже 1024 нельзя.
Да и весить новый плеер будет больше двух мегабайт, т.к. разработчики целиком поменять весь язык (из JS стала полноценная Java), соответственно, в скачиваемом плагине будет два различных модуля: ActionScript Virtual Machine 1 и AVM2.
спустя 1 час [обр] Давид Мзареулян(31/1003)[досье]
Алексей В. Иванов[досье] А как же XMLSocket?
спустя 1 час 49 минут [обр] Алексей В. Иванов(28/2861)[досье]
Перечитал тред, понял, что требуется. Про "чужие хосты" я зря сказал. Вполне возможно, что XMLSocket подойдет. Низкоуровневой работы никакой не надо даже.
спустя 1 час 46 минут [обр] Давид Мзареулян(31/1003)[досье]
Алексей В. Иванов[досье] Ну, в общем, да. Я почему-то боялся, что он может пойти через тот же прокси, что и в браузере прописан, но т.к. есть ограничение на порты, то коннект всё-таки должен идти напрямую. Осталась ерунда — чтобы кто-то это написал:)
спустя 2 часа 3 минуты [обр] Алексей В. Иванов(28/2861)[досье]
Для написания приложения под XMLSocket надо на сервере держать запущенного демона, который порт слушать будет, а это зачастую невозможно.
спустя 51 минуту [обр] Сергей Чернышев(39/589)[досье]
А XMLSocket уже имеет ниже 1024 жить? Я в свое время от него именно поэтому и отказался, а такой чат был на нем хороший ;)
спустя 6 часов [обр] Давид Мзареулян(31/1003)[досье]

Алексей В. Иванов[досье] Ну, для кого невозможно, тот и не будет пользоваться:)

Сергей Чернышев[досье] Нет, не умеет, конечно.

спустя 48 минут [обр] Сергей Чернышев(39/589)[досье]
Давид Мзареулян[досье]
Вот и мне так казалось, а то выше именно это описывалось как недостаток.
спустя 1 день 11 часов [обр] Даниэль Алиевский(9/125)[досье]

Ничего себе, сколько постингов :)

Насколько я понял, каких-то новых подводных камней пока не обнаружено. Зато выяснилось, что есть шансы сделать то же самое на flash, за что отдельное спасибо Давиду. Значит, будем разбираться - по крайней мере с какой-то версии. Хотя, конечно же, я бы предпочел, чтобы нужный ответ на сервере мог формироваться на нормальном порту. Не очень я понял, в чем тут нарушение security. Почему то, что можно Java-апплету, нельзя flash-ролику?

В плане общей целесообразности и "создания проблем хорошим пользователям". Предлагаю рассмотреть следующую модельную ситуацию. Предположим, есть некий Боб (сокращенно Б), которому чем-то очень насолил уважаемый Андрей Новиков (сокращенно А). Предположим, далее, что Б:

  1. хочет уничтожить форум xpoint или хотя бы максимально навредить ему;
  2. достаточно легкомыслен, чтобы не слишком дорожить своей репутацией в Internet-сообществе, и не очень боится уголовного преследования - т.е. готов рискнуть тем, что его таки вычислят;
  3. не считает спамить и ругаться ниже своего достоинства;
  4. умеет программировать.

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

Что делает Б? Все очень просто. Он отыскивает пополняемую базу из нескольких тысяч анонимизирующих прокси. Также он запасается несколькими сотнями легальных почтовых ящиков и базой ругательств - точнее (учитывая системы обнаружения мата), вполне литературных текстов, в которых популярно разбираются интимные подробности из жизни уважаемого А и прочих участников xpoint.

Наконец, программируется робот, который при наличии логина и пароля пишет в xpoint раз в минуту эти самые ругательства, случайно переключая прокси.

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

Как думаете, сколько проживет форум xpoint при таком раскладе? И согласится ли уважаемый A в подобной ситуации потерять даже четверть своих посетителей, у которых нет Java или которые спрятаны за FireWall, но все-таки прекратить поток спама?

Я уже слыщал минимум об одном реальном случае, подобном описанному.

Еще раз благодарю за дискуссию.

спустя 1 час 6 минут [обр] Александр Самойлов(5/342)[досье]
Даниэль Алиевский[досье]
В таком случае форум просто переключается на осадное положение и при отправлении сообщения надо будет распознать картинку.
спустя 5 часов [обр] Даниэль Алиевский(9/125)[досье]
Александр Самойлов[досье] И долго бы это положение продлилось? Год? Два? А если злопыхатель готов помогать своему роботу и вручную распознавать картинку при каждом ругательстве? Подумаешь, потратить одну минуту ради очередной гнусной инсинуации в адрес А... Раз уж сильно хочется.
спустя 13 часов [обр] Юрий Щапов(0/114)[досье]
Показывать сообщение только ему до проверки модератором? Помнится, Дмитрий Котеров именно так и советовал поступать.
спустя 1 час 45 минут [обр] Даниэль Алиевский(9/125)[досье]

Юрий Щапов[досье] Ага, а модераторы, стало быть, должны круглосуточно дежурить и вовремя публиковать сообщения, чтобы дискуссия хоть сколько-то напоминала дискуссию... За бесплатно. А есть ведь форумы - и неплохие форумы, - у которых всего один модератор, занимающийся форумом пару раз в неделю в свободное время.

Я, собственно, лишь хотел обратить внимание, что продукт, о котором речь, рассчитан на владельцев форумов, у которых возникли реальные проблемы (или они опасаются возникновения проблем) и они ищут путей их решения. Покуда на xpoint тишь да гладь - это не нужно. А когда проблема уже есть, всякое решение, не убивающее форум напрочь, может оказаться ценным. Пока вроде из данной дискуссии получается, что требование Java+JavaScript (или, лучше, Flash+JavaScript) в сочетании с требованием возможности сокетного соединения не является "убивающим напрочь". Это радует.

Интересно, а никто не слышал об альтернативных схемах борьбы с анонимайзерами? Скажем, лет 5 назад, пытаясь зарегистрироваться в dmoz.org из офиса, я получил странное сообщение об ошибке "невозможно определить ваш IP-адрес". Из дома (по dial-up) все получилось без проблем. Я тогда не смог выяснить, в чем дело. Апплетов там, вроде бы, не было.

спустя 9 минут [обр] Давид Мзареулян(31/1003)[досье]
Давным-давно я слышал идею инициирования перехода по протоколу telnet://. То же самое, в общем.
спустя 1 час 16 минут [обр] Александр Самойлов(5/342)[досье]
Даниэль Алиевский[досье]
Это security by obscurity. Пока метод не получит более менее приличного распространения он будет помогать. К тому же хакер способный написать робота рассылающего сообщения через анонимные прокси способен найти и установить ПО которое и запрос от апплета будет направлять на анонимный прокси.
спустя 14 минут [обр] Александр Самойлов(5/342)[досье]

Даниэль Алиевский[досье]
Конечно распознавание картинки не лучший выход. Ибо неудобства начинают испытывать все.

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

спустя 1 час 38 минут [обр] Даниэль Алиевский(9/125)[досье]

Александр Самойлов[досье]

Это security by obscurity. Пока метод не получит более менее приличного распространения он будет помогать. К тому же хакер способный написать робота рассылающего сообщения через анонимные прокси способен найти и установить ПО которое и запрос от апплета будет направлять на анонимный прокси.

Да не хакер это, а "самый обычный тип". Требование "уметь программирование", собственно, необязательно, его с успехом заменяет требование "наличие свободного времени, чтобы целый день целенаправленно гадить". Умение программировать полезно лишь как средство элементарной автоматизации. Хакер, как я уже говорил (насчет профессионала), мог бы и вирус написать.

Но возражение, в теоретическом плане, серьезное. Спасибо. Ибо, и правда, если предположить, что я могу написать броузер полностью, вместе с его JVM, то вроде бы неясно, как можно помешать мне притвориться, что мой IP есть IP анонимного прокси.

спустя 1 час 4 минуты [обр] Давид Мзареулян(31/1003)[досье]

Защита от гоблинов — задача почётная, но всё-таки это скорее форсмажор. Мне кажется более практичным применение, о котором упомянул Владимир Хоменко[досье]:

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

А вот это уже серьёзно.

спустя 2 дня [обр] Даниэль Алиевский(9/125)[досье]

Все это звучит, конечно, неплохо. Спасибо за мнения.

Но и не очень хорошо.

Да, фатальных изъянов в моей идее, кажется, пока не замечено. Но никто и не говорит - "да, конечно, это очень нужно". А ведь здесь, наверно, немало держателей различных форумов.

Опасаюсь я, что сделаю некий продукт, требующий неких усилий для своего использования (хотя бы прописывания нескольких строк на JavaScript), а потом выяснится, что никто им пользоваться не желает. Например, из-за иъянов, которые, может, и не столь важны на самом деле, но "противоречат моде". Скажем, из-за риска потерять некоторое (неизвестное) количество посетителей форума. Типичная ситуация, однако :) Затем и завел здесь предварительное обсуждение.

Уважаемые коллеги, что скажете? Нужно это кому-нибудь или нет?

Я, кстати, даже не собираюсь (пока) делать продукт платным. Я бы предпочел сделать его частью WebWarper - если кто-то готов оптимизировать свой сайт с помощью сервиса WebWarper, то путем добавления пары строк в HTML он может получить на свой форум или гостевую анти-анонимайзер.

спустя 4 часа 24 минуты [обр] Alexander O(3/460)[досье]
Даниэль Алиевский[досье] на мой взгляд, создавать такой продукт то же самое, как ставить запертые ворота посреди поля без забора.
спустя 1 час 4 минуты [обр] Даниэль Алиевский(9/125)[досье]

Где-то ведь я видел такие ворота, однако :) Посреди поля или леса. Точно видел. Стало быть, есть в этом смысл, раз это кому-то нужно! :)

Жду еще мнений - нужно ли кому-нибудь...

спустя 11 минут [обр] Владимир Палант(80/4445)[досье]
Не замечал такой надобности. Регистрация достаточно эффективна. Помню лишь один случай, когда кто-то серьезно попытался обойти бан в форуме с регистрацией, причем сделал он это не с помощью прокси — просто каждый раз использовал другого провайдера. В Германии их великое множество, причем большинство не требует предварительной регистрации.
спустя 21 день [обр] lance10t[досье]

анти анонимайзер нужен!..

и вот где,
где дело доходит до е-комерс и оплаты по карточкам..

последнее время развелось уж очень много умников заказывающих товары по левым ворованным кредиткам..
а проверять все кредитки специальным запросом в банк, у владельцев сайтов нет сил.
поэтому сайт должен помогать владельцу ну хотябы сигнализируя както что человек подозрительный, и его стоит проверить,
ну и конено 100% этих умников использую ананимайзеры и проксюхи..
10% это провесионалы на соксах сидят и их выловить трудно
но 90% чумаходов просто пользуютя проксей в браузере.

протев этих товарищей была придумана следующая схема.

в код странички встраивается ну как обычно
<link css > внешний цсс файл
в этом цсс гдето запрятана следующая строка
background-image: url(ftp://www.example.com:80/chekpoint_1234567890ABCDEF.gif);

как вы поняли браузер предпримет попытку выкачать по фтп картинку установис соединение на вполне "легальный" 80 порт, те этоо не вызывает у файрвола никаких подозрений...
ftp обычноне проксируется..
"1234567890ABCDEF" это номерок по которому будет опознан этот дружок..
и по которому и будет произведено сверение IP адресов,
те у обычного человка оба и http и ftp адреса будут одинаковые.. у засранцев они разные.
также цсс кешируется,!
и как вы понимаете может прекрасно использоваться для скрытой идентификации
параноиков кторые отключают куки ... =)
чтобы сайт их не узнавал =))..
бу га га га...

спустя 54 минуты [обр] Александр Самойлов(5/342)[досье]
Что мешает "проксировать" и ftp? А как использовать вместо куки?
спустя 6 часов [обр] lance10t[досье]

"А как использовать вместо куки?"
думаю что Вместо куки не получится...
а для слежки пойдет, те запрос то к css будет после того как html уже отправлен

"Что мешает "проксировать" и ftp?"
больинсто публичных проксей, проксируют именно какойто 1 протокол обычно в нете какраз такие серверы и стоят http'шные...

спустя 4 дня [обр] Даниэль Алиевский(9/125)[досье]

lance10t[досье]
Я тут что-то не понял. Ведь форма для указания номера кредитки всегда лежит на защищенной странице - HTTPS. Разве анонимайзеры работают через HTTPS?

Если и работают, то мое решение здесь все равно не поможет. Я планирую базировать анти-анонимайзер на сервисе WebWarper, который по определению может работать только с HTTP-протоколом.

Жаль, что так мало интереса. Кстати, можно анти-анонимайзер рассматривать и с другой точки зрения: как средство максимально надежного определения IP посетителя. А уж что делать с этим IP, другой вопрос. Может быть, в логи записывать...

спустя 31 минуту [обр] Даниэль Алиевский(9/125)[досье]

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

Собственно, у меня уже есть предложение для веб-авторов: я предлагаю им обеспечить просмотр своего сайта через WebWarper или даже ТОЛЬКО через WebWarper, дабы посетители радовались меньшему трафику и защите от вирусов. (Подробности смотрите на моем сайте - найти легко. Прямые ссылки здесь публиковать не хочу.) Я хочу включить в это предложение новый пункт - анти-анонимайзинг.

А именно. Есть WebWarper. Есть сайт, который можно смотреть через WebWarper. Есть часть сайта, которую можно смотреть ТОЛЬКО через WebWarper (автопереход).

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

Что с этой информацией делать, решает автор сайта. Скажем, грубый вариант - сервер блокирует все постинги, которые не сопровождаются надлежащим кукисом с правильным IP. (А кукиса, разумеется, не будет, если злыдень догадается пойти мимо WebWarper или отключить JavaScript.) Или мягкий вариант: для всех служб форума или гостевой, включая баны, используется IP из этого специального кукиса вместо REMOTE_ADDR - когда этот IP есть. (Это уже позволит забанить наиболее тупых спамеров.) Или попросту найденный IP пишется в логи, а уж там автор сайта может решить, надо ли что-то еще предпринимать (выяснив, скажем, процент посетителей, у которых IP определить не удается).

Как думаете? Есть в этом польза? Увеличит эта фишка соблазн для веб-мастеров оптимизировать сайты через WebWarper?

спустя 2 дня 11 часов [обр] Давид Мзареулян(31/1003)[досье]
Я бы сказал, что возможность эта сама по себе интересная и в отдельных случаях очень полезная. Но именно что в отдельных случаях. Т.е. едва ли средний вебмастер нуждается в этой фиче и уж тем более вряд ли её можно будет использовать в качестве приманивающего фактора.
спустя 1 день 22 часа [обр] Даниэль Алиевский(9/125)[досье]

Давид Мзареулян[досье] Спасибо. Похоже, надо сделать.

Никто не говорит про "среднего вебмастера". Любой полезный продукт начинается с "отдельных случаев". Если этих "отдельных случаев" набирается хотя бы 0.1%, это уже почти всегда много - достаточно, чтобы бороться за остальные случаи.

спустя 2 дня 13 часов [обр] Даниэль Алиевский(9/125)[досье]
Кажется, почти готово. Надо тестировать, и неожиданно я обнаружил, что не могу найти ни одного работающего анонимного прокси :) Может, подскажете, где взять?
спустя 1 час 4 минуты [обр] Владимир Палант(80/4445)[досье]
Google первым результатом выдает http://www.samair.ru/proxy/. Я этим сайтом несколько раз пользовался, процент живых прокси достаточно высокий.
спустя 12 минут [обр] Даниэль Алиевский(9/125)[досье]
Самое смешное, что я сегодня ходил именно сюда. Перепробовал штук 30-50 прокси с надписью "anonymous", потом надоело - написал сюда... Либо вовсе не работают, либо глючат - скажем, не могут соединиться с сервером webwarper.net, либо, в самом лучшем случае, показывают часть страницы, а на догрузке скриптов или там апплетов опять же ломаются. Видимо, найти стабильный анонимный прокси вообще проблема...
спустя 46 минут [обр] Владимир Палант(80/4445)[досье]
На шестой странице несколько прокси с IP 129.24(0|2).*.* — эти работают гарантированно. Собственно, они часть эксперимента, который проводится на PlanetLab. POST-запросы они запрещают, но вам вроде бы и не нужно.
спустя 2 минуты [обр] Александр aka Efreeti(3/111)[досье]
Не знаю, в кассу ли, но есть такая вещь, как Tor.
спустя 17 минут [обр] Даниэль Алиевский(9/125)[досье]

Владимир Палант[досье] А вот как раз и нужно :) На серверной стороне мой антианонимайзинг работает только для POST-запросов (для нормальных GET-запросов WebWarper, наоборот, является анонимайзером). На клиентской стороне JavaScript в любом случае имеет доступ к обнаруженному IP, но чтобы этим воспользоваться, автор сайта должен предпринять некие усилия (передать данные на сервер). Заявленным фичам WW (анонимайзингу) это не противоречит, так как я в любом случае не анонимизирую (пропускаю мимо) нетекстовый контент, что уже достаточно для определения IP и насчет чего у меня есть специальная оговорка.

Впрочем, все равно спасибо. Я, кажется, уже сам находилна эти прокси, и меня как раз смутили неработающие POST-ы.

Александр aka Efreeti[досье]
Спасибо, наверно, будет невредно протестировать с ним.

спустя 22 часа [обр] Даниэль Алиевский(9/125)[досье]

Ну вот, некоторый вариант готов. Вроде бы даже работает. В частности, взламывает бесплатный прокси 193.194.84.198:8080 (первый в списке http://www.samair.ru/proxy/ - к счастью, сегодня он заработал).

Адрес тестовой страницы, защищенной анти-анонимайзером:
http://algart.net/system/antianonymizetest.pl
Буду благодарен, если поможете протестировать и приведете здесь копии текста, выдаваемого этой страничкой. Для сравнения, адрес теста, просто показывающего пришедшую на сервер информацию:
http://algart.net/system/showipinfo.pl

Маленькое пояснение. В GET-протоколе (умолчательном) информация, добытая антианонимайзером из апплета, будет видна только клиентскому JavaScript. (По умолчанию WebWarper обязан анонимизировать в таком режиме.) Веб-мастер волен ей пользоваться как угодно, например, передавать на сервер. Но, разумеется, покуда мой продукт не является международным стандартом :-), это не составит большой проблемы для пользователей, которые работают с WebWarper как с анонимайзером. В конце концов, умный веб-мастер, знающий про WW, всегда имеет кучу способов обойти его анонимизацию, о чем я честно предупреждаю.

На самом деле антианонимайзер предназначен для POST-протокола. Чтобы протестировать эту ситуацию, в конце страницы есть маленькая тестовая форма с кнопкой Submit.

Если посмотреть на кукисы, пришедшие на algart.net, можно заметить "странных зверей" ww___clientIP и ww___aaIP, в которых (если все правильно) правильные IP должны быть затерты цепочками одинаковых букв. На самом деле эти кукисы предназначены для WW, а при передаче на оригинальный сервер (здесь algart.net) информация об IP затирается по все тем же соображениям анонимности. В POST-протоколе требуемый IP и так придет через x-forwarded-for.

спустя 3 часа 53 минуты [обр] Владимир Палант(80/4445)[досье]

С прокси запрашивать не пробовал. А вот если послать с запросом заголовок "X-Forwarded-For: 1.2.3.4" (пробовал с LiveHTTPHeaders, но вариантов масса, конечно), то получаю:

    Server-side information (CGI server script)

Detected your IP:   1.2.3.4
IP of the computer (webwarper.net) addressed to the server:           69.41.173.145
Additional IP information sent to the server (x-forwarded-for):           1.2.3.4

Апплет при этом показывает правильный IP, разумеется.

спустя 2 дня 22 часа [обр] Даниэль Алиевский(9/125)[досье]

Владимир Палант[досье] Все вроде так и должно быть. Такое впечатление, как будто вы хотели сообщить об ошибке, не уточнив, что именно вы ожидали получить :)

На серверной стороне анти-анонимайзер "включается" только при отработке POST-запросов (что вполне логично). А именно, начинает возвращать в качестве x-forwarded-for тот IP, который предварительно определил (и запомнил в кукисе) клиентский JavaScript. Проверив наличие кукиса ww___aaIP, сервер может удостовериться, что клиентский скрипт действительно отработал, и даже узнать код статуса - чем закончилась попытка определить IP в апплете (варианты: OK; NOT_LOADED_YET - не удалось дождаться загрузки апплета; ERROR_NO_WEBWARPER - кто-то пошел "мимо" WebWarper; ERROR_NO_JAVA - нет Java; ERROR_ILLEGAL_DOMAIN - Java-апплет не сумел соединиться с доменом, так как он некорректен - признак хорошего анонимизирующего сервиса; ERROR_CANNOT_CONNECT - наверно, стоит FireWall или что-то в этом роде; ERROR_OTHER - в апплете случилось что-то еще; отсутствие кукиса - скорее всего, JavaScript вовсе не отработал, например, выключен). Впрочем, все то же самое можно проверить и на клиенте, если, скажем, отправка сообщения в форум в принципе возможна только через JavaScript.

спустя 27 минут [обр] Владимир Палант(80/4445)[досье]
Ничего нового я вам сообщить не собирался — лишь обратить в очередной раз ваше внимание на то, что нельзя верить заголовку X-Forwarded-For, который передает пользователь (сейчас вижу, что в прошлый раз вы меня проигнорировали). Без вашего Java-апплета (который тоже не особо надежен) у сервера вообще не было бы возможности определить, с какого IP на самом деле пришел запрос. Я вам уже говорил, что делают правильные прокси, если к ним пришел запрос, в котором уже есть X-Forwarded-For — пишут в X-Forwarded-For через запятую свое значение REMOTE_ADDR и то, что прислал им клиент. То есть, сервер в данном случае должен был бы получить: <мой_IP>,1.2.3.4.
спустя 17 минут [обр] Даниэль Алиевский(9/125)[досье]

Владимир Палант[досье] Прошу прощения, если в чем-то не так вас понял. Вы пишете, что в прошлый раз я вас проигнорировал (в отношениии заголовка X-Forwarded-For). Я специально только что перепроверил все ваши предыдушие сообщения, вроде бы, нигде вы про X-Forwarded-For не упоминаете. Неужели я настолько невнимателен?.. Это возможно, конечно - тогда мои извинения.

Я согласен, что "правильный" прокси должен дописывать найденный IP к X-Forwarded-For через запятую. Я этого не делаю, ибо представляю средний программистский уровень хозяина форума - и стараюсь "быть как можно проще". А именно, оставить в X-Forwarded-For прямое значение наиболее вероятного IP. Если, скажем, движок форума при банах ориентируется на REMOTE_ADDR, то хозяину форума будет достаточно заменить эту переменную на X_FORWARDED_FOR (и подключить WebWarper AntiAnonymizer), чтобы уже снизить вероятность, что бан не сработает из-за анонимных прокси. (Одно дело - заменить, по моей рекомендации, в "тарабарском" языке PHP или Perl одно слово на другое. Совсем другое - добавлять RegExp для выделения части перед запятой.)

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

спустя 9 минут [обр] Владимир Палант(80/4445)[досье]

Ну, прошлый раз был, когда мы обсуждали на этом форуме вопрос, что делать с X-Forwarded-For — пару лет назад :)

PS: Ваше обоснование весьма сомнительное, может как-нибудь разберу по косточкам. Сейчас, к сожалению, времени нет.

спустя 3 часа 35 минут [обр] Даниэль Алиевский(9/125)[досье]

Владимир Палант[досье] Так сразу и говорили бы - пару лет назад :) Вообще-то ваш тезис "нельзя верить заголовку X-Forwarded-For" совершенно правилен, почему я и удивился - неужели я тут с этим спорил.

Однако в данном конкретном случае комбинации X-Forwarded-For + кукис ww___aaIP, в некотором смысле, верить можно. А именно, если последний присутствует и содержит подстроку OK, и это POST-запрос от WebWarper, то X-Forwarded-For имеет некоторое отношение к компьютеру клиента - конкретно, что клиентскому апплету удалось напрямую соединиться с сервером, и последний идентифицировал IP клиента как содержимое X-Forwarded-For.

спустя 15 часов [обр] Даниэль Алиевский(9/125)[досье]
По-прежнему надеюсь на тестирование и комментарии :) Пожалуйста, сообщите, если
http://algart.net/system/antianonymizetest.pl
в каких-то ситуациях выдает ерунду (т.е. антианонимайзер не работает). Я, скажем, пока сумел протестировать только на одном анонимном прокси и почти не тестировал за офисными брэндмауэрами.
спустя 1 час 25 минут [обр] Александр Самойлов(5/342)[досье]
Даниэль Алиевский[досье]
У меня Firefox 1.0.7 закрывается с исключением. :)
Думаю, это связано с тем что у меня вторая бета пятой java.
Но на всякий случай сообщаю последовательность действий, вдруг это не у меня только:
Зайти на страницу, нажать на submit.
Повторить несколько раз.
Повторить в случайной последовательности:
Открыть просмотр исходного кода, закрыть, прогуляться по history туда сюда, нажать на Submit.
спустя 5 часов [обр] Даниэль Алиевский(9/125)[досье]
Александр Самойлов[досье] Ну что я тут могу сказать. Я и сам сталкивался с вылетами Java-машины под FireFox. Остается надеяться, что это отладить, и писать bug-report-ы в Sun, когда ошибка воспроизводится.
спустя 1 день 18 часов [обр] Даниэль Алиевский(9/125)[досье]
Сделал описание Анти-Анонимайзера:
webwarper.net/wwantianonymizerru.htm
Я постарался детально описать, что, все-таки, делает анти-анонимайзер, зачем и кому это нужно, а также какие могут быть проблемы в его использовании. Пожалуйста, посмотрите, если не трудно - вдруг я что-то не учел.
спустя 7 дней [обр] Даниэль Алиевский(9/125)[досье]

Хоть бы текст кто-нибудь покритиковал, что ли... Только что имел возможность убедиться, что минимум один разработчик форумов ничего не понял и пришел к выводу, что из-за отсутствия Java чуть ли не половина пользователей потеряет возможность отправлять сообщения. Сегодня попытался улучшить.

Впрочем, в любом случае всем спасибо за обсуждение :)

спустя 16 часов [обр] Даниэль Алиевский(9/125)[досье]

В самом деле, уважаемые коллеги, гляньте
webwarper.net/wwantianonymizerru.htm
Текст почти удвоился в размере и, кажется, получился не таким уж скучным. Оглавление сейчас такое:

Малоизвестная, но грозная опасность
О Всемогущем Спамере
О Неуловимом Спамере
О Неуязвимом Спамере
WebWarper Анти-Анонимайзер

:)

Powered by POEM™ Engine Copyright © 2002-2005