Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

21.08.2009, 00:34
|
|
Постоянный
Регистрация: 20.01.2005
Сообщений: 899
Провел на форуме: 1535446
Репутация:
182
|
|
зачем создавать отдельную тему - непонятно, таких вопросов миллион (как и ответов) по форуму
Вы вопроса не догоняете видимо. Кароче смысл - во многих крупных проектах авторизация не так проста как кажется, благодаря js, который дает дополнительные параметры для создания сессии, и соответственно логин без них не проходит.Например данные передаются аяксом(каждый раз могут быть уникальными(соответственн 2 раза их послать уже нельзя). Столкнулся с этой проблемой сам, не так давно.
Вообщем сразу к решению:
1) Если парсер пишешь(ну или что ты там делаешь) под один проект, то можно рассматривать джаваскрипты, как они создают эти уникальные ключи, куда отсылают и прочее. Однако часто они обфускации подлежат, да и криптуют + сжимают, что разобраться с ними порой не выгодно. Овчинка выделки не стоит, как говорят. Тогда на этот случай есть 2 решение.
2) Решение 2, юзать готовые браузеры,т.к. в них есть js, причем их DOM полюбому поддерживает проект. Здесь тоже куча вариантов, берешь IE или gecko движек и вперед.Но тут уж скриптами не обойдешься.
|
|
|

21.08.2009, 02:12
|
|
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме: 2769640
Репутация:
1304
|
|
2TC Учите пхп, в нем все написано, это для 2 сервера, с небольшими изменениями будет работать и с первым:
PHP код:
//===================================
$login='логин';
$pass='пароль';
//===================================
@set_time_limit(0);
@ini_set("max_execution_time", 0);
$cookie=array();
function post($url='',$content='',$referer='')
{
GLOBAL $cookie;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');
if (!empty($cookie)) curl_setopt($ch, CURLOPT_COOKIE, implode('; ',$cookie));
if (!empty($content)) {curl_setopt($ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_POSTFIELDS, $content);} else {curl_setopt($ch, CURLOPT_POST, 0);}
if (!empty($referer)) curl_setopt($ch, CURLOPT_REFERER, $referer);
$ss=curl_exec($ch);
curl_close($ch);
if (preg_match_all('#^Set-Cookie: (([^;=]+)=([^;=\r\n]+))#mi',$ss,$cook))
{
if ($tmpcookie=array_combine($cook[2],$cook[1]))
$cookie=(array)$tmpcookie + (array)$cookie;
}
return $ss;
}
post('http://g2.botva.mail.ru/login.php','server=2&email='.urlencode($login).'&email2=mail.ru&passWord='.urlencode($pass).'&b_msg_go2.x=47&b_msg_go2.y=27&main=','http://g2.botva.mail.ru/index.php');
echo post('http://g2.botva.mail.ru/index.php');
qBiN То что один человек сделал - другой завсегда сломать сможет. А полагаться на яваскрипты - это терять многих пользователей, кто ими не пользуется
__________________
Любая действущая программа устарела.
Создайте систему, которой сможет пользоваться даже дурак ,и только дурак захочет ею пользоваться.
Как правильно задавать вопросы: _http://www.yakimchuk.ru/questions.htm
|
|
|

