SQL注入之Head注入(三)

本文介绍了X-Forwarded-For请求头在获取真实IP中的作用,以及在存在安全漏洞的getip函数中如何引发SQL注入。通过添加HTTP_X_FORWARDED_FOR字段并构造特定的SQL语句,可以执行数据库查询,例如获取当前数据库名和特定表的字段值。请注意,这种攻击方式可能导致敏感数据泄露。
摘要由CSDN通过智能技术生成

Head注入之ip注入

靶场环境:http://inject2.lab.aqlab.cn:81/Pass-09/index.php

X-Forwarded-For(XFF)是用来识别通过HTTP代理或负载均衡方式连接到Web服务器的客户端最原始的IP地址的HTTP请求头字段。[透明代理]

当今多数缓存服务器的用户为了通过缓存的方式来降低他们的外部带宽,他们常常通过鼓励或强制用户使用代理服务器来接入互联网。有些情况下,这些代理服务器是透明代理,用户甚至不知道自己正在使用代理上网。那么为了获取你的真实IP就要用到X-Forwarded-For了。

这段Getip函数是被很多网站和CMS广泛使用的,是属于一个模板,其实就是为了获取你的真实ip,在有代理的情况下,你会发送另外一些请求头来说明你的ip是啥,其中X-Forwarded-For就是其中一种请求头字段。

那么这个getip这里面很明显没有任何过滤,如果被传入的数据被拼接进SQL语句就会发生SQL注入

这里我们可以用HTTP_X_FORWARDED_FOR 表示获取客户端的ip
(这里多说一句,这里的自定义函数是遇到匹配的函数就执行,并赋值给 ip这个变量)
在这里插入图片描述在这里插入图片描述
但是我们截取到的数据包里却没有HTTP_X_FORWARDED_FOR,那我们怎么办?
既然没有,我们就加上这个函数:X-Forwarded-For

注:浏览器请求头统统都可以加
在这里插入图片描述插入SQL语句:获取当前数据库名
'or updatexml(1,concat(0x7e,(select database())),1),1)#
在这里插入图片描述后面的步骤和Head(一)一样,这里我就做最后一步。
获取字段值
需要查看其他数据替换limit 值
'or updatexml(1,concat(0x7e,(select flag_h1 from flag_head limit 0,1)),1),1)#
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值