PHP で http ヘッダーを偽造してアンチホットリンク コードをクラックする
偽造されたリファラーのサンプル コードは、主に画像やソフトウェアなどのリーチ防止を突破するために使用されます。
完全なプログラムはここで直接提供されます。特定のアプリケーションは自分で変更できます。
ここで挙げた例は非常に単純です。実際、この例から多くのアプリケーションを開発できます。たとえば、実際の URL アドレスを隠すとか… ふふ、自分で解析してください
ここで新しいファイル file.php を作成します。次のパラメータは、偽造する必要があるリファファーのターゲット アドレスです。例: file.php/http://www.xxx.xxx/xxx.mp3
コードをコピー コードは次のとおりです:
$url=str_replace('/file.php/','',$_SERVER["REQUEST_URI"]);//変換する必要がある URL を取得します。ここでは怠け者なので、必要なものを追加します。
$downfile=str_replace(" "," ",$url);//スペースなどは置き換えることができます。実際の状況に応じて置き換えます
$downfile=str_replace("http://","",$downfile);//http:// を削除します
$urlarr=explode("/",$downfile) );//「/」を使用して分解します ドメイン名
$domain=$urlarr[0];//ドメイン名
$getfile=str_replace($urlarr[0],'',$downfile); //ヘッダーのGET部分を取得
$ content = @fsockopen("$domain", 80, $errno, $errstr, 12);// ターゲットホストに接続
if (!$content) {//リンクに接続できない場合は、エラーが表示されます
die(" 申し訳ありませんが、$domain に接続できません。 ")
}
fputs($content, "GET $getfile HTTP/ 1.0rn");
fputs($content, "Host: $domainrn");
fputs($content, "Referer: $domainrn");//偽の部分
fputs($content, "ユーザーエージェント: Mozilla/4.0 (互換性; MSIE 6.0; Windows NT 5.1)rnrn");
while (!feof($content)) {
$tp.=fgets($content, 128);
if (strstr($tp,"200 OK")){ //ここで一度説明します。通常、ヘッダーの最初の行は、要求されたファイルのステータスです。詳細については、「HTTP 1.1 ステータス コードとその意味」を参照してください。hi.baidu.com/110911/blog/item/21f20d2475af812ed50742c5.html これは通常のファイル リクエスト ステータスであり、直接リダイレクトするだけです。他の状態でプログラムを実行し続ける
header("Location:$url");
}
}
//302 リダイレクト、ほとんどのアンチホットリンク システムは決定最初にリファラーを使用し、それが正しい場合は実際のアドレスに切り替えます。実際のアドレスを取得するには以下のようにします。
$arr=explode("n",$tp);
$arr1=explode("Location: ",$tp);//Location の後のリアルタイムアドレスを分解
$arr2=explode ("n",$arr1[1]);
header('Content-Type:application/force-download');//強制ダウンロード
header("location:".$arr2[0]) ;//ターゲットアドレスにリダイレクトします
die();
このプログラムは、リファラーを使用してホットリンクを防止するためにのみ使用できます。ホットリンクを防ぐために他の特別な方法を使用するシステムの場合、この推定は適用されません
コードをコピーします コードは次のとおりです:
$txt =$_GET['url'];echo Referfile($txt,'http://www.jb51.net/');
関数 Referfile ($url,$refer='') {
$opt=array('http'=>array('header'=>"Referer:$refer"));
$context=stream_context_create( $opt);
Header(" Location:".$url);
return file_get_contents($url,false,$context);
コードをコピー
コードは次のとおりです: $host = "pakey.net"; //訪問したい
$target = "/test.asp" //訪問したいページのアドレス
$referer = "http//uuwar.com/" //偽のソースページ<🎜; >$fp = fsockopen($host, 80, $errno, $errstr, 30);
if(!$fp){
echo "$errstr($errno)
n";
}else{
$out = "
GET $target HTTP/1.1
ホスト: $host
リファラー: $referer
接続: Closernrn"; fwrite($fp, $out);
while(!feof( $fp)){
echo fgets($fp, 1024)
}
fclose($fp);
?>
これは、Yunxuange の電子書籍の盗難防止リンクを解読するために、私の小説『The Thief』で使用したコードです。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

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

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
