堆叠注入
语句:
select username from user where id = 1;select password from user;
在原本的语句后面加上分号使其结束,再在后面写上另外的查询语句。
相当于自己又加入了一条查询语句,两条语句一起查询。
堆叠注入实现例子
后面加入的语句与功能自己按需要构造
绕过WAF
安全狗
提交方式绕过
目标网站有安全狗,并对url进行拦截时
如果目标网站的接收方式是$_REQUEST(即可接收GET提交,也可以接收POST提交),则可以,通过post去提交参数进行注入。
注释绕过:/**/
例子:
当安全狗匹配union与select组合时,可以用
union %23a %0a select 1,2,3#
相当于语句:
union #a
select 1,2,3#
在union后加上#把当前行后面的注释掉,然后%0a换行,再用select语句
参数污染
如果在各各语言http传参时,传入两个相同参数不同值时,接收的是第一个参数的值,还是最后一个参数的值(www.xxx.com/index.php?id=1&id=3):
Last:最后一个参数
First:第一个参数
All:所有参数拼接
例子:
www.xxx.com/index.php?
id=1/**&id=-1%20union%20select%201,2,3%23*/
因为注释符等等的干扰,安全狗认为id=1后面的代码没有用,
实现绕过。
当参数名相同,且服务器接收最后一个时,则接收的内容是
-1 union select 1,2,3#*/
实现注入