如何改变或伪造HTTP

 我来答
iningloveyou
2017-05-07 · TA获得超过1971个赞
知道小有建树答主
回答量:706
采纳率:80%
帮助的人:261万
展开全部
有类似功能的软件,如HTTP-REFERER
其实伪造HTTP-REFERER是一些流氓软件或者是一些批量注册或灌注信息的工具必备的,因为这样才能跳过服务器的
HTTP-REFERER检查。

先看看伪造的方法,看看服务器端的手
段,服务器可以轻松实现,但是一个直接的问题就是查 remote_addr的时候,就只有一个了,容易被禁止IP:

ASP:

dim http
set
http=server.createobject("MSXML2.XMLHTTP") '//MSXML2.serverXMLHTTP也可以
Http.open
"GET",url,false
Http.setRequestHeader
"Referer","http://www.fromdomain.cn/"
Http.send()

PHP(前
提是装了curl):

$ch = curl_init();
curl_setopt
($ch, CURLOPT_URL, "http://www.readdomain.cn/xxx.asp");
curl_setopt
($ch, CURLOPT_REFERER, "http://www.fromdomain.cn/");
curl_exec ($ch);
curl_close
($ch);

PHP(不装curl用sock)

$server = 'www.readdomain.cn';
$host =
'www.fromdomain.cn';
$target = '/xxx.php';
$referer =
'http://www.aslibra.com/'; // Referer
$port = 80;
$fp =
fsockopen($server, $port, $errno, $errstr, 30);
if (!$fp)
{
echo
"$errstr ($errno)<br />\n";
}
else
{
$out = "GET
$target HTTP/1.1\r\n";
$out .= "Host: $host\r\n";
$out .= "Cookie:
SESSIONID=test\r\n";
$out .= "Referer: $referer\r\n";
$out .=
"Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp))
{
echo fgets($fp, 128);
}
fclose($fp);
}

VB.NET/C#.NET

Dim oXMLHttp As MSXML2.XMLHTTP30 = New MSXML2.XMLHTTP30()


MSXML2.XMLHTTP30 oXMLHttp = new MSXML2.XMLHTTP30();
oXMLHttp.open(....
oXMLHttp.setRequestHeader(...
oXMLHttp.send(..

引用
原理都是sock构造http头来senddata。其他语言什么的比如perl也可以,目前比较简单的防
御伪造referer的方法是用验证码(Session)。现在有一些能防盗链软件的商业公司比如UUDOG,linkgate,VirtualWall
什么的,都是开发的应用于IIS上面的dll。有的是采用cookies验证、线程控制,有的是能随机生成文件名然后做URL重写。有的方法能的确达到不
错的效果.

一般的就是这样的了,但是服务器就不好实现伪造,只能制造不多的数据了,如果可以实现访问网页就可以
伪造,那就可以实现了真正的伪造,实现自然IP分布。

不过,js好像不支持修改,网上有代码,可是测试过是不行:

<script language="javascript">
var
oReq = new ActiveXObject("Microsoft.XMLHTTP");
oReq.Open("GET","b.php",false);
oReq.SetRequestHeader("Referer","");
oReq.Send();
document.write(oReq.responseText);
</script>


面是JS的代码,请求的b.php只要简单的把信息打印出来就知道了:

<?
$out="";
foreach($_SERVER
as $k=>$v){
$out.=$k." : ".$v."\n";
}
//可以写入文件做分析
file_put_contents(time().".txt",$out);
echo
'<pre>';
echo $out;
?>

引用
[HTTP_ACCEPT] => image/gif, image/x-xbitmap, image/jpeg,
image/pjpeg, application/msword, application/vnd.ms-excel,
application/vnd.ms-powerpoint, application/x-shockwave-flash, */*
[HTTP_REFERER] =>
http://www.aslibra.com/test/referrer/a.php?1187692842
.....


的出来,修改并不成功,也就是没法做修改了,如果是出于安全,那也真的不给修改的,否则这个世界真的不安静了,特别像我这种可能做坏事的人,呵呵~~
Storm代理
2023-08-29 广告
StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP... 点击进入详情页
本回答由Storm代理提供
远古的文明天蝎
2017-05-07 · TA获得超过195个赞
知道答主
回答量:247
采纳率:0%
帮助的人:32.2万
展开全部
我知道
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式