BUUCTF刷题记录(更新中...)
极客大挑战 2019]EasySQL-1
直接通过输入万能密码:’ or 1=1#实现注入:

思考:服务端sql语句应该为:select * from users where username=’xxx’ and password=’xxx’;,但在实际开发中应该更多的是select password from users where username=’xxx’;然后将获得的密码与输入的密码(可能存在加密)进行比对,因此在实际中此种漏洞应该极少存在。
极客大挑战 2019]Havefun
打开靶机之后发现并没有什么可以点击、输入的信息,所以查看源代码,得到关键信息,然后根据关键信息传输参数,其示例如下,左侧为获得的flag,右侧为查看源代码获取的信息:

[强网杯 2019]随便注-1
1、 输入注入参数,进行简单的注入尝试:1 ‘ or 1=1#,获得如下数据:

2、 在1的基础上未发下有用的信息,进行下一步尝试,来判断返回的数据量,1’ order by 2;#,1’ order by 3;#,结果如下:

3、尝试获取数据库的相关信息,通过:’; show tables;#获得表的信息,示例如下:

4、通过1'; show columns from words;#、1'; show columns from `1919810931114514`;#查看两个表内的内容,后面加“`“是因为数据库在以数字作为表的名字的时候需要加上这个符号,属于数据库特性问题,结果如下:

5、此时尝试进行联合查询获取表内的数据,语句为:’ union select flag from `1919810931114514`;#,发现关键词被过滤了,如下:

6、关键词被过滤就进行绕过,此时应该思考该如何绕过这些关键词来获取目标数据,通过sql的concat来进行sql语句的拼接,语句为:1';prepare st from concat('s','elect', ' * from `1919810931114514` ');EXECUTE st;#,结果如下:

补充:在网上看到了另外两种解题方式,第一种是通过修改数据库的名称和列名,使其在读取数据的时候从我们需要的数据库进行读取。第二种是通过';handler `1919810931114514` open;handler `1919810931114514` read first#进行读取,这种方式更为简便。
BUUCTF刷题记录(更新中...)的更多相关文章
- BUUCTF刷题记录(Web方面)
WarmUp 首先查看源码,发现有source.php,跟进看看,发现了一堆代码 这个原本是phpmyadmin任意文件包含漏洞,这里面只不过是换汤不换药. 有兴趣的可以看一下之前我做的分析,http ...
- buuctf刷题记录
极客大挑战 2019]EasySQL-1 直接通过输入万能密码:' or 1=1#实现注入: 思考:服务端sql语句应该为:select * from users where username='xx ...
- DP刷题记录(持续更新)
DP刷题记录 (本文例题目前大多数都选自算法竞赛进阶指南) TYVJ1071 求两个序列的最长公共上升子序列 设\(f_{i,j}\)表示a中的\(1-i\)与b中色\(1-j\)匹配时所能构成的以\ ...
- 刷题记录:[BUUCTF 2018]Online Tool
目录 刷题记录:[BUUCTF 2018]Online Tool 一.知识点 1.escapeshellarg和escapeshellcmd使用不当导致rce 刷题记录:[BUUCTF 2018]On ...
- 刷题记录:[CISCN2019 东北赛区 Day2 Web3]Point System
目录 刷题记录:[CISCN2019 东北赛区 Day2 Web3]Point System 知识点 1.padding-oracle attack 2.cbc字节翻转攻击 3.FFMpeg文件读取漏 ...
- 刷题记录:[De1ctf] shell shell shell
目录 刷题记录:[De1ctf] shell shell shell 一.知识点 1.源码泄露 2.正则表达式不完善导致sql注入 3.soapclient反序列化->ssrf 4.扫描内网 5 ...
- DP刷题记录
目录 dp刷题记录 codeforces 706C codeforces 940E BZOJ3997 POJ2279 GYM102082B GYM102082D codeforces132C L3-0 ...
- [BUUCTF-Pwn]刷题记录1
[BUUCTF-Pwn]刷题记录1 力争从今天(2021.3.23)开始每日至少一道吧--在这里记录一些栈相关的题目. 最近更新(2021.5.8) 如果我的解题步骤中有不正确的理解或不恰当的表述,希 ...
- 攻防世界Web刷题记录(进阶区)
攻防世界Web刷题记录(进阶区) 1.baby_web 发现去掉URLhttp://111.200.241.244:51461/1.php后面的1.php,还是会跳转到http://111.200.2 ...
随机推荐
- 【Android开发】【布局】 仿微信UI
Demo地址
- java中如何能把一个字符串转成日期对象
题目3.1: 把一个字符串转成日期对象 当我们想根据输入字符串得到一个日期对象时我们不知道,应该以什么格式写这个字符串,才能被系统正确解析,一种聪明的做法是,马克-to-win,我们先 把日期对象根据 ...
- 小程序预览图片wx.previewImage
效果图: ====> ==> 代码: <image mode='aspectFill' bindtap='previewImage' data-src='{{dataList ...
- [ Terminal ] 在 Windows Terminal 中使用 Git Bash
https://www.cnblogs.com/yeungchie/ Git 自带的 git-bash 太简陋了,ConEmu 又太卡了,还是这个 Windows Terminal 最好用. 安装 W ...
- 第一阶段:Java基础之异常和处理
文章目录 Java中异常处理机制的简单和应用 一.异常的体系结构&分类 二.问题扩展 三.应用场景 Java中异常处理机制的简单和应用 异常也是一种对象,Java中有很多异常类,并且定义了基类 ...
- Hash-题解-方法
有效的字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagram", t = "nagar ...
- drf视图类总结

- java并发问题总结
1.java中产生并发问题的主要原因有哪三个? 原子性.可见性和有序性 2.什么是java内存模型? java虚拟机规范中用来屏蔽掉各种硬件和操作系统内存访问差异,java内存模型的主要目标是定义程序 ...
- JDK7u21反序列链学习
JDK7u21 1.前置知识 jdk7u21是一条不依赖CommonsCollections库依赖的,看利用链所有知识其实跟CommonsCollections也有重复,我们来学习一下以前没学过的类或 ...
- Java学习day39
类加载的作用:将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构,然后在堆中生成一个代表这个类的java.lang.Class对象,作为方法区中类数据的访问入口. 类 ...