极客大挑战 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刷题记录(更新中...)的更多相关文章

  1. BUUCTF刷题记录(Web方面)

    WarmUp 首先查看源码,发现有source.php,跟进看看,发现了一堆代码 这个原本是phpmyadmin任意文件包含漏洞,这里面只不过是换汤不换药. 有兴趣的可以看一下之前我做的分析,http ...

  2. buuctf刷题记录

    极客大挑战 2019]EasySQL-1 直接通过输入万能密码:' or 1=1#实现注入: 思考:服务端sql语句应该为:select * from users where username='xx ...

  3. DP刷题记录(持续更新)

    DP刷题记录 (本文例题目前大多数都选自算法竞赛进阶指南) TYVJ1071 求两个序列的最长公共上升子序列 设\(f_{i,j}\)表示a中的\(1-i\)与b中色\(1-j\)匹配时所能构成的以\ ...

  4. 刷题记录:[BUUCTF 2018]Online Tool

    目录 刷题记录:[BUUCTF 2018]Online Tool 一.知识点 1.escapeshellarg和escapeshellcmd使用不当导致rce 刷题记录:[BUUCTF 2018]On ...

  5. 刷题记录:[CISCN2019 东北赛区 Day2 Web3]Point System

    目录 刷题记录:[CISCN2019 东北赛区 Day2 Web3]Point System 知识点 1.padding-oracle attack 2.cbc字节翻转攻击 3.FFMpeg文件读取漏 ...

  6. 刷题记录:[De1ctf] shell shell shell

    目录 刷题记录:[De1ctf] shell shell shell 一.知识点 1.源码泄露 2.正则表达式不完善导致sql注入 3.soapclient反序列化->ssrf 4.扫描内网 5 ...

  7. DP刷题记录

    目录 dp刷题记录 codeforces 706C codeforces 940E BZOJ3997 POJ2279 GYM102082B GYM102082D codeforces132C L3-0 ...

  8. [BUUCTF-Pwn]刷题记录1

    [BUUCTF-Pwn]刷题记录1 力争从今天(2021.3.23)开始每日至少一道吧--在这里记录一些栈相关的题目. 最近更新(2021.5.8) 如果我的解题步骤中有不正确的理解或不恰当的表述,希 ...

  9. 攻防世界Web刷题记录(进阶区)

    攻防世界Web刷题记录(进阶区) 1.baby_web 发现去掉URLhttp://111.200.241.244:51461/1.php后面的1.php,还是会跳转到http://111.200.2 ...

随机推荐

  1. python模块 | 随机数模块—random模块

    python随机数模块 random - 生成伪随机数,该模块实现了各种分布的伪随机数生成器. 对于整数,从范围中有统一的选择. 对于序列,存在随机元素的统一选择.用于生成列表的随机排列的函数.以及用 ...

  2. python-爬楼梯

    [题目描述] 假设一段楼梯共n(n>1)个台阶,小朋友一步最多能上3个台阶,那么小朋友上这段楼梯一共有多少种方法. [练习要求]请给出源代码程序和运行测试结果,源代码程序要求添加必要的注释. [ ...

  3. String和int、long、double等基本数据类型的转换

    学习目标: 掌握Java的基本数据类型与String的转换 学习内容: 1.转化规则 String 转 基本数据类型 基本数据类型 变量 = 包装类.Parse基本数据类型(String); // c ...

  4. Qt 实现配置 OpenCV 环境,并实现打开图片与调用摄像头

    一.说明 所用QT版本:5.9.1 电脑配置:win10,64位系统 调用的是编译好的:OpenCV-MinGW-Build-4.1.0(稍后放链接) 在大学期间,由于项目需求需要用到QT+openc ...

  5. python数据类型与基础运算

    注释:了解其他数据类型补充 基础数据类型补充 可以回一下之前的数据类型: 整型,浮点型,字串符和列表. 一.字典(dict) #字典:可以精准的储存数据 是用大括号表示'{}' '字典和数据数据列表差 ...

  6.  CPUs Intel 925X/915 Chipset (925X主板芯片组)

    这个是2004年的intel产品的设计(主板,主板芯片组,北桥,南桥),结构也比较清晰,主要想看南桥和北桥的设计. 一些英文解释 ECC是一种能够实现"错误检查和纠正"的技术D92 ...

  7. oracle 11g rac集群 asm磁盘组增加硬盘

    创建asm磁盘的几种方式 创建asm磁盘方式很多主要有以下几种 1.Faking方式 2.裸设备方式 3.udev方式(它下面有两种方式) 3.1 uuid方式 3.2 raw方式(裸设备方式) 4. ...

  8. 虚拟机安装linux

    https://blog.csdn.net/wujiele/article/details/92803655https://www.cnblogs.com/yunwangjun-python-520/ ...

  9. [python][flask] Jinja 模板入门

    Flask 和 Django 附带了强大的 Jinja 模板语言. 对于之前没有接触过模板语言的人来说,这类语言基本上就是包含一些变量,当准备渲染呈现 HTML 时,它们会被实际的值替换. 这些变量放 ...

  10. jsp第七周作业

    1.p78-p79的例4-9 <%@ page language="java" import="java.util.*" pageEncoding=&qu ...