21.08.2009, 02:34
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
В данном сабже про яваскрипты чушь. Вот рабочий скрипт авторизации на ботве на основании мною вышесказанного:
PHP код:
<pre>
<?
@set_time_limit(0);
@ini_set("display_errors","1");
$mail = ''; // Ваша почта на mail.ru, всё, что до @mail.ru
$pass = '';// Пароль от почты
// Раззззз....... АВТОРИЗАЦИЯ
$cl = curl_init('http://g2.botva.mail.ru/login.php');
curl_setopt($cl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($cl, CURLOPT_POST, 1);
curl_setopt ($cl, CURLOPT_POSTFIELDS, "server=2&email=$mail&email2=mail.ru&passWord=$pass&submit.x=94&submit.y=14");
curl_setopt($cl, CURLOPT_USERAGENT, 'Opera/9.25 (Windows NT 5.1; U; ru)');
curl_setopt($cl, CURLOPT_REFERER, 'http://g2.botva.mail.ru/index.php');
curl_setopt($cl, CURLOPT_HEADER, 1);
curl_setopt($cl, CURLOPT_COOKIEJAR, 'coockie.txt');
$ex = curl_exec($cl);
curl_close($cl);
// Два...... ИДЁМ НА ЛЮБУЮ СТРАНИЦУ САЙТА, НО УЖЕ АВТОРИЗОВАННЫЕ
$exec = curl_init('http://g2.botva.mail.ru/tour.php');
curl_setopt($exec, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($exec, CURLOPT_USERAGENT, 'Opera/9.25 (Windows NT 5.1; U; ru)');
curl_setopt($exec, CURLOPT_REFERER, 'http://g2.botva.mail.ru/login.php');
curl_setopt($exec, CURLOPT_HEADER, 1);
curl_setopt($exec, CURLOPT_COOKIEFILE, 'coockie.txt');
$page = curl_exec($exec);
curl_close($exec);
echo $page;
?>
</pre>
ну и Gifts риспект, впрочем как и всегда (практически тоже самое, только оформленное в виде функции с небольшими изменениями в алгоритме)
PS: Какие куки вы в итоге получили всегда можете посмотреть в файле, который создается автоматически в той же папке, где был запущен сам скрипт - coockie.txt
все необходимые данные элементарно цепляются из tamper data (плагин для FireFox), что было уже озвучено выше.
Итог: обычнейшая авторизация, ничем вообще не отличающаяся по сложности от авторизации на ачаде.
Приведен пример авторизации на сервере g2, так как не мог зарегица на сервере g1, потому что он официально работает только до 1 ноября 2008 года.
Последний раз редактировалось Pashkela; 21.08.2009 в 02:57..
|
|
|

22.08.2009, 16:47
|
|
Постоянный
Регистрация: 20.01.2005
Сообщений: 899
Провел на форуме: 1535446
Репутация:
182
|
|
А полагаться на яваскрипты - это терять многих пользователей, кто ими не пользуется
Яхуу, всмысле yahoo.com посмотрю как ты настройки ящика будешь менять без js. Хороший пример я думаю.
|
|
|

22.08.2009, 17:17
|
|
Постоянный
Регистрация: 20.01.2005
Сообщений: 899
Провел на форуме: 1535446
Репутация:
182
|
|
Я бы посмотрел на код JS, который нельзя перевести к примеру на php
перевести можно, но затратно. Долго пример искать не хочу, вот пример обфускованого кода, правда он тут не закодирован escape`ами и прочим. http://l.yimg.com/d/lib/bc/bc_2.0.4.js скрипт самый маленький, который нашел)
Последний раз редактировалось qBiN; 22.08.2009 в 17:25..
|
|
|

22.08.2009, 18:08
|
|
Постоянный
Регистрация: 20.01.2005
Сообщений: 899
Провел на форуме: 1535446
Репутация:
182
|
|
ну если ты не заметил, то этот скриптик используется для передачи данных о пользователе картинке по урлу http://us.bc.yahoo.com/b
там всё просто - заменить пхп эквивалентами и выдрать двиг.... ну иногда ещё можно обфусцированные выражения просто заменить 1 строкой
вот это вообще не понял, что ты написал.
---
Это кажется все просто, пока не начнешь работать с этим.
|
|
|

22.08.2009, 20:24
|
|
Постоянный
Регистрация: 20.01.2005
Сообщений: 899
Провел на форуме: 1535446
Репутация:
182
|
|
если картинка как-то влияет на авторизация, то просто скопировать передаваемые данные и каждый раз их посылать
А теперь читаем выше
каждый раз могут быть уникальными(соответственн 2 раза их послать уже нельзя)
--
ну и народ пошел
|
|
|

22.08.2009, 23:03
|
|
Постоянный
Регистрация: 20.01.2005
Сообщений: 899
Провел на форуме: 1535446
Репутация:
182
|
|
если что-то разное, то легко смотрится часть кода и добавляется в отсылку данных
base64 + md5(pass + md5(sess))
ахаха) это js)))
--
Закончил оффтоп.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|