3

我从某个朋友那里听说我们可以使用 HTTP_X_FORWARDED_FOR 在 Curl 中欺骗我们的 IP 地址,所以我决定对其进行测试,并创建三个文件一个来发送 Curl:

<?php

$ip = '1.1.1.1';
$url = "http://127.0.0.1/mydir/getdata.php";
$options = array (
    CURLOPT_CONNECTTIMEOUT => 1, // timeout on connect
    CURLOPT_TIMEOUT => 1, // timeout on response
    CURLOPT_MAXREDIRS => 1 ,
    CURLOPT_HTTPHEADER => array("REMOTE_ADDR: $ip", "HTTP_X_FORWARDED_FOR: $ip"),
    CURLOPT_URL => $url ,
    );
$ch = curl_init();
curl_setopt_array ( $ch, $options );
print_r("+");
$result = curl_exec($ch);
curl_close($ch);

?>

一种获取和保存数据:

<?php
    $file = 'ip.txt';
    $ipaddress = $_SERVER["REMOTE_ADDR"] .'\n';
    file_put_contents($file, $ipaddress, FILE_APPEND );
?>

和一个查看 IP 地址,如您所见的“ip.txt”。

但问题是我在 ip.txt 中得到的只是 '127.0.0.1' 并且没有欺骗 ip !

如果这根本不起作用,解决方案是什么?

更新

我发现了这个:

不,libcurl 的运行水平比它更高。此外,伪造IP地址意味着发送带有虚构源地址的IP包,然后您通常会遇到拦截发回的包的问题,​​因为它们不会被路由给您!

那么如何测试具有不同 IP 地址的网页呢?

我有一些编程语言 python 的经验,它可以发送一个带有欺骗 IP 地址的数据包,但问题是,它不能完全创建 TCP 三向握手过程,主网站理解它。

4

0 回答 0