out 9 2008

Conectando no hotmail por Curl

[php]<?php
set_time_limit(0);
/*
””””””””””””””””””””””””””””””””””””””””


‘   Description:            This script Login you on http://mail.hot.com website with SSL using cURl/PHP.

‘   Written by:             Imran Khalid imranlink@hotmail.com

‘   Languages:              PHP + CURL

‘   Date Written:           December 20, 2005

‘   Version:                V.1.0

‘   Platform:               Windows 2000 / IIS / Netscape 7.1

‘   Copyright:              http://curl.phptrack.com

””””””””””””””””””””””””””””””””””””””””
*/    

if($_POST[‘login’])
{
    $php_userid = rawurlencode($_POST[‘login’]);
    $php_password = rawurlencode($_POST[‘passwd’]);
    
    $cookie_file_path = “/home/public_html/site/cookie.txt”; // Diretório onde seu Cookie irá ficar
    
    $fp = fopen($cookie_file_path,’wb’);    
    fclose($fp);
    
    $agent = “Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)”;
    $reffer = “http://mail.hot.com/“;
        
//1. Get first login page to parse hash_u,hash_challenge

    $LOGINURL = “http://login.passport.net/uilogin.srf?lc=1033&id=2“;    
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL,$LOGINURL);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
    $result = curl_exec ($ch);
    curl_close ($ch);        
    //echo “<textarea rows=30 cols=130>”.$result.”</textarea>”;     
    preg_match_all(“/value=\”(.*?)\”/”, $result, $arr_post);    
    $POSTFIELDS = “mspppostint=”.urlencode($arr_post[1][0]);
    // 2- Postar conteudo do Login para pagina https://login.hot.com/config/login?
    
    $LOGINURL = “http://login.passport.net/uilogin.srf?lc=1033&id=2“;
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL,$LOGINURL);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    curl_setopt($ch, CURLOPT_POST, 1); 
    curl_setopt($ch, CURLOPT_POSTFIELDS,$POSTFIELDS); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_REFERER, $reffer);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
    $result = curl_exec ($ch);
    curl_close ($ch); 
    //echo “<textarea rows=30 cols=130>”.$result.”</textarea>”;     
    preg_match_all(“/action=\”(.*?)\”/”, $result, $arr_post);    
    $url_login = $arr_post[1][0];
    preg_match_all(“/PPFT(.*?)\>/”, $result, $arr_post);    
    $PPFT = $arr_post[1][0];
    preg_match_all(“/value=\”(.*?)\”/”, $PPFT, $arr_post);    
    $PPFT = urlencode($arr_post[1][0]);

    //print “\r\n<br>”.$url_login;
    //print “\r\n<br>”.$PPFT;    

// 2- Postar conteudo do Login para pagina https://login.hot.com/config/login?
    $LOGINURL = $url_login;
    $POSTFIELDS=’PPSX=PassportR&PwdPad=IfYouAreReadingThisYouHaveTooMu&login=’.$php_userid.’&passwd=’.$php_password.’&LoginOptions=3&PPFT=’.$PPFT;
    
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL,$LOGINURL);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    curl_setopt($ch, CURLOPT_POST, 1); 
    curl_setopt($ch, CURLOPT_POSTFIELDS,$POSTFIELDS); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_REFERER, $reffer);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
    $result = curl_exec ($ch);
    curl_close ($ch); 
    //echo “<textarea rows=30 cols=130>”.$result.”</textarea>”;     
    preg_match_all(“/replace\(\”(.*?)\”/”, $result, $arr_post);    
    $url_login = $arr_post[1][0];
    //print “\r\n<br> url:”.$url_login;
    
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL,$url_login);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_REFERER, $reffer);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
    $result = curl_exec ($ch);
    curl_close ($ch); 
    //echo “<textarea rows=30 cols=130>”.$result.”</textarea>”;     
    preg_match_all(“/_UM=\”(.*?)\”/”, $result, $arr_post);    
    $url_login = $arr_post[1][0];
    //print “\r\n<br> contact:”.$url_login;
    

// 4- Pegar lista de endereço.
    $addressURL = ‘http://hotmail.msn.com/cgi-bin/addresses?’.$url_login;
    
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL,$addressURL);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_REFERER, $reffer);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
    $result = curl_exec ($ch);
    curl_close ($ch); 
    //echo “<textarea rows=30 cols=130>”.$result.”</textarea>”;     
    //print $result;
    preg_match_all(“/id=\”ListTable\”\>(.*?)\<input type=\”hidden\”/”, $result, $arr_post);    
    $url_login = $arr_post[1][0];
    print “\r\n<br>”.'<table border=0 cellpadding=0 cellspacing=0 width=100% class=”EE” id=”ListTable”>’.$url_login;


else
{
    login_form();
}    

////////////////////////////////////////////////////////////////////////////////////////////////
function login_form()
{

?>
<html>
<head>
<title>HotMail</title>
<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″>
</head>

<body>
Pegar lista de contatos do e-mail do hotmail
<form method=”post” action=”hotmail.php” autocomplete=off name=”login_form” >
<table id=”yreglgtb” summary=”form: login information”>
                    <tbody><tr>
                        <th><label for=”username”>hotmail Email:</label></th>
                        <td><input name=”login” id=”login” value=”” size=”17″ class=”yreg_ipt” type=”text”></td>
                    </tr>
                    <tr>
                        <th><label for=”passwd”>Password:</label></th>
                        <td><input name=”passwd” id=”passwd” value=”” size=”17″ class=”yreg_ipt” type=”password”></td>
                    </tr>
                
                </tbody></table>
<input value=”Login” type=”submit”>
</form>

</body>
</html>
<?
}
?> [/php]

Já aviso, que ainda não testei o código, mas testarei em breve para ver se está funcionando com o atual hotmail.



2 Comentários:

Trackbacks

  1. Elsio diz:
    kd os créditos? bota a fonte carai
    dezembro 24th, 2008 às 1:36 pm
  2. José Pedro diz:
    aham… sei… fez essa penca de código sem testar… conta outra…
    julho 27th, 2009 às 9:08 am

DEIXE UM COMENTÁRIO

Subscrever

Subscreve o Blog



Publicidade

Comentários Recentes

  • shirley Balazs: Parabéns!! Informações de utilidade publica e de primeira, foi muito útil a mim.Obrigada!!
  • Jefferson Ferreira de brito: eu quero muito
  • thiago valente: Eu quero um para mim
  • Lucas martins balieiro: Eu não fiz o enem mesmo assim eu posso me inscrever no site essa é minha dúvida, só queme...
  • Francisca Marli Oliveira: quero saber quanto tenho no meu fgts

Links

Leitores Recentes

VALE O CLIQUE!

Site Seguro Ocioso

Divulgue o blog Infomaroto em seu site e tenha seu link ou banner aqui.
Blog Infomaroto