Ereee
10.12.2011, 20:41
Охотник за аськами или "О, могучий, Google!"
0. INTRO
В интернете полно сервисов с раздачой icq. Многие шлют на icq на почту. Сейчас напишем php-скрипт для получения асек.
Для эксперимента я взял сервис:
http://pux.su/icq/
Для мыла будем юзать asdasd.ru. Его чудо в том, что, если перейти по ссылке:
http://asdasd.ru/?u=chtoto
Мы автоматически будем читать почту для chtoto@asdasd.ru.
1. Инструменты
1) Любой текстовой редактор
2) http://google.ru для вопросов
2. Начнем. Сбор инфы
Перейдя по ссылке:
http://pux.su/icq/
видим одну форму "Ваш e-mail:" Смотрим исходник страницы:
HTML:
Ваш e-mail:
Из этого следует, что нужно передать POST-ом act = send, mail = nashemail@asdasd.ruна index.php
Попробуем получить асью, вводим luboeslovo@asdasd.ru
Видим:
UIN отправлен на Ваш e-mail
Проверяем почту:
http://asdasd.ru/?u=luboeslovo
Видим:
http://s017.radikal.ru/i411/1112/22/77f5a78fe162t.jpg (http://radikal.ru/F/s017.radikal.ru/i411/1112/22/77f5a78fe162.jpg)
Ура! Асья пришла, но открывать сообщение не спешим
Смотрим исходный код, нас интересует только эта строка:
HTML:
pux.su - Раздача ICQ
Это адрес сообщения с асьей, куда мы и перейдем. В глаза сразу попадается(это и нужно спарсить):
UIN: 558443096
Пароль: 82IZpcGQ
Опять же смотрим исходник:
HTML:
--------------------
UIN: 558443096
Пароль: 82IZpcGQ
--------------------
Информации для старта предостаточно!
3. Реализация
Первым делом, конечно, нужно сгенерировать адрес мыла. Поэтому взял генератор паролей
PHP:
/* Для мыла */
$sim="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTG BNHYUJMKIOLP";//символы
$max=10;//длина
$size=StrLen($sim)-1;
$user=null;
while($max--)
$user.=$sim[rand(0,$size)];
$pref="@asdasd.ru";
$mylo=$user.$pref;//готовый address@asdads.ru
/*---------*/
Теперь его надо передать на сайт POST-запросом. Для этого юзаем функцию на cURL:
PHP:
/* Функция отправки запрос */
functionmake_http_post_request($url,$post,$ssl=fal se,$headers='',$uagent='') {
if (empty($url)) {
returnfalse;
}
$_post= Array();
if (is_array($post)) {
foreach ($postas$name=>$value) {
$_post[] =$name.'='.urlencode($value);
}
}
$ch=curl_init($url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);
if (is_array($post)) {
curl_setopt($ch,CURLOPT_POSTFIELDS,join('&',$_post));
}
if (is_array($headers)) {
curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);
}
if (!empty($uagent)) {
curl_setopt($ch,CURLOPT_USERAGENT,$uagent);
}
$result=curl_exec($ch);
if (curl_errno($ch) !=0&& empty($result)) {
$result=false;
}
curl_close($ch);
return$result;
}
/*---------*/
Функция готова, ну чтож, передаем мыло:
PHP:
/* Запрос для отправки ICQ н а мыло */
$post= Array('mail'=>$mylo,'act'=>'send');//вот почему смотрели исход ник в самом начале ;)
$headers= Array();
$headers[] ="Content-type: application/x-www-form-urlencoded";
$content=make_http_post_request('http://pux.su/icq/index.php',$post,false,$headers,'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)' );//передача
/*--------------------------*/
Отлично! Осталось ждать прихода e-mail, делается это через sleep(); После парсим id сообщения(помните исходники?):
PHP:
sleep(5);// ждем 5 сек прихода e-mail
/* Заходим в почту, колдуем */
$pochta=file_get_contents("http://asdasd.ru/?u=".$user);
preg_match("#read(.*?)?u=#si",$pochta,$matches);// парсим id сбщ с icq
//print $matches[1]; // выводим id сообщения с icq
/*-------------------------*/
Тут немного говнокода... и самое главное - получение uin и pass
PHP:
/* Получаем сбщ с ICQ */
$sep="u=";// мой говнокод.start
$domain="http://asdasd.ru/read";
$urlmsg=$domain.$matches[1];
$final=file_get_contents($urlmsg.$sep.$user);// мой говнокод.end
/* Вывод ICQ */
preg_match("#UIN(.*?)-----#si",$final,$match);//парсим UIN и пасс. У меня н а денвере были траблы с к одировкой, решил строчкой ниже.
$uin=str_replace("Пароль","Password",$match[0]);//замена кракозябра
echo$uin;//святая строка =)
/*-------------------------*/
Весь код:
http://pastebin.com/VaRFSTRy
Скрин результата:
http://s50.radikal.ru/i128/1112/2f/52dcaa486577t.jpg (http://radikal.ru/F/s50.radikal.ru/i128/1112/2f/52dcaa486577.jpg)
4. Нюансы
ICQ дается людям с уник. IP. С денвера на 1 ip прошло 3-4 акка. Можно прикрутить proxies.txt и сохранять результат в текстовик. Но это защита от дурака, например от меня
5. OUTRO
Статья писалась человеком, который на 99% не знаком с php Юзал гугл, поэтому "О, могучий, Google!". Спасибо...
(c) Ereee
0. INTRO
В интернете полно сервисов с раздачой icq. Многие шлют на icq на почту. Сейчас напишем php-скрипт для получения асек.
Для эксперимента я взял сервис:
http://pux.su/icq/
Для мыла будем юзать asdasd.ru. Его чудо в том, что, если перейти по ссылке:
http://asdasd.ru/?u=chtoto
Мы автоматически будем читать почту для chtoto@asdasd.ru.
1. Инструменты
1) Любой текстовой редактор
2) http://google.ru для вопросов
2. Начнем. Сбор инфы
Перейдя по ссылке:
http://pux.su/icq/
видим одну форму "Ваш e-mail:" Смотрим исходник страницы:
HTML:
Ваш e-mail:
Из этого следует, что нужно передать POST-ом act = send, mail = nashemail@asdasd.ruна index.php
Попробуем получить асью, вводим luboeslovo@asdasd.ru
Видим:
UIN отправлен на Ваш e-mail
Проверяем почту:
http://asdasd.ru/?u=luboeslovo
Видим:
http://s017.radikal.ru/i411/1112/22/77f5a78fe162t.jpg (http://radikal.ru/F/s017.radikal.ru/i411/1112/22/77f5a78fe162.jpg)
Ура! Асья пришла, но открывать сообщение не спешим
Смотрим исходный код, нас интересует только эта строка:
HTML:
pux.su - Раздача ICQ
Это адрес сообщения с асьей, куда мы и перейдем. В глаза сразу попадается(это и нужно спарсить):
UIN: 558443096
Пароль: 82IZpcGQ
Опять же смотрим исходник:
HTML:
--------------------
UIN: 558443096
Пароль: 82IZpcGQ
--------------------
Информации для старта предостаточно!
3. Реализация
Первым делом, конечно, нужно сгенерировать адрес мыла. Поэтому взял генератор паролей
PHP:
/* Для мыла */
$sim="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTG BNHYUJMKIOLP";//символы
$max=10;//длина
$size=StrLen($sim)-1;
$user=null;
while($max--)
$user.=$sim[rand(0,$size)];
$pref="@asdasd.ru";
$mylo=$user.$pref;//готовый address@asdads.ru
/*---------*/
Теперь его надо передать на сайт POST-запросом. Для этого юзаем функцию на cURL:
PHP:
/* Функция отправки запрос */
functionmake_http_post_request($url,$post,$ssl=fal se,$headers='',$uagent='') {
if (empty($url)) {
returnfalse;
}
$_post= Array();
if (is_array($post)) {
foreach ($postas$name=>$value) {
$_post[] =$name.'='.urlencode($value);
}
}
$ch=curl_init($url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);
if (is_array($post)) {
curl_setopt($ch,CURLOPT_POSTFIELDS,join('&',$_post));
}
if (is_array($headers)) {
curl_setopt($ch,CURLOPT_HTTPHEADER,$headers);
}
if (!empty($uagent)) {
curl_setopt($ch,CURLOPT_USERAGENT,$uagent);
}
$result=curl_exec($ch);
if (curl_errno($ch) !=0&& empty($result)) {
$result=false;
}
curl_close($ch);
return$result;
}
/*---------*/
Функция готова, ну чтож, передаем мыло:
PHP:
/* Запрос для отправки ICQ н а мыло */
$post= Array('mail'=>$mylo,'act'=>'send');//вот почему смотрели исход ник в самом начале ;)
$headers= Array();
$headers[] ="Content-type: application/x-www-form-urlencoded";
$content=make_http_post_request('http://pux.su/icq/index.php',$post,false,$headers,'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)' );//передача
/*--------------------------*/
Отлично! Осталось ждать прихода e-mail, делается это через sleep(); После парсим id сообщения(помните исходники?):
PHP:
sleep(5);// ждем 5 сек прихода e-mail
/* Заходим в почту, колдуем */
$pochta=file_get_contents("http://asdasd.ru/?u=".$user);
preg_match("#read(.*?)?u=#si",$pochta,$matches);// парсим id сбщ с icq
//print $matches[1]; // выводим id сообщения с icq
/*-------------------------*/
Тут немного говнокода... и самое главное - получение uin и pass
PHP:
/* Получаем сбщ с ICQ */
$sep="u=";// мой говнокод.start
$domain="http://asdasd.ru/read";
$urlmsg=$domain.$matches[1];
$final=file_get_contents($urlmsg.$sep.$user);// мой говнокод.end
/* Вывод ICQ */
preg_match("#UIN(.*?)-----#si",$final,$match);//парсим UIN и пасс. У меня н а денвере были траблы с к одировкой, решил строчкой ниже.
$uin=str_replace("Пароль","Password",$match[0]);//замена кракозябра
echo$uin;//святая строка =)
/*-------------------------*/
Весь код:
http://pastebin.com/VaRFSTRy
Скрин результата:
http://s50.radikal.ru/i128/1112/2f/52dcaa486577t.jpg (http://radikal.ru/F/s50.radikal.ru/i128/1112/2f/52dcaa486577.jpg)
4. Нюансы
ICQ дается людям с уник. IP. С денвера на 1 ip прошло 3-4 акка. Можно прикрутить proxies.txt и сохранять результат в текстовик. Но это защита от дурака, например от меня
5. OUTRO
Статья писалась человеком, который на 99% не знаком с php Юзал гугл, поэтому "О, могучий, Google!". Спасибо...
(c) Ereee