ホームページ  >  記事  >  バックエンド開発  >  PHP はカールを使用して IP ソース コードを偽造します

PHP はカールを使用して IP ソース コードを偽造します

WBOY
WBOYオリジナル
2016-07-25 09:03:31785ブラウズ
  1. $ch =curl_init();
  2. $url = "http://localhost/target_ip.php";
  3. $header = array(
  4. 'CLIENT-IP:58.68.44.61',
  5. ' ;
  6. $page_content =curl_exec($ch);
  7. curl_close($ch);
  8. echo $page_content;
  9. ?>
  10. コードをコピー
要求されたターゲット ファイル ---target_ip.php:

echo getenv('HTTP_CLIENT_IP');
    echo getenv('HTTP_X_FORWARDED_FOR');
  1. echo getenv('REMOTE_ADDR');
  2. ?>
  3. コードをコピー
目標ファイル target_ip 内の IP 印刷順序は、多くのオープン ソース システムの現在の IP 取得順序です。 fake_ip.php にアクセスして結果を確認します。 58.68.44.61 58.68.44.61 127.0.0.1 最後に、小さな例を 2 つ紹介します。 例1:

$ch =curl_init();
    curl_setopt($ch, CURLOPT_URL, "http://localhost/2.php");
  1. curl_setopt($ch, CURLOPT_HTTPHEADER, array(' X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8')); //IP を構築
  2. curl_setopt($ch, CURLOPT_REFERER, "http://bbs.it-home.org/ ") ; // 構築ソース
  3. curl_setopt($ch, CURLOPT_HEADER, 1);
  4. $out =curl_exec($ch);
  5. curl_close($ch);
  6. ?>
  7. コードをコピー
例 2:

function getClientIp() {
    if (!empty($_SERVER["HTTP_CLIENT_IP"]))
  1. $ip = $_SERVER["HTTP_CLIENT_IP"];
  2. else if (!empty( $_SERVER["HTTP_X_FORWARDED_FOR"]))
  3. $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
  4. else if (!empty($_SERVER["REMOTE_ADDR"]))
  5. $ip = $_SERVER["REMOTE_ADDR"];
  6. else
  7. $ip = "err";
  8. return $ip;
  9. }
  10. echo "IP: " . getClientIp() . "";
  11. echo "referer: " . $_SERVER["HTTP_REFERER"];
  12. ?>
  13. コードをコピー
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。