[SUCTF 2019]EasySQL
时间: 2024-01-06 08:06:40 浏览: 59
[SUCTF 2019]EasySQL是一个CTF比赛中的题目。在这个比赛中,参赛者需要通过对数据库的操作来获取Flag。然而,这道题目对查询语句进行了一些限制,比如过滤了关键字"from"等。为了绕过这些限制,参赛者可以使用一些技巧,比如设置sql_mode为PIPES_AS_CONCAT来转换操作***
相关问题
suctf 2019 easysql怎么解
题目描述
easysql是一个基于MySQL的简单查询练习平台。在这里,你可以使用MySQL语言查询数据库中的数据。
题目链接:http://easysql.suctf2019.cn:8888/
题解
进入网站后,可以看到一个登录页面,尝试使用常见的一些弱口令进行登录,发现均不可行。故考虑其他方式进入系统。
点击右上角的注册按钮,可以看到注册页面。试图使用SQL注入进行注册,发现不可行。
再次尝试登录,发现登录请求中带有username和password两个参数。考虑使用SQL注入进行登录。
在username参数中输入 ' or 1=1#,发现能够成功登录。进入系统后,可以看到一个名为flag的数据库。
不难猜测,flag就在这个数据库中。使用SQL语句查询flag数据库中的所有表。
SELECT table_name FROM information_schema.tables WHERE table_schema='flag';
然后再查询每个表中的数据。
SELECT * FROM flag.table_name;
得到flag。
flag{easysql_is_so_eassssy}
[suctf 2019]EasySQL
[suctf 2019]EasySQL是一个SQL题目,与引用和引用中提到的设置sql_mode有关。具体来说,题目中使用了设置sql_mode=PIPES_AS_CONCAT的语句,这个设置的作用是将"||"操作符解释为字符串的连接操作符而不是或运算符。这与Oracle数据库的行为相似,也类似于字符串的拼接函数Concat。因此,在这个题目中,可以使用"||"操作符来进行字符串的连接操作。