Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » SMTP авторизация

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

alex69999

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как проводить сабж?
вот посылаю я
auth plain
 
и получаю
334 VXNlcm5hbWU6
 
чё это за херь?
как сформировать ответ

Всего записей: 19 | Зарегистр. 14-08-2002 | Отправлено: 01:31 10-09-2002
DimoN



Tech administrator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex69999
 
Если на перле, то юзай соотв. модули
 

Код:
 
use Mail::POP3Client;
 
# Открываем соединение
$pop = new Mail::POP3Client( USER     => $login,
PASSWORD => $password,
HOST     => $mailserver );
 
$number = $pop->Count();
if ($number ne "0"){
for( $i = 1; $i <= $number; $i++ ) {
foreach( $pop->Head( $i ) ) { &get_body($i);}
}
}
$pop->Close();
 
 
 

 
 
заголовки - $pop->Head($i);
 
тело - $pop->Body($i);
 
 
Дальше легко

----------
Мы Баним с улыбкой :) ™

Всего записей: 7528 | Зарегистр. 19-04-2001 | Отправлено: 03:00 10-09-2002
alex69999

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну вообще-то на ПХП, но хотелось-бы самому, а не модулями
в RFC 2554 ни слова как это кодировать

Всего записей: 19 | Зарегистр. 14-08-2002 | Отправлено: 03:02 10-09-2002
Fakin



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
alex69999, как ты собираешься с почтой без модулей работать?

Всего записей: 243 | Зарегистр. 19-08-2002 | Отправлено: 12:01 12-09-2002
russkiy



Запрет на пост
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
так .. ну если без модулей..
 
 
 

Цитата:
и получаю  
334 VXNlcm5hbWU6  
чё это за херь?

 
http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2554.html
 

Цитата:
The authentication protocol exchange consists of a series of server challenges and client answers that are specific to the authentication mechanism. A server challenge, otherwise known as a ready response, is a 334 reply with the text part containing a BASE64 encoded string.

 
вот что он пишет .. помоему все ясно ?))
 
соответственно plain -это и есть пароль в BASE64 encoded string
в Пых-Пыхе для этого стандартная ф-ция есть.

 
удачи..  
 
 

Всего записей: 593 | Зарегистр. 17-07-2002 | Отправлено: 16:01 12-09-2002
alex69999

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Fakin, а зачем мне модули для работы с почтой?
fgets и fputs и руки заточить и вперёд
 
 
russkiy, я что-то непонял как туда посылать, херь что выдаёт сервер я расшифровал, оказалось банальное юзернэйм, в ответ пихаю юзернейм в бэйз64 и мне сразу 535 Authentication failed.
видно как-то надо совместить и слать и логин и пароль одной строкой, но вот только как я и base64_encode("usep/pass") пробовал и base64_encode("usep\npass") а не помогает.
как выслать?
 

Всего записей: 19 | Зарегистр. 14-08-2002 | Отправлено: 19:33 12-09-2002
russkiy



Запрет на пост
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
alex69999
 
 
стоп-стоп!!!!
надо делать так!
 
пишешь : ehlo твой_логин
 
ответ тебе (примерно такой)
 
250-bla-bla-bla.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN DIGEST-MD5 CRAM-MD5
250-AUTH=LOGIN PLAIN DIGEST-MD5 CRAM-MD5
250-XVERP
250 8BITMIME
 
а ты ему:
 
AUTH PLAIN dGVzdAB0ZXNAHRlc3RwYXNz  
 
(это пароль)
 
что ты там делаешь? непонятно

Всего записей: 593 | Зарегистр. 17-07-2002 | Отправлено: 11:59 13-09-2002
alex69999

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На ехло пишем мой логин или мой е-мэйл?
Я поигрался в настройках бата и увидел, что при прописывание своего логина.пароля на СМТП он выводит е-майл, и с ним коннектится, без имэйла не конектится
значит варианты перепробованы
ELHO alex6999
ELHO alex6999@rogers.com
всё вышепреведенное но в бэйз64
 
AUTH PLAIN и тут тоже комбинировал и нифига.

Всего записей: 19 | Зарегистр. 14-08-2002 | Отправлено: 20:54 13-09-2002
russkiy



Запрет на пост
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
alex69999
 

Цитата:
На ехло пишем мой логин или мой е-мэйл?  

смотря как у тебя авторизация организованна:
если (как у меня) виртуальные тьо скорее всего alex6999@rogers.com  
 
а если реальные юзера то alex6999  
при передаче логина никаких базе64 просто текст, а потом, блин (сколько раз объяснять!)  
 
AUTH PLAIN (и пароль в базе64)
 
ЗЫ: слушь, а может у тебя просто авторизация AUTH PLAIN  не поддерживается? типа только мд5?
 
ЗЗы: rogers.com - это что реально твой адрес?

Всего записей: 593 | Зарегистр. 17-07-2002 | Отправлено: 13:59 15-09-2002
alex69999

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
>> На ехло пишем мой логин или мой е-мэйл?
FRB> если (как у меня) виртуальные тьо скорее всего alex6999@rogers.com
вот так писал.

FRB> при передаче логина никаких базе64 просто текст, а потом, блин (сколько раз объяснять!)
делал и текст

FRB> AUTH PLAIN (и пароль в базе64)
делал

