Всея ПЫХА epsyl adw0rd Мавр ГО Irinax http://hell.helldude.ru - это пиздец

curl + form. мастеркласс 2! Регистрация на АОЛ’е.

Рубрики: (phpdude Curl, Каптча коды, Полезные штуки) Автор: phpdude 27-03-2009

Теги : , , ,

добрый. надеюсь мой друг инсест непротив такой публикации ))

смотрим … нам понадобилось несколько штучек аккаунтов на аоле :) руками? нунах.

https://helldude.ru/inner/code/46uDEo тут код index.php

https://helldude.ru/inner/code/CM6ocJ тут captcha.php соответственно.

все делалось на быструю руку такчто интерфейс тут не к чему :)

$curl = new Curl();
$content = $curl->init(«https://new.aol.com/freeaolweb»)->serverfriendly()->exec();

$form = new Form($content);
$fields = $form->setFormHtml(0)->getFormData();

тут инициализировали сессию (cookie sesion) + отпарсили форму на наличие скрытых идентификаторов внутри формы :)

дальше …

$fields['{actionForm.firstName}'] = $name = Random::name($female = rand(0,1));
$fields['{actionForm.lastName}'] = $sname = Random::surname();
$fields['{actionForm.desiredSN}'] = $name.$sname;
$fields['{actionForm.password}'] = $fields['{actionForm.verifyPassword}'] = $fields['{actionForm.acctSecuityAnswer}'] = $fields['{actionForm.verifyAcctSecurityAnswer}'] = Random::password(8,0,rand(1,4),0);
$fields['wlw-select_key:{actionForm.acctSecurityQuestion}'] = «The last 4 digits of your Social Security Number?»;
$fields['wlw-select_key:{actionForm.gender}'] = rand(0,1) ? «Male» : «Female»;
$fields['wlw-select_key:{actionForm.dobDay}'] = rand(0,31);
$fields['wlw-select_key:{actionForm.dobMonth}'] = Random::month(1);
$fields['{actionForm.dobYear}'] = rand(1960,1986);
$fields['{actionForm.zipCode}'] = rand(10000,99999);
$fields['submitButton'] = «Submit»;
$fields['{actionForm.dayPhone}'] = «+».rand(10000000000,99999999999);

$fields['wlw-select_key:{actionForm.acctSecurityQuestion}OldValue'] = «true»;
$fields['wlw-select_key:{actionForm.dobDay}OldValue'] = «true»;
$fields['wlw-select_key:{actionForm.dobMonth}OldValue'] = «true»;
$fields['wlw-select_key:{actionForm.gender}OldValue'] = «true»;
$fields['{actionForm.hasToolbar}'] = «false»;
$fields['{actionForm.isIE}'] = «false»;
просто заполнили все поля

$_SESSION['curl'] = $curl;
$_SESSION['fields'] = $fields;

echo «<form method=\»post\»><input type=\»text\» name=\»captcha\» /> <input type=\»submit\» value=\»register\» /><br/> <img src=\»captcha.php?».rand(0,1000000).«\» /></form>»;
}

запомнили значения полей и обхект курл в сессию чтобы использовать на последующих страницах + вывели форму с вводом капчи и самой капчей. так как в хтмл коде страницы аола у капчи не было идентификатора — очевидно что этот идентификатор хранится в сесссии на их сервере, поэтому капчу нам надо выполнять из под нашего объекта curl, чтобы в его соссии появился идентификатор показанной капчи :)
дальше просто скачаем капчу и покажем ее. фор тут нужен изза блядской настройки нескольких серверов в аоле, потому что их бекен сервера генерят 500ую ошибку … долбоебы одним словом.
такс … капча, родимая :) простенько и со вкусом вписываем этот код в файлик captcha.php и видим капчу :)

<?php
require_once ‘init.php’;

$curl = $_SESSION['curl'];

//header(«Content-type: image/jpeg»);
$content = $curl->init(«https://new.aol.com/freeaolweb/WordVerImage?».time())->serverfriendly()->exec();

for($i=0;$i<5 && $curl->curlinfo->http_code==500; $i++)
{
$content = $curl->init(«https://new.aol.com/freeaolweb/WordVerImage?».time())->serverfriendly()->exec();
}

echo $content;
$_SESSION['curl'] = $curl;

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

далее дело техники :)

$curl = $_SESSION['curl'];
$fields = $_SESSION['fields'];

$fields['{actionForm.wordVerify}'] = $_POST['captcha'];

$content = $curl->init(«https://new.aol.com/freeaolweb/subflows/FreeMemberRegistration/FreeAolRegistrationAction.do»)->serverfriendly()->setopt(«post»,$fields)->exec();

достали курл и поля формы и отпостовали все это куда требуется :) получили хтмл код, дальше тупая логика

if(strpos($content,«Congratulations, you are now registered for AOL!»))
{
die(«registered! {$fields['{actionForm.desiredSN}']}@aol.com : {$fields['{actionForm.password}']}»);
}
header(«Location: .»);

и все :) регалка аккаунтов на аоле готова :)

52 строки в индексе + 10 строк в капча файле. а вам слабо? :)

тут лив демо https://helldude.ru/trash/regaol

в следующей статье расскажу про регистрацию на яху :)

Комментарии RSS тут:

Всего отзывов: 3 на curl + form. мастеркласс 2! Регистрация на АОЛ’е.

Оставьте свой отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

О САЙТЕ

Крик души может быть будет на этом сайте, а может и будет что-нибудь другое :)



Яндекс.Метрика