buuctf -2

news/2024/4/28 14:23:41/文章来源:https://blog.csdn.net/2202_75317918/article/details/130228124

目录

你竟然赶我走

大白

N种方法解决

[ACTF2020 新生赛]Include 1

php://filter的一些学习

[ACTF2020 新生赛]Exec

[强网杯 2019]随便注 


你竟然赶我走

1.下载文件,得到一张图片

 2.放进010分析,在文件尾得到flag

大白

1.根据题目提示,可判断该图片的宽高不够,没有显示出来,放到010里面分析

2.因为用二进制打开的.png文件的第二行中,前四位表示的是宽度,后四位表示的是长度,所以修改图片的高度

3.重新打开图片,得到flag

flag{He1l0_d4_ba1}

N种方法解决

1.下载文件,得到一个exe文件,但是无法运行

2.把文件后缀名修改成txt

3.好像是一个图片网站,在浏览器中打开,得到一个二维码,扫码得到flag

[ACTF2020 新生赛]Include 1

1.打开环境

 2.点击tips。可以发现是文件包含漏洞,昨天刚学。。该文件名为flag.php,那么flag应该就存在于此文件中,但是看源代码并没有查看到flag,猜测flag应该是在flag.php的源代码当中

 3.利用php://filter伪协议,构造payload

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

4。使用base64解码,得到flag。可以发现flag是被注释了

php://filter的一些学习

 php://filter 是一种元封装器, 设计用于数据流打开时的筛选过滤应用。 这对于一体式(all-in-one)的文件函数非常有用,类似 readfile()file()file_get_contents(), 在数据流内容读取之前没有机会应用其他过滤器。

php://filter可以获取指定文件源码。当其与文件包含函数结合时,php://filter流会被当作php文件执行。所以我们一般对其进行编码,阻止其不执行,从而读取任意文件源代码

使用场景:
        1.知道flag文件地址后,可以直接用该协议读取文件内容
        2.有时候一些关键字被过滤也可以用该协议绕过
        3.有的flag隐藏在注释当中,可通过此协议查看源码获取flag
格式:xxx.php?xxx=php://filter/convert.base64-encode/resource=xxx.php
利用条件:不受allow_url_include和allow_url_fopen的限制

[ACTF2020 新生赛]Exec

1.输入一个ip,看一下

 2.使用bp抓包,用ls看看能不能查看文件,看到index.php

 3.查看根目录,看到flag这个文件

 4.使用cat查看flag

[强网杯 2019]随便注 

1.打开环境

 2.因为1'时报错,说明闭合符号为单引号

3.1' order by 2,得到字段数为2

 4.尝试使用union联合注入,1' union select 1,2#

 应该是过滤了select,不管是编码还是注释都不行,select一被禁用,联合查询和报错注入,布尔,时间盲注就都不可以使用。因此这个题使用堆叠注入。简单就是将一堆sql语句叠加在一起执行,使用分号结束上一个语句再叠加其他语句一起执行。

参考文章:sql注入之堆叠注入_Toert_T的博客-CSDN博客

学习一下show()函数MySQL show()函数详述_qq_36801966的博客-CSDN博客

show databases    //列出服务器可访问的数据库
show tables     //显示该数据库内相关表的名称
show columns from tablename;//显示表tablename的字段、字段类型、键值信息、是否可以用null、默认值及其他信息。

5.1’;show database;   发现行得通

 6.1';show tables;

 7. 1'; show columns from words; 爆words表

8. 1'; show columns from `1919810931114514`#    爆这个表

关于在这里使用 ` 而不是 ’ 的一些解释:

两者在linux下和windows下不同,linux下不区分,windows下区分。

在MySQL中 反引号 ` 用来区分保留字符与普通字符

单引号 ’ 或双引号主要用于 字符串的引用符号

