sql注入零散知识

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql注入零散知识相关的知识,希望对你有一定的参考价值。


1、order by解释:

    在SQL语言中,order by语句后面加上字段名,就可以对查询结果排序。但他有一种特殊用法,就是在后面不添加字段名,而添加数字的方式。添加数字的时候,表示以该表第几个字段进行排序。只有当数字小等于字段数时,才有效。所以通过这个条件,可以判断一个表中存在多少个字段。例如order by 10 返回正常,而order by 11页面返回错误,则说明数据库存在10个字段。

2、union select 1,2,3,4,5,6,7,8,9,10,11 from

首先解释一下select后面几个数字的意思,1,2,3,4...,这里的几个数字纯粹是凑数的,凑够和union关键字前面的那个表的字段数一样,不然没法拼接成一个表。在sql注入的时候,在将相应位置替换成你想获得的数据,查询结果后面就会显示出来。如下图最后一行:


技术分享


3、常用函数

    在mysql中 有很多的注射能用到的函数 比如 user() database() version() 分别用来查看当前数据库连接的用户名,数据库名称 以及mysql的版本比如返回 3 6 7 那么你把3 6 7 替换成user() database() version() 也就是 union select 1, 2 ,user() ,4 ,5 ,loadfile(), version() ,9 ,10, 11 这样就可以在页面上爆出 用户名 绝对路径之类的



以上是关于sql注入零散知识的主要内容,如果未能解决你的问题,请参考以下文章

06:数据库零散知识点(02)

java 零散知识汇总(初级)

Python零散知识点记录

Python零散知识点

python 零散知识点(列表和字典推导式)

python 零散知识点(列表和字典推导式)