FRB> ЗЫ: слушь, а может у тебя просто авторизация AUTH PLAIN  не поддерживается? типа только мд5?
поддерживается, ниже лог

220 fep03-mail.bloor.is.net.cable.rogers.com ESMTP server (InterMail vM.5.01.05.06 201-253-122-126-106-20020509) ready Sun, 15 Sep 2002 14:17:52 -0400
>>>>> EHLO alex6999@rogers.com
250-fep03-mail.bloor.is.net.cable.rogers.com
250-HELP
250-AUTH=LOGIN PLAIN
250-AUTH LOGIN PLAIN
250-PIPELINING
250-DSN
250-8BITMIME
250 SIZE 7168000
>>>>> AUTH PLAIN LS0tLQ==
535 Authentication failed


теперь код

<?


$fp = fsockopen("smtp", 25, &$errno, &$errstr);
if(!$fp)
 {
  echo "$errstr ($errno)<br>\n";
 }
else
 {
  $readstr=fgets($fp,1024);
  echo $readstr."<BR>";
  if (substr($readstr,0,3)=="220")
   {
    $ansstr="EHLO alex6999@rogers.com\n";
    echo ">>>>> ".$ansstr."<BR>";
    fputs($fp,$ansstr);
    $readstr=fgets($fp,1024);
    echo $readstr."<BR>";
    $readstr=fgets($fp,1024);
    echo $readstr."<BR>";
    $readstr=fgets($fp,1024);
    echo $readstr."<BR>";
    $readstr=fgets($fp,1024);
    echo $readstr."<BR>";
    $readstr=fgets($fp,1024);
    echo $readstr."<BR>";
    $readstr=fgets($fp,1024);
    echo $readstr."<BR>";
    $readstr=fgets($fp,1024);
    echo $readstr."<BR>";
    $readstr=fgets($fp,1024);
    echo $readstr."<BR>";
    if (substr($readstr,0,3)=="250")
     {
      $ansstr="AUTH PLAIN ".base64_encode("----")."\n";
//       $ansstr="AUTH PLAIN\n";
      echo ">>>>> ".$ansstr."<BR>";
      fputs($fp,$ansstr);
      $readstr=fgets($fp,1024);
      echo $readstr."  (";
      echo base64_decode(substr($readstr,4,100)).")<BR>";
//       if (substr($readstr,0,3)=="334")
//        {
//         $ansstr=base64_encode("----")."\n";
//         echo ">>>>> ".$ansstr."<BR>";
//         fputs($fp,$ansstr);
//         $readstr=fgets($fp,1024);
//         echo $readstr."<BR>";
//         if (substr($readstr,0,3)=="235")
//          {
//           fputs($fp,"MAIL FROM:\x22Alex Romanovski\x22<alex6999@rogers.com>\n");
//           $readstr=fgets($fp,1024);
//           echo $readstr."<BR>";
//
//
//
//          }
//         else echo "Authentication failed";
//        }
//       else echo "Authentication Method Not Accepted";
     }
    else echo "HELO Not Accepted";
   }
  else echo "STMP Server Not Responded";
 }
               

?>


Однако если расскоментировать то будет так

220 fep02-mail.bloor.is.net.cable.rogers.com ESMTP server (InterMail vM.5.01.05.06 201-253-122-126-106-20020509) ready Sun, 15 Sep 2002 14:22:35 -0400
>>>>> EHLO alex6999@rogers.com
250-fep02-mail.bloor.is.net.cable.rogers.com
250-HELP
250-AUTH=LOGIN PLAIN
250-AUTH LOGIN PLAIN
250-PIPELINING
250-DSN
250-8BITMIME
250 SIZE 7168000
>>>>> AUTH PLAIN
334 VXNlcm5hbWU6 (Username
>>>>> LS0tLQ== (пароль тут, а почему он имя спрашивает)
535 Authentication failed



FRB> ЗЗы: rogers.com - это что реально твой адрес?
да, только SMTP называется
ssmtp.bloor.is.net.cable.rogers.com - оно только парольное, даже на
свои записи не принимает мыло. в MX наверное другой сервак прописан

Всего записей: 19 | Зарегистр. 14-08-2002 | Отправлено: 21:27 15-09-2002
russkiy



Запрет на пост
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
334 VXNlcm5hbWU6 (Username
>>>>> LS0tLQ== (пароль тут, а почему он имя спрашивает)
 

 
334 - это ожидание ввода ПАРОЛЯ!!!!!!!!!!!!!!!!!!
логин ты вводишь при EHLO!!!
 
вот еще тема: у тебя вполне логин может быть просто alex6999 я не знаю как у тебя авторизация сделана, спроси у админа, или посмотри в настройках почтовой программы.
 
ага.. и еще.. ты rfc821 и 2554 читал?  
строки должны завершаться \n\r а не \n  
 
RTFM, блин!!!

Всего записей: 593 | Зарегистр. 17-07-2002 | Отправлено: 12:12 16-09-2002
alex69999

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex6999@rogers.com - логин такой, специально игрался с батом, насчёт логинов паролей.
насчёт \n\r исправил, но не помогает

вообщем сниффер мне наверное только и поможет

Всего записей: 19 | Зарегистр. 14-08-2002 | Отправлено: 22:35 16-09-2002
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » SMTP авторизация


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru