当前位置: 首页 > news >正文

3.17BUUCTF练习day1

BUUCTF练习day1

[极客大挑战 2019]EasySQL1(字符型,账号密码型,get型)

判断闭合方式

在用户名输入1‘,此时密码先输入任何数字时,出现语法错误

请添加图片描述

请添加图片描述

说明闭合方式为单引号闭合,在判断完闭合方式后我们就可以进行注入,一般来说,有账号密码登陆的题,在判断完闭合方式后,可以尝试先用万能账号密码解题,如果不行那么手工注入需要按照步骤来

注入

方法一:万能密码

字符型的万能密a’ or true #

当为两个注入点时,例如:用户名和密码,其中至少有一个输入万能密码即可获得正确的flag

直接在页面输入

你不管输入什么内容,浏览器都会给你进行url编码,所以你不用管什么,只用输入你要输入的内容a’ or true #,如下图

请添加图片描述

请添加图片描述

使用hackbar输入

在这里进行get传参,就需要自己将特殊字符编码,例如#需要编码为%23

GET传参要经过url编码,所以使用url进行输入时,不能使用#,而应该使用其url编码%23,如图

请添加图片描述

方法二:手工注入
判断列数

字符型判断列数1’ order by 1,2,3,4%23(注意这些字符之间的空格和特殊字符进行url编码),页面报错,那么就没有第三列

请添加图片描述

输入1’ order by 1,2,3%23,页面回显正常(没有报错),说明有第三列,即说明这个数据库的表一共三列

请添加图片描述

查询当前数据库,用户,数据库版本

先试一试这个-1’ union select 1,2,3%23

请添加图片描述

由图可知,回显直接回显出来了flag(只是因为这个题很简单),正常的题还需要查询当前数据库,用户,数据库版本等信息收集,然后查询表名,字段名,和内容,下次遇到了再说

[极客大挑战 2019]Havefun

在打开的页面找不到任何信息,那我们可以翻看一下源代码,可以看到一些信息

请添加图片描述

返回页面打开hackbar进行get传参,由代码逻辑得到当cat=dog时输出

一个类似CTF的字符串 Syc{cat_cat_cat_cat}

请添加图片描述

[HCTF 2018]WarmUp

打开的原页面没有思路,那么翻看源代码,可以发现一些思路

请添加图片描述

访问source.php

请添加图片描述

在这个页面除了代码,还看到了另一个页面hint.php

请添加图片描述
又可以得到一个线索flag在ffffllllaaaagggg中

在返回到source中继续代码审计

需要认识两个函数了mb_substr返回字符串的一部分;mb_strpos返回字符串在另一字符串中第一次出现的位置,如果没有找到字符串则返回 FALSE,找到返回对应的位置(一个数值),这两个函数把page(file)参数操作一下,然后检查page参数是否在白名单上

这个题给我的感觉就是看代码的逻辑构造payload另外就是目录的遍历

当前的source.php一般是在html目录下,往上是www,var,然后到根目录,flag一般就放在根目录下面,这里还有一个hint.php?/或者source.php?/,因此需要返回四层才能到根目录

source.php?file=hint.php?/../../../../ffffllllaaaagggg

请添加图片描述

[ACTF2020 新生赛]Include

打开页面为这个

请添加图片描述

点开之后没有什么发现,查看源码也没有什么发现

再仔细看看,感觉url有一点有趣

请添加图片描述

我们可以通过修改 file 参数值来包含本地文件,那么就存在文件包含漏洞了

文件包含漏洞通常使用伪协议读取flag

php://filter/convert.base64-encode/resource=flag.php

利用伪协议将flag进行base64编码后带出来

请添加图片描述

放进解码工具解码得到flag

请添加图片描述

[ACTF2020 新生赛]Exec

命令注入的题目

  • ;直接分号分隔
    管道符:作用和&一样。前面和后面命令都要执行,无论前面真假
  • | 按位或
    作用是直接执行|后面的语句
  • || 逻辑或
    作用是如果前面命令是错的那么就执行后面的语句,否则只执行前面的语句
  • & 按位与
    &前面和后面命令都要执行,无论前面真假
  • && 逻辑与
    如果前面为假,后面的命令就不执行,如果前面为真则再执行后面命令,这样两条命令都会被执行

输入

127.0.0.1;ls

结果是

请添加图片描述

看来没有过滤;

我们就遍历目录了,通过cd …/达到访问上一个目录的目的,再通过ls 达到查看该目录有哪些文件

那么输入,进行跳转到上一级目录

127.0.0.1;ls .../

类似最后输入可以得到flag

127.0.0.1;cd…/…/…/;cat flag

看来没有过滤;

我们就遍历目录了,通过cd …/达到访问上一个目录的目的,再通过ls 达到查看该目录有哪些文件

那么输入,进行跳转到上一级目录

127.0.0.1;ls .../

类似最后输入可以得到flag

127.0.0.1;cd…/…/…/;cat flag

相关文章:

  • MySQL 客户端连不上(1045 错误)原因全解析
  • 项目实战:基于瑞萨RA6M5构建多节点OTA升级-创建工程MCUBoot<二>
  • el-table的向上移动向下移动,删除选定行
  • 【Git学习笔记】Git分支管理策略及其结构原理分析
  • 探秘Transformer系列之(15)--- 采样和输出
  • 小程序API —— 53 本地存储
  • 1~2 课程简介+ESP32-IDF环境搭建(虚拟机Linux环境下)
  • 大语言模型的压缩技术
  • AI如何在财务工作中提升效率的一些看法
  • JavaScript日期区间计算:精准解析年月日差异
  • EG8200多协议图形化编程边缘计算网关
  • Python----计算机视觉处理(Opencv:图像镜像旋转)
  • 大数据分析方法(65页PPT)
  • cmake 之 check_language()
  • AIP-182 外部软件依赖
  • Linux 网络基础设置
  • jenkins pipline 自动化测试
  • 案例驱动的 IT 团队管理:创新与突破之路:第三章 项目攻坚:从流程优化到敏捷破局-3.1.2需求分级与资源调配策略
  • 海康SDK协议在智联视频超融合平台中的接入方法
  • springboot+自定义注解+AOP实现权限控制(一)
  • 上海首发经济“卷”到会展业,浦东签约三个年度“首展”
  • 最高降九成!特朗普签署降药价行政令落地存疑,多家跨国药企股价收涨
  • 93岁南开退休教授陈生玺逝世,代表作《明清易代史独见》多次再版
  • 美英贸易协议|不,这不是一份重大贸易协议
  • 18世纪“精于剪切、复制、粘贴”的美国新闻界
  • 民企老板被错羁212天续:申请国赔千万余元,要求恢复名誉赔礼道歉