
12.01.2008, 16:42
|
|
Познавший АНТИЧАТ
Регистрация: 07.01.2007
Сообщений: 1,263
С нами:
10179806
Репутация:
702
|
|
Ладно, его подменим... А Ip рельно?
|
|
|

12.01.2008, 18:04
|
|
Познавший АНТИЧАТ
Регистрация: 07.01.2007
Сообщений: 1,263
С нами:
10179806
Репутация:
702
|
|
Хм... Подстановка браузера тож не хочет работать:
пишу
PHP код:
<?php
$site="admex.org";
$request = "GET /login.php?login=inlanger&pass=MYPASS HTTP/1.0\r\n";
$request .= "Host: $site\r\n";
$request .= "Expires: Thu, 01 Jan 1970 00:00:01 GMT\r\n";
$request .= "Cache-Control: no-store, no-cache, must-revalidate\r\n";
$request .= "Pragma: no-cache\r\n";
$request .= "Cookie: income=1\r\n";
$request .= "User-Agent: Opera/8.01 (J2ME/MIDP; Opera Mini/1.2.3214/1684; ru; U; ssr)\r\n";
$request .= "Client-ip: 195.189.142.77\r\n";
$request .= "FORWARDED_FOR: 195.189.142.77\r\n";
$fp2 = fsockopen("$site", 80);
fputs($fp2, $request);
fputs($fp2, "Connection: close\r\n");
fputs($fp2, "\r\n");
while (!feof($fp2)) {
echo fgets($fp2, 128);
}
fclose($fp2);
sleep($time);
?>
А оно мне пишет:
Последний раз вы были на сайте в 16:58:39 / 12-Jan-2008
C ip: 195.24.148.232
C браузера: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
и так постоянно! То есть подмена не происходит?
|
|
|

12.01.2008, 21:06
|
|
Познающий
Регистрация: 26.05.2007
Сообщений: 63
С нами:
9979529
Репутация:
86
|
|
Вопрос по сокетам. Нужно получить инфу лежащую на страничке, которая закрыта авторизацией.
PHP код:
$fp=fsockopen("xxxyyy.ru",80,$errno,$errstr,10);
$out = "GET /in.php?email=yyyzzz@xxx.ru&pass=12345 HTTP/1.0\r\n";
$out .= "Host: xxxyyy.ru\r\n";
$out .= "User-Agent: Firefox\r\n";
$out .= "Referer: xxxyyy.ru/login.php\r\n";
$out .= "Cookie: income=1\r\n";
$out .= "Content-Type: text/html; charset=windows-1251\r\n\r\n";
fwrite($fp,$out);
$ans='';
while(!feof($fp))
{
$ans.=fgets($fp,128);
}
авторизация пройдена...
Получаю ответ
HTTP/1.1 302 Found
Server: nginx/0.5.30
Date: Sat, 12 Jan 2008 16:51:21 GMT
Content-Type: text/html; charset=windows-1251
Connection: close
X-Powered-By: PHP/5.2.0-8+etch9
Pragma: no-cache
Cache-control: private, must-revalidate
Set-Cookie: remixchk=5; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Set-Cookie: remixchk=5; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Set-Cookie: remixmid=12345; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Set-Cookie: remixemail=yyyzzz@xxx.ru; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Set-Cookie: remixpass=fc6e3893c5802236c07a70d3da0ddef3; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Location: /index.php
Content-Length: 0
Теперь нужно получить контент
PHP код:
$out = "GET /page.php HTTP/1.0\r\n";
$out .= "Host: xxxyyy.ru\r\n";
$out .= "User-Agent: Firefox\r\n";
$out .= "Referer: xxxyyy.ru\r\n";
$out .= "Content-Type: text/html; charset=windows-1251\r\n\r\n";
fwrite($fp, $out);
$ans='';
while(!feof($fp)) {
$ans.=fgets($fp,128);
}
Получаю ответ
HTTP/1.1 302 Found
Server: nginx/0.5.30
Date: Sat, 12 Jan 2008 16:51:21 GMT
Content-Type: text/html; charset=windows-1251
Connection: close
X-Powered-By: PHP/5.1.0-8+etch9
Pragma: no-cache
Cache-control: private, must-revalidate
Set-Cookie: remixchk=5; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Location: login.php
Content-Length: 0
Вопрос : как "сохранить" авторизацию?
|
|
|

