![]() |
Прямая ссылка на капчу PHP-форума
Здравствуйте,
долго думал, в какую тему это написать. Пишу флудер на PHP для форума на PHP. Капча-солвер уже есть, но и я никак не могу получить прямую ссылку на на саму капчу. За ее отрисовку отвечает captcha.php. Прямое обращение к www. ... /captcha.php через браузер приводит к блокировке IP на час (видимо, защита от DDOS). Есть система обновления капчи - яваскриптом меняется src картинки на "captcha.php?" + Math.random(); (Math.random(); - псевдослучайное число от 0.0 до 0.1). Переход по адресу captcha.php?0.74653984762364762 (любое случайное число) даёт пустую страницу. Я пытался отследить входящие и исходящие пакеты с помощью HTTPAnalyzer4 и скорректировать их с помощью InetCrack 1.39. Получилось, что пакеты, отправляемые на captcha.php при полном обновлении страницы с капчей и пакеты, отправляемые при прямом обращении к captcha.php, полностью аналогичны, но в первом случает капча отображается, ответ сервера - (Status-Line):HTTP/1.1 200 OK Server:nginx Date:Sun, 03 May 2009 10:23:59 GMT Content-Type:image/jpeg Connection:keep-alive X-Powered-By:PHP/5.2.5 Expires:Thu, 19 Nov 1981 08:52:00 GMT Cache-Control:no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma:no-cache Content-Length:2602 а во втором капчи нет и ответ - (Status-Line):HTTP/1.1 200 OK Server:nginx Date:Sun, 03 May 2009 10:26:26 GMT Content-Type:text/html; charset=utf-8 Connection:keep-alive X-Powered-By:PHP/5.2.5 Content-Length:0 Я совсем недавно начал программировать на PHP, с перловой капчей никогда таких проблем не было, так что я мог упустить что-нибудь элементарное(хотя вопрос мало относится к программированию). В общем, нужна прямая ссылка на капчу. |
alex.k12 Покажи запросы, которые отсылаешь ты, и отсылает бразуер. Проблема скорее всего в отсутствующих/лишних заголовках, отсутствие печенек от реги
|
Это запрос при обновлении яваскриптом, капча отображается:
(Request-Line):GET /captcha.php?0.4754704378147092 HTTP/1.1 Host:www.xxx.ru User-Agent:Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10 Accept:image/png,image/*;q=0.8,*/*;q=0.5 Accept-Language:ru,en-us;q=0.7,en;q=0.3 Accept-Encoding:gzip,deflate Accept-Charset:windows-1251,utf-8;q=0.7,*;q=0.7 Keep-Alive:300 Connection:keep-alive Referer:http://www.xxx.ru/thread/ Cookie: ptime=1241296071153; postpassword=GnBUUhUE; __utma=258285515.2829712575002160600.1241289110.12 41297769.1241345446.3; __utmz=258285515.1241289110.1.1.utmcsr=(direct)|ut mccn=(direct)|utmcmd=(none); __utmc=258285515; PHPSESSID=r8gnmi48baunol1g8hr6c4nbe7; __utmb=258285515.5.10.1241345446 Это запрос при обновлении яваскриптом, но уже с локальной (сохраненной) страницы, капча не отображается: (Request-Line):GET /captcha.php?0.08763163143809893 HTTP/1.1 Host:www.xxx.ru User-Agent:Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10 Accept:image/png,image/*;q=0.8,*/*;q=0.5 Accept-Language:ru,en-us;q=0.7,en;q=0.3 Accept-Encoding:gzip,deflate Accept-Charset:windows-1251,utf-8;q=0.7,*;q=0.7 Keep-Alive:300 Connection:keep-alive Cookie: ptime=1241296071153; postpassword=GnBUUhUE; __utma=258285515.2829712575002160600.1241289110.12 41297769.1241345446.3; __utmz=258285515.1241289110.1.1.utmcsr=(direct)|ut mccn=(direct)|utmcmd=(none); __utmc=258285515; PHPSESSID=r8gnmi48baunol1g8hr6c4nbe7; __utmb=258285515.5.10.1241345446 Как видно, разница только в реферере, который я потом меняю в InetCrack (и в ответе все равно не получаю капчу), и в случайно сгенерированном числе. |
а лучше,дай адрес форума :)
|
0chan.ru
|
Реферер не передаешь, с ним все работает
|
Хм, в InetCrack отсылаю следующий запрос:
GET http://www.0chan.ru/captcha.php?0.74863849026476354 HTTP/1.1 Host:www.0chan.ru User-Agent:Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10 Accept:image/png,image/*;q=0.8,*/*;q=0.5 Accept-Language:ru,en-us;q=0.7,en;q=0.3 Accept-Encoding:gzip,deflate Accept-Charset:windows-1251,utf-8;q=0.7,*;q=0.7 Keep-Alive:300 Connection:keep-alive Referer:http://www.0chan.ru/a/ Cookie:kustyle_site=Photon; kustyle=Photon; ptime=1241357131244; postpassword=GnBUUhUE; __utma=258285515.2829712575002160600.1241289110.12 41345446.1241349907.4; __utmz=258285515.1241289110.1.1.utmcsr=(direct)|ut mccn=(direct)|utmcmd=(none); __utmc=258285515; PHPSESSID=r8gnmi48baunol1g8hr6c4nbe7; __utmb=258285515.6.10.1241349907 Получаю ответ: HTTP/1.1 200 OK Server=nginx Date=Sun, 03 May 2009 11:37:49 GMT Content-Type=text/html; charset=utf-8 Connection=keep-alive X-Powered-By=PHP/5.2.5 Content-Length=0 Реферер есть, капчи нет. Gifts, как/с помощью чего ты передаешь? |
alex.k12
PHP код:
|
Warning: fsockopen() [function.fsockopen]: unable to connect to www.0chan.ru:80 (Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера. ) in C:\www\index.php on line 14
Дело в настройках сервера, наверное. |
Дело в InetCracker'e. Не знаю почему, но тот же самый запрос в другой программе исправно выдает капчу, всё в порядке. Спасибо за помощь.
Теперь другой вопрос, теперь уже по PHP. Перерыл все настройки, а ошибка всё та же. Гугл не помог. Gifts, если не сложно, выложи настройки PHP и Apache (если ты его используешь). Вот мои настройки http://rapidshare.com/files/228705261/info.rar.html |
| Время: 17:26 |