极客大挑战 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#进行读取,这种方式更为简便。

[ACTF2020 新生赛]Include-1

  很明确的告诉了是文件包含漏洞,通过php伪协议来读取flag.php文件,语句为:php://filter/read=convert.base64-encode/resource=flag.php或php://filter/convert.base64-encode/resource=flag.php,base64加密主要是为了防止乱码,得到如下数据进行解密即可:

  

[HCTF 2018]WarmUp-1

  1、查看源代码发现source.php文件并进行访问,结果如下:

  

  2、通过发现的文件进行尝试访问,得到下面这些结果:

  

  3、通过ffffllllaaaagggg暗示,和php特性,因此构造payload:http:/xxxxxx:81/?file=hint.php?/../../../../ffffllllaaaagggg,结果如下:

  

[极客大挑战 2019]Secret File-1

  1、首先在源代码中发现Archive_room.php,并进行访问,结果如下:

  

  2、之后进行点击访问未发现别的问题和线索,后来只能进行抓包进行分析,得到关键线索,如下:

  

  3、访问该php文件,得到如下结果:

  

  4、根据提示得知flag应该就是在flag.php文件中,因此此处应考虑到采用php伪协议来读取该文件,语句为:php://filter/read=convert.base64-encode/resource=flag.php或php://filter/convert.base64-encode/resource=flag.php,base64加密主要是为了防止乱码,得到如下数据进行解密即可:

  

[ACTF2020 新生赛]Exec-1

  1、显示ping窗口,可以想到此处应该通过管道符来实现信息的读取,然后一直尝试知道获取到flag,示例如下:

  

  

[极客大挑战 2019]Knife-1

  1、打开之后显示如下:

  2、很明显的告诉你了通过菜刀进行连接,连接之后就扒东西吧,结果如下:

  

[极客大挑战 2019]Http-1

  1、进入之后查看源代码发现存在a标签和php文件,如下:

  2、修改false为ture,点击之后显示如下:

  

  3、然后通过brup抓包,修改请求信息来源地址,然后重新访问,结果如下:

  

  4、信息告诉我们要通过Syclover浏览器进行访问,那就再次抓包修改浏览器信息,结果如下:

  

  5、信息又告诉我们只能通过本地进行访问,那在修改访问地址,结果如下:

  

  

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. 刷题记录:[BUUCTF 2018]Online Tool

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

  4. 刷题记录:[De1CTF 2019]Giftbox && Comment

    目录 刷题记录:[De1CTF 2019]Giftbox && Comment 一.知识点 1.sql注入 && totp 2.RCE 3.源码泄露 4.敏感文件读取 ...

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

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

  6. 刷题记录:[CISCN2019 总决赛 Day2 Web1]Easyweb

    目录 刷题记录:[CISCN2019 总决赛 Day2 Web1]Easyweb 一.涉及知识点 1.敏感文件泄露 2.绕过及sql注入 3.文件上传:短标签绕过php过滤 刷题记录:[CISCN20 ...

  7. PE刷题记录

    PE刷题记录 PE60 / 20%dif 这道题比较坑爹. 所有可以相连的素数可以构成一张图,建出这张图,在其中找它的大小为5的团.注意上界的估算,大概在1W以内.1W内有1229个素数,处理出这些素 ...

  8. leetcode刷题记录--js

    leetcode刷题记录 两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但 ...

  9. Leetcode刷题记录(python3)

    Leetcode刷题记录(python3) 顺序刷题 1~5 ---1.两数之和 ---2.两数相加 ---3. 无重复字符的最长子串 ---4.寻找两个有序数组的中位数 ---5.最长回文子串 6- ...

随机推荐

  1. int bool str

    一. python的基本数据类型 1. int 整数 2. bool 布尔.  判断.  if  while 3. str  字符串 ,一般存放小量的数据 4. list  列表. 可以存放大量的数据 ...

  2. 【转载】Java密钥库及keytool使用详解

    ---------------- 版权声明:本文为CSDN博主「adrninistrat0r」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 原文链接:https: ...

  3. MySQL存储引擎、基础数据类型、约束条件

    MySQL存储引擎 存储引擎 # 存储引擎可以堪称是处理数据的不同方式 # 查看存储引擎的方式 show engines; # 需要掌握的四个存储引擎 MyISAM MySQL5.5之前的默认的存储引 ...

  4. 算法题——Cantor表

    题目介绍 描述 现代数学的著名证明之一是 Georg Cantor 证明了有理数是可枚举的.他是用下面这一张表来证明这一命题的: 1/1, 1/2 , 1/3, 1/4, 1/5, - 2/1, 2/ ...

  5. Python 连接Mysql数据库执行语句操作

    学习Mysql模块的使用,模块命名的坑,解决SHA加密错误无法连接

  6. Java学习day12

    Set集合特点:不能包含重复的元素:没有所有的方法,不能通过普通的for循环遍历集合 哈希值是JDK根据对象的地址或者字符串或者数字算出来的int类型的数值,同一个对象多次调用hashCode()方法 ...

  7. 关于Electron框架应用的安全测试

    Electron框架应用的安全测试 0.Electron相关简介 electron.js是一个运行时框架,它在设计之初就结合了当今最好的Web技术,核心是使用HTML.CSS.JavaScript构建 ...

  8. Codeforces Round #752 (Div. 2) A B C

    Problem - A - Codeforces Problem - B - Codeforces Problem - C - Codeforces A. Era 每个a[i] - i 表示的是当前a ...

  9. React 日常记录

    以下是学习重点 原文地址 浏览器环境 JS解析和执行.绘制.事件处理.静态资源加载和处理 GUI渲染线程和Javascript线程 调度策略 先到先得(FCFS) 对短进程不利 对I/O密集不利 单处 ...

  10. 利用java反射机制实现List>转化为List

    BEGIN; 最近在用hibernate做项目,由于后续的业务功能比较多,然后框架原设计没有使用到一对多.一对一等特性,(艹TA妹)没办法,只能用原生sql语句获得需要的结果集.但是返回过来的是一个L ...