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

[强网杯 2019]随便注

  • 一、题目简介
  • 二、思路分析
    • 1)判断注入点
    • 2)选择注入方式
    • 3)查看表中内容
  • 三、解题步骤
    • 1)获取表
    • 2)获取字段
    • 3)获取表中数据
  • 四、总结

一、题目简介

进入题目链接后,是一个「查询」功能,在输入框中提交id,即可返回「响应」的内容。


在输入框中输入一个2,即可查询2对应的内容

二、思路分析

这一关是一个「SQL注入漏洞」,推荐使用堆叠注入,show + handler命令获取表中数据
右键查看页面源代码,「注释」里面说sqlmap是没有灵魂的,众所周知,sqlmap是SQL注入神器,这也变相说明这关考察的是SQL注入漏洞

1)判断注入点

使用数值型、字符型等各种类型的「万能账号」进行测试(参考《万能账号密码使用详解》),正确响应的payload如下:

0' or true -- a

页面中返回了多条数据,因为万能账号使SQL恒成立,后端查询出了表中的「所有数据」。

由此可知,注入点为「单引号字符型」注入。

2)选择注入方式

源码中「过滤」了select、update、delete、drop、insert、where等关键字,参数中包含以上关键字即可触发过滤提示,比如:1'select

根据过滤情况,排除掉联合注入和报错注入,尝试使用「堆叠注入」,payload如下:

0';show databases; -- a

使用MySQL的「show 命令」可以查看数据库、表、字段等信息

3)查看表中内容

由于select被过滤了,show命令又不能查看表中的数据,因此需要使用「handler 命令」来查看表中的数据,payload如下

0';handler `1919810931114514` open;handler `1919810931114514` read first; -- a

这里需要注意,表名如果是数字,需要用「反引号」(键盘左上角第二行那个键)包裹起来。

三、解题步骤

1)获取表

CTF有个不成文的「规矩」,SQL注入漏洞的flag大部分都在当前使用的「表」中,这里我们使用堆叠注入直接查看当前使用的数据库中有哪些表,payload如下

0';show tables; -- a

当前数据库下有两个表:1919810931114514,words

2)获取字段

使用show 命令查看表中的「字段」,注意表名要用反引号包裹,payload如下:

0';show columns from `1919810931114514`; -- a

表中只有一个字段,很明显flag就在这里

3)获取表中数据

使用handler 命令查看表中的「数据」,需要注意的是,表名如果是数字,则需要使用反引号包裹起来,payload如下:

0';handler `1919810931114514` open;handler `1919810931114514` read first; -- a

表中只有一条数据,提交flag即可过关

四、总结

喜欢一个东西首先要先学会「尊重」,虽然网络安全的圈子不乏各种灰产,以及高调宣传自己是黑客的脚本小子,但不可否认,这个圈子仍有不少人保持着「举世皆浊我独清,众人皆醉我独醒」的心态,努力磨砺技术,提升自身修养,让互联网变得更加安全

BUUCTF Web [强网杯 2019]随便注相关推荐

  1. 【BUUCTF】强网杯 2019随便注1 write up

    输入万能密码1' or 1=1# ,判断存在sql注入, SQL注入的万能密码实际上是利用了网址后台的漏洞,打开下面的网址不用密码和账号也可以登录后台. 万能密码原理: 万能密码能够绕过sql检测,在 ...

  2. 【BUUCTF】[强网杯 2019]随便注 1

    这是一个典型的sql注入题目 知识点: 1.注入点检测 2.万能匹配 3.暴力获得数据表和其属性 4.sql语句的掌握(order by; union select; rename table; al ...

  3. buuctf [强网杯 2019]随便注 1

    buuctf web [强网杯 2019]随便注 1 -刷题个人日记 小白一个,写给自己看. 打开后是这样. 从题目和内容来看就是一道sql注入题. 输入 1' or 1=1;# 这个#用来注释掉后面 ...

  4. BUUCTF [强网杯 2019]随便注

    题目 打开环境发现是经典的提交界面 老规则还是查询注入点,1 or 1 =1#,1' order by 1#都未出错,但是1' union select 1,2#是出现了错误,发现一些查询语句被过滤了 ...

  5. 强网杯 2019]随便注 【SQL注入】四种解法

    题目简介 题目名称:[强网杯 2019]随便注 1 题目平台:BUUCTF 题目类型:Web 考察知识点: SQL注入 解题步骤 方法一: 首先启动并访问靶机,有一个输入框,随便输入1' or 1 = ...

  6. BMZCTF 强网杯 2019 随便注 原理+题解

    目录 知识点 堆叠注入 show语句 mysql预编译 过程 重点 预编译 重命名 总结 知识点 堆叠注入 堆叠查询注入:堆叠查询可以执行多条SQL语句,语句之间以分号(;)隔开.而堆叠查询注入攻击就 ...

  7. [强网杯 2019]随便注 —— 堆叠注入

                           [强网杯 2019]随便注 前言        个人观点,若有误请指教 解题思路及步骤 直接上'引号,结果直接报错了,证明存在sql注入漏洞. 判断当前表 ...

  8. [强网杯 2019]随便注 1

    题目[强网杯 2019]随便注 1 题目来源:https://buuoj.cn/challenges#[%E5%BC%BA%E7%BD%91%E6%9D%AF%202019]%E9%9A%8F%E4% ...

  9. BUUCTF-WEB:[强网杯 2019]随便注 1

    题目环境:http://de044ac0-9162-4b83-b6a6-8c99ce0efe91.node3.buuoj.cn 打开环境: 尝试注入: 解题思路: 1.先尝试用union联合注入: 第 ...

最新文章

  1. MAC OS 10.10.5虚拟机免费下载(可安装Xcode7)
  2. Eclipse中写jsp文件时,发现里面加载不了js文件和css文件(解决css文件在eclipse中显示不了)
  3. jQuery事件4——hover
  4. 如何快速理解递归——蓝桥杯 试题 基础练习 FJ的字符串(递归与非递归解法)——10行代码AC
  5. matlab 判断元素索引_matlab – 获取矩阵中n个最大元素的索引
  6. 我开发了一个对.NET程序进行瘦身的工具
  7. [ARC073C] Ball Coloring(贪心)
  8. KVC的底层实现原理
  9. 你知道CSDN有多少VIP用户吗?
  10. [问题]apparmor 问题导致mysql切换datadir目录失败
  11. Java语言中String累的总结
  12. emWin 2天速成实例教程013_修改BUTTON按钮等控件背景皮肤颜色_SetBkColor
  13. Ubuntu打开swf文件
  14. 谷歌浏览器flash插件离线下载,最新版
  15. 上海财经应用统计考python_20上财应用统计415分经验帖(初试第一)
  16. Android模拟器不支持蓝牙
  17. elasticsearch两年学习资料整理分享
  18. 浏览器网络异常导致JS文件请求失败的问题及处理
  19. C语言(经典编程题:报数游戏)
  20. android分屏模式_Android分屏显示总结

热门文章

  1. c 宏变量/宏函数/log
  2. 生产环境 direct path read 与log file sync等待事件问题处理
  3. systemtap notes
  4. win10获取注册表权限
  5. CentOS+Subversion
  6. Andorid视觉新冲击-Material design语言
  7. 基于jQuery向下弹出遮罩图片相册
  8. 小网站架构优化-提升抗并发能力:子应用程序分离方案
  9. web开发的一些材料
  10. springcloud工作笔记105---springboot2.x实现优雅的关闭服务