ホームページ > php教程 > php手册 > PHP を使用してリファラーを偽造し、外部接続を禁止するネットワーク ディスクのコードを突破する

PHP を使用してリファラーを偽造し、外部接続を禁止するネットワーク ディスクのコードを突破する

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-13 12:28:47
オリジナル
1113 人が閲覧しました

たとえば、ファイル http://img.namipan.com/downfile/da333ee178bdad6531d1ec1540cf86277c116b6300887600/02.Paid In Full.mp3

このアドレスを直接ダウンロードしたり、Web プレーヤーで再生したりすることはできません。[ダウンロード] をクリックします。ダウンロードページに飛びます。このファイルを直接ダウンロードまたは再生できるようにするには、リファファーを偽造してサーバーを欺く必要があります。リファファーはナノディスクからのリンクです。

最初に使用される方法は、PHP の組み込み関数 stream_context_create を使用することです。

コードは次のとおりです。

function Referrfile($url, $refer=”) {
$opt=array('http'=>array('header'=) >" リファラー: $refer”));
$context=stream_context_create( $opt);
return file_get_contents($url,false, $context);
}

しかしこれこのコードには、file_get_contents が実際に相手のサーバーから自分のサーバーにファイルを読み込んでからブラウザに送信するという欠点があります。これにより、自分のサーバーへの負荷が増大するだけでなく、ダウンロードの応答速度も非常に遅くなります。

次に、自分のサーバーの負荷を軽減し、他のサーバーの混乱を軽減したいと思います。

修正されたコードは次のとおりです。 :
$url=”img.namipan.com/downfile/da333ee178bdad6531d1ec1540cf86277c116b6300887600/02.Paid In Full.mp3″;//ここの URL は除外する必要があります http://
$urlarr=explode(”/ ” ,$url);
$domain=$urlarr[0];// ドメイン名を分解します
$getfile=str_replace($urlarr[0],”,$url); @fsockopen ("$domain", 80, $errno, $errstr, 12);// 最初に相手のサーバーに接続します
if (!$content){// リンクを作成できない場合はエラー メッセージを表示します
die("申し訳ありません、$domain に接続できません ”);
}
fputs($content, “GET $getfile HTTP/1.0rn”);
fputs($content, “Host : $domainrn”);
fputs($content, “リファラー: $domainrn”);//偽のリファラー
fputs($content, “ユーザー エージェント: Mozilla/4.0 (互換性; MSIE 6.0; Windows NT) 5.1)rnrn”);

while (!feof($content)) {
$tp.=fgets($content, 128); 含まれるヘッダー情報を読み取ります。 場所: http: //xxx/ xxx.mp3、これが必要なアドレスです。
}
$arr=explode("n",$tp);
$arr1=explode("場所: ",$tp);
$arr2=explode("n",$ arr1[1]);//Location:
header('Content-Type:application/force-download');
header("location:".$arr2[0]); 🎜>fclose($content);

OK、目的は達成されました。

この元のアドレス: http://img.namipan.com/downfile/3a7c64518d46d986283eab73175a8b119305a76480b89200/Equilibrium-Turis_Fratir-02-Wingthors_Hammer.mp3

変換後:

http : //mms.music.krmcn.com/mms.music/namipan/img~~/3a7c64518d46d986283eab73175a8b119305a76480b89200/Equilibrium-Turis_Fratir-02-Wingthors_Hammer.mp3

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート