VNCTF2024misc方向部分wp

news2024/11/26 13:32:36

文章目录

    • sqlshark
    • LearnOpenGL
    • ez_msb
    • OnlyLocalSql

sqlshark

tshark -r sqlshark.pcap -Y "http" -T fields -e frame.len -e http.file_data > data.txt

不太像常规的盲注,一次性发送两条很类似的payload,比常规的多了一个least在判断password值的最小值

Form item: "password" = "any'/**/Or/**/(iF(((((Ord(sUbstr((sElect(grOup_cOncat(password))frOm(users)) frOm 14 fOr 1))))in(99))),1,0))#"
Form item: "password" = "any'/**/Or/**/(iF(((leAst((Ord(sUbstr((sElect(grOup_cOncat(password))frOm(users)) frOm 14 fOr 1))),99)in(99))),1,0))#"

其实可以直接忽略这一条,用长度判断直接去掉,随手写的乱七八糟脚本如下:

import re
import urllib.parse
with open('data.txt','r',encoding='utf-8')as file:
    lists = file.readlines()

flag=''
tmp = 1
flag_tmp = 0
for i in range(0,len(lists),2):
    match = re.search(r'(\d+)', lists[i+1])
    length = match.group(1)
    # print(length)
    payload = (urllib.parse.unquote((bytes.fromhex(lists[i].split("\t")[1])).decode())).lower()
    # print(len(payload))
    if length == "492" and len(payload)<135:
        print(payload)
        match = re.search(r'in\((\d+)\)\)', payload)
        asc = int(match.group(1))

        match = re.search(r'from\+(\d+)\+',payload)
        # print(match)
        location = int(match.group(1))
        flag+=chr(int(asc))
print(flag)     

得到的密码套个VNCTF{}就是flag了

LearnOpenGL

flag被砖块挡住了,直接用全透明图覆盖掉砖的图片

from PIL import Image

# 创建一个全透明的RGBA模式图片
img = Image.new("RGBA", (128, 128), (0, 0, 0, 0))

# 保存图片
img.save("transparent_image.png")

image-20240217182134194

image-20240217182148134

ez_msb

总体流程如下,在blocks_add_xx_0处将两个数据结合到一起了

image-20240217183828864

照着逆就好了,打印一下振幅再加题目名其实就很明显可以看出flag.txt对应哪部分数据了

jio本:

from scipy.io import wavfile
import numpy as np

# 读取音频文件
samplerate, data = wavfile.read('out.wav')

# 将音频数据转换为浮点数类型
samples = np.array(data, dtype=float)

# 获取音频振幅
amplitudes = np.abs(samples)
amplitudes = np.abs(samples)*1000/2

# 获取整数部分
int_amplitudes = amplitudes.astype(int)
data = ''
for i in int_amplitudes[:200]:
    data += (bin(i)[2:].zfill(2))
print(data)

image-20240217184133187

OnlyLocalSql

坏,被搞得怀疑人生的题目

源码:CTF-Archives/VNCTF2024-OnlyLocalSql: VNCTF2024 - Misc - OnlyLocalSql - Source Code (github.com),请给巨魔一个star!

出题人讲解https://space.bilibili.com/12949995

可以看到有个web服务,同时看源码就可以看出是不久前的西湖论剑的only_sql的源码,当然是后话了

image-20240217184428278

直接访问http服务访问不通,看题目描述提到强制连接本地服务

发现本地curl是通的

image-20240217184712083

因此想到使用流量转发,过ssh隧道去访问服务器的内网

彻底搞懂SSH端口转发命令 - 知乎 (zhihu.com)

Lateral Movement and Pivoting - 横向移动和枢纽 | TryHackMe CN Mirror (tryhackmyoffsecbox.github.io)

将服务器127.0.0.1的80端口转发到本地的8888端口,因此访问本地的8888端口的流量就会被通过服务器21013的ssh端口访问80端口,相当于从服务器本地进行访问

ssh -p 21013 ctf@manqiu.top -L 8888:127.0.0.1:80

image-20240217190307021

成功访问到,不过这里mysql密码被改了,不是query.php里的注释密码,后面不能直接跟西湖论剑里一样去连接并命令执行

不过由于知道flag的位置/flag,并且发现/flag www-data就能读了

image-20240217190718310

两种方法,一个是rogue_mysql_server项目rmb122/rogue_mysql_server: A rouge mysql server supports reading files from most mysql libraries of multiple programming languages. (github.com),伪造mysql服务,任意读文件,需要把本地的端口转发给服务器的33060,写到这里平台关了,题目docker还没启好,先留个坑迟一点填

还有一个非预期是题目权限没弄好 /var/www/html下有写权限,直接写个一句话就搞定了,反正flag不是root权限读

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

不懂咱就学,记不住多看几遍(二)

一、Redis分布式锁中加锁与解锁、过期如何续命 实现要点&#xff1a; 互斥性&#xff0c;同一时刻&#xff0c;只能有一个客户端持有锁。防止死锁发生&#xff0c;如果持有锁的客户端因崩溃而没有主动释放锁&#xff0c;也要保证锁可以释放并且其他客户端可以正常加锁。加锁和…

TypeScript(二):TypeScript的细节

TypeScript语法细节 联合类型&#xff08;满足其中一个即可&#xff09; 可以使用多种运算符&#xff0c;从现有的类型中构建新类型 const number|string 123 可以是这些类型中的任何值但是使用的时候需要小心 let virable: number | string 123function getData(id: numb…

金山WPS下的word,如何删除表格下面的大段空白

在csdn&#xff0c;你甚至可以学习到wps小技巧。 如题&#xff0c;这种大段空白怎么设置文本格式&#xff0c;表格格式都没用。正常的backspace删除也没用。 解决方式如下&#xff1a; 长按鼠标左键拖拽选中空白区域&#xff08;可能没有选中成功的特效没关系&#xff09;&am…

Golang - 使用CentOS 7 安装Golang环境

文章目录 操作步骤 操作步骤 为在CentOS 7上安装Go语言环境&#xff0c;可以按照以下步骤进行操作&#xff1a; 下载Go语言包&#xff1a; 从官方网站 https://golang.org/dl/ 下载适用于Linux的Go语言包。 解压缩Go语言包&#xff1a; 使用以下命令解压缩下载的Go语言包 […

洛谷 P6546 [COCI2010-2011#2] PUŽ

讲解&#xff1a; 首先还是正常输入&#xff1a; int a,b,v; cin>>a>>b>>v; 然后经入一个函数num&#xff1a; cout<<num(1.0*(v-a),(a-b))1<<endl; 之所以要乘以1.0是因为要向上取整&#xff01;而这个num函数的两个参数则是“蜗牛白天爬了多…

Asymmetric Temperature Scaling(NeurIPS 2022)论文速读

paper&#xff1a;Asymmetric Temperature Scaling Makes Larger Networks Teach Well Again official implementation&#xff1a;https://gitee.com/mindspore/models/tree/master/research/cv/ats 本文的创新点 在知识蒸馏中&#xff0c;一个奇怪的现象是大的教师模型未必…

网络原理(5)--HTTPS是如何进行加密的

&#x1f495;"Echo"&#x1f495; 作者&#xff1a;Mylvzi 文章主要内容&#xff1a;网络原理(5)–HTTPS是如何进行加密的 在网络原理(4)中介绍了HTTP协议的相关内容,HTTP协议在传输的过程中存在着安全问题,实际上现在的网络中基本不再使用HTTP,而是使用一种更加安…

记录setData报错TypeError: [object Array] is not a function

小程序调用setData控制台显示报错.但是功能正常 同样的各个地方调setData都报错,经过一轮排除法后发现是自定义组件写法有问题 修改正确之后就没问题了

穷人沉迷多巴胺,富人追求内啡肽

奶头乐理论 1995年&#xff0c;美国旧金山召开了一场由500位富豪和政治家组成的精英会议。 会议认为&#xff0c;全球化的发展将使贫富差距迅速拉大、阶层矛盾日益激烈。 如何让穷人安分守己&#xff1f;他们想出了一个办法&#xff1a; 只需要像喂婴儿奶嘴一样&#xff0c…

服务运行时动态挂载JavaAgent和插件——Sermant热插拔能力解析

作者&#xff1a;华为云高级软件工程师 栾文飞 一、概述 Sermant是基于Java字节码增强技术的无代理服务网格&#xff0c;其利用Java字节码增强技术&#xff0c;为宿主应用程序提供服务治理功能&#xff0c;以解决大规模微服务场景中的服务治理问题&#xff0c;通过Java字节码…

uniapp H5唤起手机App 中间下载页

我这里直接是打开中间下载页&#xff0c;在下载页判断手机是否已存在App&#xff0c;有则唤起App&#xff0c;没有则可点击下载按钮下载app。 唤起App的关键语句是&#xff1a;window.location.href scheme Scheme链接格式样式&#xff1a; [scheme]://[host]/[path]?[que…

Backend - Django SimpleUI(美化 Django Admin )

目录 一、作用 二、安装 & 配置 &#xff08;一&#xff09;安装依赖 &#xff08;二&#xff09;配置 &#xff08;三&#xff09;运行 三、基础设定 &#xff08;一&#xff09;创建用户 &#xff08;二&#xff09;设置标题 &#xff08;三&#xff09;设置登录…

算法刷题:找到字符串中所有的字母异位词

找到字符串中所有的字母异位词 .题目链接题目详情题目解析算法原理滑动窗口流程图定义指针及变量进窗口判断出窗口更新结果 我的答案 . 题目链接 找到字符串中所有的字母异位词 题目详情 题目解析 所谓的异位词,就是一个单词中的字母,打乱顺序,重新排列得到的单词 如:abc-&g…

爬虫入门一

文章目录 一、什么是爬虫&#xff1f;二、爬虫基本流程三、requests模块介绍四、requests模块发送Get请求五、Get请求携带参数六、携带请求头七、发送post请求八、携带cookie方式一&#xff1a;放在请求头中方式二&#xff1a;放在cookie参数中 九、post请求携带参数十、模拟登…

使用IDEA配置GO的开发环境备忘录

1. 安装GO 1.1 下载&安装 进入GO的官网下载对应的GO&#xff0c;本人环境为mac选择最新的1.22.0版本&#xff0c;在本地安装即可 1.2 配置相关环境变量 修改~/.bash_profile&#xff0c;添加如下的配置 GOPATH/Users/kevin/go/src GOBIN/Users/kevin/go/go/bin GOROOT/…

【Redis快速入门】深入解读哨兵模式

个人名片&#xff1a; &#x1f43c;作者简介&#xff1a;一名大三在校生&#xff0c;喜欢AI编程&#x1f38b; &#x1f43b;‍❄️个人主页&#x1f947;&#xff1a;落798. &#x1f43c;个人WeChat&#xff1a;hmmwx53 &#x1f54a;️系列专栏&#xff1a;&#x1f5bc;️…

贪心算法之合并区间

“任世界多宽广&#xff0c;停泊在这港口~” 区间问题&#xff0c;涉及到最多的就是 取交集 和 并集的概念。我们使用C排序算法后&#xff0c;其默认规则就是按照 “左排序”进行的。因而&#xff0c;我们实质上注意的是每一个区间的 右端点&#xff0c;根据题目要求&#xff…

如何使用Docker部署Drupal并结合cpolar实现固定公网地址访问

文章目录 前言1. Docker安装Drupal2. 本地局域网访问3 . Linux 安装cpolar4. 配置Drupal公网访问地址5. 公网远程访问Drupal6. 固定Drupal 公网地址 前言 Dupal是一个强大的CMS&#xff0c;适用于各种不同的网站项目&#xff0c;从小型个人博客到大型企业级门户网站。它的学习…

C++ Webserver从零开始:配置环境(九)——下载github的项目进行测试

前言 大家好&#xff0c;我又来更新Webserver的博客了。上一次更新这个专栏时2024.2.5号&#xff0c;离现在已经13天了。非常抱歉&#xff0c;中间隔了那么久。一方面是基础知识学完之后&#xff0c;就要开始自己写代码了。看基础知识和写代码是两回事&#xff0c;理论和实践的…