CTF–基于X-Forwarded-For的IP地址伪造 – 作者:hu666666

HW期间,为防范钓鱼,即日起FreeBuf将取消投稿文章的一切外部链接。给您带来的不便,敬请谅解~

X-Forwarded-For以及其作用

一般的客户端(例如:浏览器)在发送HTTP请求时,并不会设置X-Forwarded-For头,当请求在到达第一个代理服务器时,代理服务器会在请求字段中加上X-Forwarded-For这个字段,并将其值设置为客户端的IP地址,后面如果还有更多的代理服务器,会依次将Ip地址追加到X-Forwarded-For这个字段中,最终当请求到达了Web应用服务器,应用会通过获取X-Forwarded-For头取出最左边的IP地址,即为客户端的真实IP地址。

如果客户端在发起请求时,请求头上带上一个伪造的X-Forwarded-For,由于后续每层代理只会追加而不会覆盖,那么最终到达应用服务器时,最左边的IP地址就是客户端伪造的IP地址。

这个利用方法可以绕过一些针对IP地址进行限制的应用,例如:投票等应用

具体实操

查看题目

图片[1]-CTF–基于X-Forwarded-For的IP地址伪造 – 作者:hu666666-安全小百科图片[2]-CTF–基于X-Forwarded-For的IP地址伪造 – 作者:hu666666-安全小百科

分析题目

1.打开页面,发现是一个登录页面

2.使用F12查看网页原代码以及注释,看有没有什么比较重要有价值的信息,然而并没有。

图片[3]-CTF–基于X-Forwarded-For的IP地址伪造 – 作者:hu666666-安全小百科

3.随便输入账号和密码,返回账号不存在。

这就要想办法搞到一个账号和密码,登录进去看看。

查看提示发现,该网站存在一个测试(test)账户,那就试试这个账号和密码(均为test)。

图片[4]-CTF–基于X-Forwarded-For的IP地址伪造 – 作者:hu666666-安全小百科

哎呀,登录成功了!!!

如果没有猜出账号和密码,也可以使用暴力破解的方法枚举出账号和密码。

4.返回信息提示”此系统只允许台湾居民访问,你所在地区被禁止登录“,可以推断这种限制是基于IP地址所在地,那我们就可以利用上面介绍的原理进行IP地址伪造,从而绕过这种限制。

5.搜索一个台湾地区使用的ip地址

图片[5]-CTF–基于X-Forwarded-For的IP地址伪造 – 作者:hu666666-安全小百科

6.使用burp进行http请求头的修改

图片[6]-CTF–基于X-Forwarded-For的IP地址伪造 – 作者:hu666666-安全小百科

7.获取到了该题目的key

靶场环境

墨者学院的在线靶场:

IP地址伪造:https://www.mozhe.cn/bug/detail/anpNUjlodFVuMmtOYnM3T1grcG56QT09bW96aGUmozhe

来源:freebuf.com 2021-04-15 12:10:22 by: hu666666

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论