sqli-11 基于post提交注入

0x00 GET与POST提交方式的不同

get是将提交信息展现在url中提交,是我们能够直接看到的,而post提交方式是将信息在数据包中传递,post提交通过将表单内容各个字段放在html
header中传递我们用户无法看到传递过程,get是向服务器获取数据的形式,而post则是向服务器传递数据,get传送的数据量较小,不能大于2KB。
post传送的数据量较大,一般被默认为不受限制。get提交比较起来比post方便,但是post提交方式比get更加的安全稳固,重点需要理解post提交方式用户提交的信息在数据包里面,我们在外无法直接利用,故可以采用抓取数据包达到我们的目的。

0x01 抓取get请求包与post请求包对比

1)抓取GET包分析
GET数据包
2)抓取post包分析
POST数据包
很明显的我们可以观察到,在get数据包中只有在GET请求方式哪里看到url提交的信息,但是很多时候不能直接利用,在POST数据包我们可以观察到除了在url信息存在提交信息,在最下方可以详细的看到以表单的形式存在的用户提及的信息,这里便是我们能够利用到的位置,但不是绝对的,有时候在url提交的id信息也存在注入,这就要多去尝试了,今天我们这里研究post提交的表单进行sql注入

0x02 利用POST数据包表单sql注入

注入的方式按照常规的注入思维,
需要注意的是,如果是在渗透浏览器实现提交post数据包,在sqlu语句最后的注释符–+提过提交后在数据包里面被转义为–%2B
+被转义为%2B
我们可以通过手动修改数据包再次提交,但是在复杂的环境下不是太方便,第二种方法便是通过bur抓包工具,通过数据包实现注入,防止转义,结果实验发现可以用#代替注释符,这里不会被转义,以上方法都行
注入成功

0x03 利用报错注入

通过实验发现此处还可以用爆粗注入,利用到updataxml与extractvalue函数进行报错注入,需要注意两张函数的格式

1' and extractvalue(1,concat(0x7e,(select group_concat(username,password) from users limit 0,1),0x7e))#

利用extractvalue函数报错注入

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

告白热

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值