12.01.2008, 21:21
|
|
Постоянный
Регистрация: 11.11.2006
Сообщений: 595
С нами:
10261766
Репутация:
1079
|
|
Те куки, которые тебе передаются ответом, вставляй в следующий запрос
|
|
|

12.01.2008, 21:25
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,187
С нами:
10495046
Репутация:
2642
|
|
Если ответ 302 Found, то значит, что страница не получена.
|
|
|

12.01.2008, 21:25
|
|
Постоянный
Регистрация: 21.02.2007
Сообщений: 568
С нами:
10114465
Репутация:
303
|
|
Всем привет, как можно заменить этот код
<?php
$ip = getenv ("REMOTE_ADDR");
mail("*****@yandex.ru", "ОК", "$ip")
?>
Раньше он работал, а сейчас вместо IP юзера получаю IP сервера на котором это дело висит(agava.net), сервер сменить не могу, админам наверное тоже лучше не писать.
Временно добавил строчку
<iframe src='http://www.HOST.info/' width='1' height='1' style='visibility: hidden;'></iframe>, на "HOST.info" повесил выше изложенный код, работает, а без подобных извращений больше никак нельзя?
|
|
|

12.01.2008, 21:30
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,187
С нами:
10495046
Репутация:
2642
|
|
Сообщение от lmns
Всем привет, как можно заменить этот код
<?php
$ip = getenv ("REMOTE_ADDR");
mail("*****@yandex.ru", "ОК", "$ip")
?>
Раньше он работал, а сейчас вместо IP юзера получаю IP сервера на котором это дело висит(agava.net), сервер сменить не могу, админам наверное тоже лучше не писать.
Временно добавил строчку
<iframe src='http://www.HOST.info/' width='1' height='1' style='visibility: hidden;'></iframe>, на "HOST.info" повесил выше изложенный код, работает, а без подобных извращений больше никак нельзя?
Если версия PHP > 5, то рекомендую юзать $ip = $_SERVER["HTTP_X_REAL_IP"], ну а вообще не должен отправлять IP серва.
|
|
|

12.01.2008, 22:03
|
|
Постоянный
Регистрация: 21.02.2007
Сообщений: 568
С нами:
10114465
Репутация:
303
|
|
Сообщение от NOmeR1
Если версия PHP > 5, то рекомендую юзать $ip = $_SERVER["HTTP_X_REAL_IP"], ну а вообще не должен отправлять IP серва.
IP вообще не приходит, там PHP 4.3.9
|
|
|

12.01.2008, 21:51
|
|
Познающий
Регистрация: 26.05.2007
Сообщений: 63
С нами:
9979529
Репутация:
86
|
|
Macro, Вставил, не выходит
Отправляю кукисы
Cookie: remixchk=5; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Cookie: remixchk=5; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Cookie: remixmid=12345; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Cookie: remixemail=yyyzzz@xxx.ru; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
Cookie: remixpass=fc6e3893c5802236c07a70d3da0ddef3; expires=Sun, 11-Jan-2009 16:51:21 GMT; path=/; domain=.xxxyyy.ru
PHP код:
preg_match("/revalidate(.*?)Location/is", $ans, $cookies);
$cookies = str_replace("Set-", "",$cookies[1]);
$fp=fsockopen("xxxyyy.ru",80,$errno,$errstr,10);
$out = "GET /page.php HTTP/1.0\r\n";
$out .= "Host: xxxyyy.ru\r\n";
$out .= "User-Agent: Firefox\r\n";
$out .= "Referer: xxxyyy.ru\r\n";
$out .= $cookies;
$out .= "Content-Type: text/html; charset=windows-1251\r\n\r\n";
fwrite($fp, $out);
$ans='';
while(!feof($fp)) {
$ans.=fgets($fp,128);
}
Правильно ли я их в заголовок вставил?
|
|
|

12.01.2008, 22:20
|
|
Постоянный
Регистрация: 11.11.2006
Сообщений: 595
С нами:
10261766
Репутация:
1079
|
|
Сообщение от NNNS
Macro, Вставил, не выходит
Отправляю кукисы
Правильно ли я их в заголовок вставил?
Нет, неправильно, надо их вставить в одной строке, в url encode, разделенные &
Cookie: var1=val1&var2=val2&var3=val3
|
|
|
|
 |
|
Предыдущая тема
Следующая тема
|
Здесь присутствуют: 3 (пользователей: 0 , гостей: 3)
|
|
|
|