python伪造请求头x-forwarded-for的作用_伪造 X-Forwarded-For

本文介绍了如何使用Python通过伪造HTTP的X-Forwarded-For头欺骗Web应用程序,从而绕过IP限制。讨论了X-Forwarded-For的用途及其在多代理情况下的问题,并提供了一个Python示例代码,演示了如何进行IP伪造。
摘要由CSDN通过智能技术生成

背景

应同学的要求,帮忙刷票。我上去看了一下,对方网站做了IP限制,一天之内一个IP只能投一票,并没有使用cookie校验,验证码校验等技术,总体来说这个网站的情况是比较常见的,常见的解决办法有两个:

使用大量的真实IP刷票

如果你使用的是一个拨号上网的网络,每次的拨号都能随机分配IP,这种情况下,可以使用投票一次,拨号一次的方法来实现刷票,但这个方案有两个问题:

1. 编程稍微复杂,而且运行效率低。由于涉及到拨号上网的编程,以及断开网络链接到重新拨号上网是需要相对很长的时间的,因此编程复杂而且效率不高。

2. 由于每个ISP的IP分配池都是有限的,当你所在的IP池容量较小时,你能够分配的IP也是很少的,因此可能无法大量刷票,这个也是潜在的风险。

伪造IP刷票

如何做到伪造IP是个难题。TCP/IP层级别的伪造,我是不会的(至少目前如此)。因此只能想着在应用层伪造了。上网查了一下资料,发现通过使用HTTP的X-Forwarded-For头可以成功欺骗多数应用程序。

认识X-Forwarded-For

X-Forwarded-For(XFF)是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。 Squid 缓存代理服务器的开发人员最早引入了这一HTTP头字段,并由IETF在Forwarded-For HTTP头字段标准化草案中正式提出。

这一HTTP头一般格式如下:

X-Forwarded-For: client1, proxy1, proxy2

其中的值通过一个 逗号+空格 把多个IP地址区分开,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值