Регер аккаунтов 100zakladok.ru



Регер аккаунтовЧто-то давно мы ничего не писали в блог, пора бы это исправить =) Как вы поняли из названия, этот пост посвящен созданию аккаунтов в сервисе социальных закладок — 100zakladok.ru. Регистрация будет осуществляться с ручным вводом каптчи. Логин генерируется случайным образом и после регистрации записывается в файл.


Для начала, нам нужно узнать какие данные отправлются при создании аккаунта. Для этого можно воспользоваться сниффером (LiveHttpHeaders/Tamper Data и др.).

Обязательнные поля:

Логин (ln)
Пароль (lp)
Повторите пароль (pass21)
Контрольное число (secret)

К моему удивлению поле email оказалось необязательным для заполнения. Так же при регистрации будет отправляться значение из скрытого поля (sid). Значение sid берется из названия картики для каптчи. Например, 5426454.jpg

Теперь, когда мы разобрализь с отправляемыми данными, можно приступать к написанию регера аккаунтов. Сервис 100zakladok.ru ограничивает по времени количество регистраций с одного ip. Для того, чтобы избежать этого, воспользуемся прокси. В качестве источника прокси я буду использовать TOR.

<?php
ignore_user_abort(1);
set_time_limit(0); 
//Получаем страницу регистрации
$str = file_get_contents('http://www.100zakladok.ru/register/');
$pattern = '#<img src="\/secretimage\/(.*)" width="88" height="22">#sU';
//Находим каптчу
if(preg_match_all($pattern, $str, $matches)) {
	//При регистрации так же отправляется значение из скрытого поля
	//Это значение берется из имени картики для каптчи. Например,5426454.jpg
	$sid = str_replace(".jpg", "", $matches[1][0]);
	echo  "<img src='http://www.100zakladok.ru/secretimage/{$matches[1][0]}/>";
}
?>

<form action="" method="post">
	Каптча:  <input type="text" name="captcha" />
	<input type="submit" value="Отправить" />
	<input type="hidden" value="<?=$sid?>" name="hid"/>
</form>	

<?php 
if (isset($_POST['captcha'])) {
	//Генерируем логин и мыло
	$alphabet = "abcdefghijklmnopqrstuvwxyz";	
	$shake1 = substr($alphabet, rand(0, 25), 3);
	$shake2 = substr($alphabet, rand(0, 9), 5);
	$shake3 = substr($alphabet, rand(0, 25), 3);

	$names 		= $shake1.$shake2.$shake3;
	$password 	= "helloqueen";

	//Массив с данными, для сабмита в форму регистрации
	$postfields = array("ln" => $names, "lp" => $password, "pass21" => $password, "email" => "{$names}@gmail.com", 
					 "realname" => "Tester", "secret" => $_POST['captcha'],
					 "sid" => $_POST['hid'],
					);
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, "http://www.100zakladok.ru/register/");
	curl_setopt($ch, CURLOPT_POST, 1);
	//Используем proxy
	curl_setopt($ch, CURLOPT_PROXY, "127.0.0.1:9050");
	curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
	curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
	curl_setopt($ch, CURLOPT_USERAGENT, "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.7) Gecko/2009021910 Firefox/3.0.7");
	curl_setopt($ch, CURLOPT_REFERER, "http://www.100zakladok.ru/register/");
	curl_setopt($ch, CURLOPT_HEADER, 0);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	$result = curl_exec($ch);
	curl_close($ch);

	//Записываем в файл логин и пароль
	$logfile = 'log.txt';
	if ($handle = fopen($logfile, "a")) {
		$content = "{$names}:{$password}\r\n";
		fwrite($handle, $content);
		fclose($handle);
		echo '<p style="color:green">Данные записаны в файл log.txt</p>';
	} else {
		echo "ошибка записи в файл";	
	}
}
?>

Вот и всё. Нам остается толоько вводить каптчу. Логин и пароль к аккаунту записываются в файл log.txt.



Теги: , ,

Комментарии

  1. Ура товарищи! Тестировал – очень понравилось, могу смело рекомендовать.

    Reply

  2. Да, параметров проверяет нормально так. Главное чтобы это все работало нормально

    Reply

Оставить комментарий