ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Избранное
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #21  
Старый 16.04.2010, 19:26
Аватар для GrAmOzEkA
GrAmOzEkA
Участник форума
Регистрация: 25.06.2006
Сообщений: 220
Провел на форуме:
2052669

Репутация: 178
По умолчанию

Такой же глюк как и у всех.
При загрузке страницы выдает (в FF):
"Время ожидания соединения истекло"

Код:
C:\Perl\bin>perl.exe C:\sss.pl 127.0.0.1:80 http://site.ru/about/photo/xx.php -d

127.0.0.1:80 => 209.85.229.104:80
127.0.0.1:80 => 216.239.59.104:80
127.0.0.1:80 => 74.125.77.104:80
В папке /tmp/ создаются сессии.

Система:
FreeBSD 7.1
Apache/1.3.41 (Unix)
FrontPage/5.0.2.2623
PHP/5.2.9
mod_ssl/2.8.31
OpenSSL/0.9.8e rus/PL30.22

Код:
$fp = fsockopen("ya.ru", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: ya.ru\r\n";
    $out .= "Connection: Close\r\n\r\n";

    fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}
Нормально обрабатывает.

---------------------------------
Добавлено:

Протестировал на другом сервере:
FreeBSD 6.4
PHP: 5.2.10

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

Последний раз редактировалось GrAmOzEkA; 16.04.2010 в 20:23..
 
Ответить с цитированием

  #22  
Старый 17.04.2010, 00:42
Аватар для Nightmarе
Nightmarе
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме:
5749763

Репутация: 1680


Отправить сообщение для Nightmarе с помощью ICQ
По умолчанию

GrAmOzEkA, если есть KIS или Outpost, ковыряй ихние настройки, полностью исключив пЭрл из правил проверки.
 
Ответить с цитированием

  #23  
Старый 22.04.2010, 05:18
Аватар для ShAnKaR
ShAnKaR
Пачка маргарина
Регистрация: 14.07.2005
Сообщений: 964
Провел на форуме:
4646474

Репутация: 1424


Отправить сообщение для ShAnKaR с помощью ICQ
По умолчанию

обновил, что-то исправил
 
Ответить с цитированием

  #24  
Старый 22.04.2010, 17:12
Аватар для mustang777
mustang777
Познающий
Регистрация: 16.05.2007
Сообщений: 70
Провел на форуме:
1904000

Репутация: 41
По умолчанию

А каким способом можно шифровать траффик используя этот сокс, кроме как юзать Tor ?
 
Ответить с цитированием

  #25  
Старый 22.04.2010, 18:03
Аватар для r00nix
r00nix
Познающий
Регистрация: 07.05.2009
Сообщений: 54
Провел на форуме:
487201

Репутация: 80
Отправить сообщение для r00nix с помощью ICQ
По умолчанию

Шанкар, поясни плиз - если сервак находится за гейтвэем, на котором осуществляется прокидывание портов, а так же фильтрование траффика (то есть внутрь и наружу проходят пакеты только по 80 TCP порту), получится ли использовать скрипт, чтобы получить доступ к другим портам на сервере?
В частности, интересует вопрос таймаутов - есть ли возможность с помощью этого скрипта прокинуть постоянное соединение? Если, например, нельзя изменить время выполнения PHP на сервере (запрещено политиками безопасности), то других вариантов я просто не вижу.

Последний раз редактировалось r00nix; 22.04.2010 в 18:11..
 
Ответить с цитированием

  #26  
Старый 28.04.2010, 06:57
Аватар для ShAnKaR
ShAnKaR
Пачка маргарина
Регистрация: 14.07.2005
Сообщений: 964
Провел на форуме:
4646474

Репутация: 1424


Отправить сообщение для ShAnKaR с помощью ICQ
По умолчанию

Цитата:
Сообщение от r00nix  
Шанкар, поясни плиз - если сервак находится за гейтвэем, на котором осуществляется прокидывание портов, а так же фильтрование траффика (то есть внутрь и наружу проходят пакеты только по 80 TCP порту), получится ли использовать скрипт, чтобы получить доступ к другим портам на сервере?
ну это зависит как фаервол настроен уже на сервере, но так локальный трафик нет смысла рубить.

Цитата:
В частности, интересует вопрос таймаутов - есть ли возможность с помощью этого скрипта прокинуть постоянное соединение? Если, например, нельзя изменить время выполнения PHP на сервере (запрещено политиками безопасности), то других вариантов я просто не вижу.
через промежуточный процесс можно сделать- тоесть запускаем к примеру perl скрипт на сервере делаем fork и он висит сколько надо либо уже руководствуясь другими ограничениями. общается по tcp с тем чем надо и паралельно с php скриптом

Последний раз редактировалось ShAnKaR; 28.04.2010 в 08:05..
 
Ответить с цитированием

  #27  
Старый 07.05.2010, 09:30
Аватар для r00nix
r00nix
Познающий
Регистрация: 07.05.2009
Сообщений: 54
Провел на форуме:
487201

Репутация: 80
Отправить сообщение для r00nix с помощью ICQ
По умолчанию

Цитата:
Сообщение от ShAnKaR  
через промежуточный процесс можно сделать- тоесть запускаем к примеру perl скрипт на сервере делаем fork и он висит сколько надо либо уже руководствуясь другими ограничениями. общается по tcp с тем чем надо и паралельно с php скриптом
Понял твою идею, она хороша, но мне она, к сожалению, не подходит. Попробую объяснить, почему. Имеется такая схема:

