MSN 友達リストを取得するための PHP コード (2009 年 5 月 14 日にテスト)
Jun 13, 2016 pm 12:22 PM
doctypehtmlmsnphpコードリストコピー友達テストの得る合格
コードをコピー コードは次のとおりです:
# ファイル名: fm.php
# 目的: MSN 連絡先リストの取得
# 著者: http://qartis.com/?qmsn 修正者: Druggo
$username = $_POST['username'];
$パスワード = $_POST['パスワード'];
$debug = 0;
$trid = 0;
$proto = "MSNP10";
# ここから開始
echo "通讯协议 $proto
";
echo "开始登录
";
# 今すぐログインします
$sbconn = fsockopen("messenger.hotmail.com",1863) または die("MSN サーバーに接続できません");
フラッシュ();
data_out("VER $trid $proto CVR0");
data_in();
data_out("CVR $trid 0x0409 winnt 5.1 i386 MSNMSGR 8.0.0812 MSMSGS $username");
data_in();
data_out("USR $trid TWN I $username");
$temp = data_in();
if (!stristr($temp,":")){
if (substr($temp,0,3)==601){
#echo "エラー: MSN サーバー現在利用できません。";
echo "很不幸,MSN のサービス务器また挂了 >.";
死ぬ();
} else {
echo "连接失败!
";
fclose($sbconn);
死ぬ();
}
}
@fclose($sbconn);
$temp_array =explode(" ",$temp);
$temp_array =explode(":",$temp_array[3]);
フラッシュ();
$sbconn = fsockopen($temp_array[0],$temp_array[1]) または die("error -_-#");
data_out("VER $trid $proto CVR0");
data_in();
フラッシュ();
data_out("CVR $trid 0x0409 winnt 5.1 i386 MSNMSGR 8.0.0812 MSMSGS $username");
data_in();
data_out("USR $trid TWN I $username");
$temp = data_in();
$temp_array =explode(" ",$temp);
フラッシュ();
$TOKENSTRING = トリム(end($temp_array));
#echo "認証中";
echo "身份验证中……
";
フラッシュ();
$nexus_socket = fsockopen("ssl://nexus.passport.com",443);
fputs($nexus_socket,"GET /rdr/pprdr.asp HTTP/1.0rnrn");
while ($temp != "rn"){
$temp = fgets($nexus_socket,1024);
if (substr($temp,0,12)=="パスポートURL"){
$urls = substr($temp,14);
}
}
$temp_array =explode(",",$urls);
$temp = $temp_array[1];
$temp = substr($temp,8);
$temp_array =explode("/",$temp);
@fclose($nexus_socket);
$ssl_conn = fsockopen("ssl://".$temp_array[0],443);
fputs($ssl_conn,"GET /{$temp_array[1]} HTTP/1.1rn");
fputs($ssl_conn,"認証: Passport1.4 OrgVerb=GET,OrgURL=http://messenger.msn.com,sign-in=".urlencode($username).",pwd=$password,$トークンストリングrn");
fputs($ssl_conn,"ユーザーエージェント: MSMSGSrn");
fputs($ssl_conn,"ホスト: {$temp_array[0]}rn");
fputs($ssl_conn,"接続: 維持");
fputs($ssl_conn,"キャッシュ制御: no-cachernrn");
$temp = fgets($ssl_conn,512);
if (rtrim($temp) == "HTTP/1.1 302 Found"){
#echo "リダイレクト";
echo "开始重定方向
";
フラッシュ();
while ($temp != "rn"){
$temp = fgets($ssl_conn,256);
if (substr($temp,0,9)=="場所:"){
$temp_array =explode(":",$temp);
$temp_array =explode("/",trim(end($temp_array)));
休憩;
}
}
@fclose($ssl_conn);
$ssl_conn = fsockopen("ssl://".$temp_array[2],443);
fputs($ssl_conn,"GET /{$temp_array[3]} HTTP/1.1rn");
fputs($ssl_conn,"認証: Passport1.4 OrgVerb=GET,OrgURL=http://messenger.msn.com,sign-in=".urlencode($username).",pwd=$password,$トークンストリングrn");
fputs($ssl_conn,"ユーザーエージェント: MSMSGSrn");
fputs($ssl_conn,"ホスト: {$temp_array[2]}rn");
fputs($ssl_conn,"接続: 維持");
fputs($ssl_conn,"キャッシュ制御: no-cachernrn");
} elseif (rtrim($temp)=="HTTP/1.1 401 Unauthorized"){
#echo "invalidcreds";
エコー「验证失败!
";
@fclose($ssl_conn);
die();
} else {
if (rtrim($temp) != "HTTP/1.1 200 OK" ){
#echo "不明な HTTP ステータス コード: $temp
";
flush()
die() ;
} else {
#echo "set_bar_len30?"
}
}
while ($temp != "rn"){
$temp = fgets( $ssl_conn,1024);
if (substr($temp,0,19)=="認証情報"){
$auth_info = $temp
$temp = fgets($ssl_conn,1024) );
if (substr($temp,0,14)!="コンテンツの長さ"){
$auth_info.= fgets($ssl_conn,1024);
break; 🎜>}
}
@fclose($ssl_conn);
$temp_array =explose("'",$auth_info);
data_out ("USR $trid TWN S {$temp_array[1]}");
flush()
flush(); $time_since_initmsg = time();
while(!strstr($temp,"ABCHMigrated") && is_string(trim($temp))){
if (substr($temp,0,3)== sid"){
$sid = トリム(substr($temp,5));
}
if (substr($temp,0,2)=="kv"){
$ kv = トリム(substr($temp,4));
}
if (substr($temp,0,7)=="MSPAuth"){
$mspauth = トリム(substr($temp) ,9));
フラッシュ();
}
$temp = data_in();
}
$temp = data_in();
#echo "認証済み
";
echo "验证通过!
";
フラッシュ();
#data_out("LST 9 RL");
#data_in();
data_out("SYN $trid 0 0");
#echo "連絡先リストの取得
";
echo "正在获取好友列表……
";
フラッシュ();
stream_set_timeout($sbconn,0,125000);
/* 怠け者がこれをやっている :D */
for($i=0;$i{
$temp = データ入力();
switch (substr($temp, 0, 3))
{
case "LST":
$temp_array =explode(" ",$temp);
$un = substr($temp_array[1], 2);
$nn = substr($temp_array[2], 2);
$nn1 = substr($temp_array[2], 0, 1);
if($nn1 == "F")
{
echo "$nn
";
}
else
{
echo "曾经的好友: $un
";
}
#echo $temp."
";
休憩;
デフォルト:
# いいえ、何もありません
ブレーク;
}
}
echo "列表结束";
@fclose($sbconn);
# ここで終了
# 関数
function data_out($data){
global $sbconn,$debug,$trid;
fputs($sbconn,$data."rn");
$trid ;
if ($debug && !empty($data)){ echo "> ".$data."
rn";}
}
function data_in(){
グローバル $sbconn,$debug;
$temp = fgets($sbconn,256);
if ($debug && !empty($temp)){echo "rn";}
return $temp;
}
?>
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事
Inzoi:学校と大学への応募方法
1 か月前ByDDD
Atomfallのサイトオフィスキーを見つける場所
4週間前ByDDD

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

ドリームウィーバー CS6
ビジュアル Web 開発ツール

Dreamweaver Mac版
ビジュアル Web 開発ツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

ホットトピック
Gmailメールのログイン入り口はどこですか?
7909
15


Java チュートリアル
1652
14


CakePHP チュートリアル
1411
52


Laravel チュートリアル
1303
25


PHP チュートリアル
1248
29