反勾号 ` 数据库、表、索引、列和别名用的是引用符是反勾号 (注:Esc下面的键)

有MYSQL保留字作为字段的,必须加上反引号来区分!!!

如果是数值,请不要使用引号,要用那个反引号包裹起来

9.从之前的回显发现实际上都是words表内的,若想得到flag中的内容,需将其换为words表内的内容进行回显

换个角度来说,就是我们需要将1919810931114514表名换为words,并将flag的列名换为id

则需要以下三步:

    将表名words换为其他的,类似于word1
    将表名1919810931114514换为words
    将列名flag换为id

并通过之前的过滤规则发现并没有过滤掉alter、rename等关键字

于是构造payload:

1' ; rename tables `words` to `word1` ; rename tables `1919810931114514` to `words` ;  alter table `words` change `flag` `id` varchar(100);#

rename - 重命名  重命名表wordsword1

alter - 变更列  变更表words中的列flagid 且其性质为varchar(100)

 10,改变数据库结构后,使用万能密码,得到flag

1' or 1=1#

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_102182.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pyqt应用相关之与Excel的联接

利用所学相关Pyqt实现对于Excel文件内部数据的处理,首先需要获取Excel的数据,在获取后进行保存处理即可完成相应的操作。 def save_data_btn_click(self):dir self.save_dir_text.text().strip()self.data_frame_group.to_excel(dir output.xlsx,sheet…

HCIP之链路聚合、VRRP

链路聚合 链路聚合 --- 可以将多个物理接口绑定成一个逻辑接口,即将N条物理链路聚合为一条逻辑链路。可以在不升级硬件的条件下,达到增加带宽的效果 我们将逻辑链路,称为聚合链路,在华为设备中称为ETH-TRUNK链路(这个技…

物联网产品的开发的难点,致命点是什么?

物联网产品的开发的难点,致命点是什么? 当下是万物互联的时代, 物联网产品本身的难度因行业而异。但是物联网设备上云通信交互就成了各个行业需要首先解决的问题。 物联网通信问题从产品设计一开始,如果不能很好的解决&#xff0c…

马云上三路和下三路

马云的上三路、下三路,马云最牛搭档总结 马云刚最牛搭档:蔡崇信,关明生 《关乎天下》是关明生写的一本书 趣讲大白话:没有方法走不远 【趣讲信息科技143期】 **************************** 马云上三路:使命&#xff0c…

你掌握了stream流的全部新特性吗?

我们知道很早之前java8对于之前的版本更新了许多 新的支持,比如lamda函数式接口的支持,支持更多函数式接口的使用,对链表,数组,队列,集合等实现了Collectio接口的数据结构提供了StreamSupport.stream()支持…

基于ubuntu18.04.6 LTS服务器安装nvidia驱动

1对于一个刚刚配置的服务器,首先nvidia-smi,自然无法显示Driver Version、最高cuda版本等信息。 nvidia-smi: command not found 需要我们自己安装nvidia驱动 2禁用老驱动 禁用自带nouveau驱动 sudo vim /etc/modprobe.d/blacklist.conf 打开后在CONF文…

2023年软件测试的前景?测试工程师技能提升,进阶自动化测试...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 2023年软件测试行…

【开发日志】2023.04 ZENO----Composite----CompNormalMap

CompNormalMap 将灰度图像转换为法线贴图 将灰度图像转换为法线贴图是一种常见的技术,用于在实时图形渲染中增加表面细节。下面是一个简单的方法来将灰度图像转换为法线贴图: 加载灰度图像,并将其转换为浮点数值范围[0, 1]。 对于每个像素…

IT_开发提测标准规范

背景 公司 IT 规模小,开发提测质量差,流程不规范,导致测试任务重,于是推行 :IT_开发提测标准规范,正文如下;拟定开发提测标准规范后,测试与项目经理内部评审后,发至IT群…

盘点几款还不错的企业网盘产品

企业网盘的出现,为企业提供文件安全管理,团队协作服务,解决了便捷性与安全性等问题,受到了企业的青睐。市面上的企业网盘工具也是五花八门,我们该如何选择适合自己团队的网盘工具呢? 本文盘点了几款还不错的…

反射-Class类分析

反射相关的主要类 java.lang.Class:代表一个类,Class对象表示某个类加载后在堆中的对象java.lang.reflect.Method:代表类的方法,Method对象表示某个类的方法java.lang.reflect.Field:代表类的成员变量,Fie…

20230422 | 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、面试题 02.07. 链表相交、142. 环形链表 II

1、24. 两两交换链表中的节点 初始时,cur指向虚拟头结点,然后进行如下三步: 操作之后,链表如下: 看这个可能就更直观一些了: /*** Definition for singly-linked list.* public class ListNode {* i…

Android 日志框架使用

在实际开发中,经常会遇到需要打印日志并保存到文件中,便于后面取日志分析代码运行情况,当然如果只是打印日志不需要记录文件,使用android自带的log工具就完全够了, Log打印日志会记录到系统日志中,可以取出…

Rust之泛型、特性和生命期(一):基本概念

开发环境 Windows 10Rust 1.69.0 VS Code 1.77.3 项目工程 这里继续沿用上次工程rust-demo 泛型、特性和生命期 每种编程语言都有有效处理概念重复的工具。在Rust中,一个这样的工具就是泛型:具体类型或其他属性的抽象替身。我们可以表达泛型的行为或…

CorelDRAW 2023版本更新内容及安装详细教程

这里是CorelDRAW 2023版本更新内容及安装详细教程: CorelDRAW 2023是最新更新版本,在界面和功能上做了较大提升与优化: 1. 简洁界面:采用全新设计界面,简约而不简单。菜单和工具栏进行了整合与重组,更加直观。拥有自动标记和提示,易于上手使用。 2. 全新工作空间:提供“轻量…

基于51单片机的脉搏测量仪设计与实现

目录 前言 一、设计背景 二、系统功能 三、系统硬件设计 3.1 总体方案设计 3.2 信号采集电路设计 3.3 报警电路设计 3.4 下载电路 3.5 电源电路设计 3.6 OLED显示设计 3.7 键盘电路 四、系统软件设计 4.1 系统主程序设计 4.2 脉搏采集子程序设计 4.3 键盘程序设…

正式开赛|2023年“桂林银行杯”数据建模大赛暨全国大学生数学建模竞赛广西赛区热身赛

为学习贯彻党的二十大工作报告中关于加快发展数字经济、促进数字经济和实体经济深度融合的重要指示,不断推进数字化转型与金融科技创新,桂林银行联合全国大学生数学建模竞赛广西赛区组委会、广西应用数学中心(广西大学)共同主办20…

使用EasyExcel导出模板并设置级联下拉及其原理分析

一、概述 项目中有时会遇到需要导出一个Excel模板,然后在导出的Excel中填充数据,最终再调用接口批量把Excel中的数据导入到数据库当中的需求。 其中级联下拉选择,手机号校验,性别校验等都是比较常见的校验。 这里就已上面三种情…

王道计组(23版)3_存储系统

概述 RAM:随机存储器,任一个存储单元可以随机存取,易失。用作主存(DRAM)或Cache(SRAM) ROM:只读存储器,可随机读出,写入较慢,需刷新,非易失。Flash、SSD固态硬盘、U盘 _____SSD&…

RK3399平台开发系列讲解(PCI/PCI-E)PCIE相关配置说明

🚀返回专栏总目录 文章目录 一、DTS 配置二、menuconfig 配置三、cmdline 配置沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 本篇将介绍在使用 RK3399 平台 PCIE 时候的配置。 一、DTS 配置 ep-gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>; 此项是设置 PCIe…