A - клиентская машина.
B - файрволл.
C[1;n] - кластер веб-серверов (для снижения нагрузки).
Файрволл B является шлюзом для кластера C. К нему у меня доступа нет.
Пытаюсь рассужать логически, как идет трафик от А к С(n). Судя по всему, на В две сетевые карты, В1 и В2. В1 смотрит во внешку, а В2 - во внутреннюю сеть, в которой помимо кластера С находятся еще кластер с базой данных и NFS-серверы. Внутри сети трафик не фильтруется никак, при попытке обратиться во внешку - пакеты попадают на В2, на котором режется все, кроме транзитного трафика на 80 порт ТСР в обе стороны (видимо, админы недоглядели), который свободно уходит из внутренней сети во внешку. На файрволле стоит прокси (судя по всему - сквид), который смотрит во внешку на интерфейсе В1 на 80 порту и прозрачно форвардит запросы на случайно выбранный сервер из кластера С. Наличие прокси проверено опытным путем. На В1 фильтруется весь входящий трафик, кроме того, что идет на 80 ТСР. Также есть такая вероятность, что сквид стоит на одной из машин во внутренней сети, а с В1 на него трафик просто натится.
Итак, я с машины А браузером обращаюсь на В и вижу страницу с C(n), где n - случайным образом выбранная машина из кластера С. Все машины в кластере настроены одинаково, DocumentRoot на всех - это примонтированная директория одного NFS-сервера. У меня есть доступ к С через веб-шелл, с правами пользователя виртуального хостинга. Допустим, мне необходимо проксировать все свои запросы во внутреннюю сеть (к примеру, я хочу подключиться по ssh на одну из машин) - для этого мне нужна постоянная сессия. Почему я не могу при этом воспользоваться твоим советом - ты, думаю, понял. Поднимать демона на perl на каждом сервере из кластера для общения с ним через php скрипт, который будет доступен через веб-морду - это не вариант, так как для постоянной сессии придется реализовывать довольно непростой интерфейс для общения демонов на разных машинах в кластере между собой - что-то вроде RPC с блэкджеком и печеньками.
Можно, конечно, поступить совсем просто - сделать бэкконнект с одной из машин кластера на 80 порт ТСР своей тачки, но вся проблема в том, что под рукой нет машин с белым ипом и свободным 80 портом. Отсюда вытекает еще одна идея - грубо говоря, на третьей стороне на веб-интерфейсе будет php скрипт, на который периодически будет стучать демон с оного из серверов кластера, оставлять свой out и получать задания. Php скрипт, в свою очередь, при каждом выполнении будет транслировать out на прослушиваемый на моем компе порт и брать задания с этого же порта. Но эта идея обречена на провал - скорость каждого "пакета" в такой "сессии" будет измеряться десятками секунд, и если попробовать завернуть в такую RPC (а это именно она) обычный tcp трафик (чего я и хочу первоначально добиться) - то это будет просто смешно.
В общем, у меня такое впечатление, что кроме бэкконнекта в моем случае ничего сделать не получится. Может, я где-то заблуждаюсь, и все-таки можно что-то придумать, используя те идеи, которые реализованы в топике?
 
Ответить с цитированием

  #28  
Старый 07.05.2010, 16:22
Аватар для ShAnKaR
ShAnKaR
Пачка маргарина
Регистрация: 14.07.2005
Сообщений: 964
Провел на форуме:
4646474

Репутация: 1424


Отправить сообщение для ShAnKaR с помощью ICQ
По умолчанию

бекконект возможно тоже не получится из за того что трафик будет обрабатыватся прокси сервером. можно попробовать использовать dns tunnel но тут тоже нужен сервер с белым ip и 53 портом.
твой предложенный вариант в принципе можно попробовать реализовать, задержки конечно будут значительные как ты и сказал.

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

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

Последний раз редактировалось ShAnKaR; 07.05.2010 в 16:24..
 
Ответить с цитированием

  #29  
Старый 07.05.2010, 20:15
Аватар для r00nix
r00nix
Познающий
Регистрация: 07.05.2009
Сообщений: 54
Провел на форуме:
487201

Репутация: 80
Отправить сообщение для r00nix с помощью ICQ
По умолчанию

Цитата:
Сообщение от ShAnKaR  
бекконект возможно тоже не получится из за того что трафик будет обрабатыватся прокси сервером. можно попробовать использовать dns tunnel но тут тоже нужен сервер с белым ip и 53 портом.
Бэкконнект вполне возможен - транзитный трафик на 80 ТСР пропускается свободно и напрямую. Проверял tcpdump'ом на удаленном хосте. DNS-туннель не получится - UDP режется, резолвинга во внутренней сети нет вообще.
А вот за идею с одним сокетом на нескольких машинах огромное спасибо.
 
Ответить с цитированием

  #30  
Старый 20.05.2010, 15:53
Аватар для rap1t
rap1t
Познающий
Регистрация: 06.01.2009
Сообщений: 60
Провел на форуме:
1191310

Репутация: 78
Отправить сообщение для rap1t с помощью ICQ
По умолчанию

вопрос с разрывом соединения и перезапуском, кто-нить решил?
 
Ответить с цитированием
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP, PERL, MySQL, JavaScript 186 21.02.2010 02:41
На PHP, как на "Новые ворота"... Mertvii-Listopad Чужие Статьи 7 18.09.2006 12:42
Безопасность в Php, Часть Iii k00p3r Чужие Статьи 0 11.07.2005 19:02
Защищаем Php. Шаг за шагом. k00p3r Чужие Статьи 0 13.06.2005 11:31



TEST QR: []
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