羊城杯初赛部分misc

Ez_misc

i春秋刚考过的CVE,win11截图漏洞CVE-2023-21036(acropalypse)

https://github.com/frankthetank-music/Acropalypse-Multi-Tool

看见这个文件结构就可以尝试一下

做完才知道文件尾的zip是有用的..

把zip头的 04 03 改回 03 04 ,根据txt文件名和key是数字猜到是Gronsfeld加密 Gronsfeld Cipher (online tool) | Boxentriq

解出后得到的hint是 截图工具

ai和nia的交响曲

wireshark打开,一键导出HTTP对象

其中flag2.zip是伪加密

0宽隐写,emmm那就先去处理flag1

upload.php上传了名为flag1.png的图片,把它拿出来

黑白杂色图,有点像二维码但扫不出来,读取一下像素点

from PIL import Image
pic=Image.open('1.png')
weith,height=pic.size
#print(weith,height)
# 400*400
str=''
print(pic.getpixel((0,0)))
for i in range(weith):
for j in range(height):
print(pic.getpixel((i,j)))

发现有22种但半黑半白(还是b神的工具看着清楚)

转01

from PIL import Image
pic=Image.open('1.png')
weith,height=pic.size
#print(weith,height)
# 400*400
str=''
#print(pic.getpixel((0,0)))
for i in range(height):
for j in range(weith):
r,g,b = pic.getpixel((i,j))
if r > 200:
str+='1'
else:
str+='0'
#print(str)
out_file=open('out.txt','w').write(str)

得到HINT:BV1wW4y1R7Jv&&FLAG1:@i_n1a_l0v3S_

一看就是b站的bv号,访问一下

那刚才flag2.txt可以用上了,时间就是视频中的秒数所对应的字符,根据后续上的hint 每行时间+1,得到 CAOCAOGAIFAN

拼接得到最终flag:@i_n1a_l0v3S_CAOCAOGAIFAN

Matryoshka

直接foremost能得到两张猫咪图,一眼盲水印,是py2的bwm

出题人该死,那么大个W结果是小写,watermark_is_fun (即密码)

还有个文件是encrypt ,那么就是veracrypt挂载咯(用passware也能检测出来)

挂载后得到的文本依旧有0宽

‌‌‌‌‍‬‬‌‌‌‌‍‬‌‍

密钥有了,base32 + 维吉尼亚

程序猿Quby

图片是夏多密码,参考犯罪大师本周解密 夏多密码解析_游戏攻略 (bilibili.com)

解得HAVEANICEDAY

图片尾分离出一个rar,cloacked-pixel拿到rar密码:we1c0met0ycbCTF!!!

python2 lsb.py extract QUBY.png flag.txt HAVEANICEDAY

表格有隐藏行

展开后全选更改颜色,发现隐藏数据,猜测是转黑白色,即excel转图片

两图拼接,翻转

from PIL import Image
import pandas
s=55
s1=60
e=1023
e1=1028
r=63 img1=Image.new("1",(1050,140)) x1=pandas.read_excel("奇怪的账单1.xlsx")
x1values=x1.values
for i in range(s-2,e-2):
for j in range(0,r):
if x1values[i][j]>=5:
img1.putpixel((i,j),255)
else:
img1.putpixel((i,j),0) x2=pandas.read_excel("奇怪的账单2.xlsx")
x2values=x2.values
for i in range(s1-2,e1-2):
for j in range(0,r):
if x2values[i][j]>=5:
img1.putpixel((i-5,j+63),255)
else:
img1.putpixel((i-5,j+63),0)
img1=img1.transpose(Image.FLIP_LEFT_RIGHT)
img1.save('img.png')

得到密码w0wyoudo4goodj0b

尝试DeepSound,解密得到flag.txtfl4g.txt

fl4g.txt中的字符串先base85在base32,得到sQ+3ja02RchXLUFmNSZoYPlr8e/HVqxwfWtd7pnTADK15Evi9kGOMgbuIzyB64CJ

观察发现恰好是64位,从a-z,A-Z,0-9,+,/ 猜测是base换表,flag.txt中的值作为密文

Easy_VMDK

zip有备注,且压缩算法为zipcrypto,直接打一手明文攻击

小明这次使用了32Bytes的随机密码,这次总不会被爆破出来了吧!!

小明压缩了好了题目后,他发现压缩后大小比压缩前还大啊,这不就没有压缩啊,这是为什么啊!

vmdk的文件头都是一样的,伪造12字节的文件头

从vmdk中可以导出key.txtflag.zip,分离一下,可以得到flag.txtpng2txt.py

显然py告诉我们的是key.txt的转换过程,写个还原脚本

import cv2
import base64
import numpy as np # 读取 key.txt 文件内容
with open("key.txt", "r") as f:
lines = f.readlines() # 创建空白图像
img = np.zeros((137, 2494), dtype=np.uint8) # 还原图像像素值
for y in range(137):
for x in range(2494):
# 解码 base64 数据
encoded_data = lines[y * 2494 + x].strip()
decoded_data = base64.b85decode(encoded_data.encode()) # 获取像素值
pixel_value = int.from_bytes(decoded_data, byteorder='big') % 256 # 设置图像像素
img[y, x] = pixel_value # 保存还原后的图像
cv2.imwrite("restored_key.png", img)

解压得到flag

羊城杯初赛部分misc的更多相关文章

  1. CTF-i春秋网鼎杯第二场misc部分writeup

    CTF-i春秋网鼎杯第二场misc部分writeup 套娃 下载下来是六张图片 直接看并没有什么信息 一个一个查看属性 没有找到有用信息 到winhexv里看一下 都是标准的png图片,而且没有fla ...

  2. CTF-i春秋网鼎杯第一场misc部分writeup

    CTF-i春秋网鼎杯第一场misc部分writeup 最近因为工作原因报名了网鼎杯,被虐了几天后方知自己还是太年轻!分享一下自己的解题经验吧 minified 题目: 一张花屏,png的图片,老方法, ...

  3. 2021羊城杯比赛复现(Crypto)

    bigrsa 题目: from Crypto.Util.number import * from flag import * n1 = 10383529640908175186077053551474 ...

  4. 2021 羊城杯WriteUP

    比赛感受 题目质量挺不错的,不知道题目会不会上buu有机会复现一下,躺了个三等奖,发下队伍的wp Team BinX from GZHU web Checkin_Go 源码下载下来发现是go语言写的 ...

  5. 2018湖湘杯web、misc记录

    1.题目名 Code Check 打开题目,右键发现有id参数的url,简单base64解码以后发现不是明文,说明利用了其他的加密方式,那么应该会有具体的加密方式给我们,于是试试常见的文件泄露,可以发 ...

  6. 羊城杯wp babyre

    肝了好久,没爆破出来,就很难受,就差这题没写了,其他三题感觉挺简单的,这题其实也不是很难,我感觉是在考算法. 在输入之前有个smc的函数,先动调,attach上去,ida打开那个关键函数. 代码逻辑还 ...

  7. 蓝桥杯 历届试题 剪格子(dfs搜索)

    历届试题 剪格子 时间限制:1.0s   内存限制:256.0MB 问题描述 如下图所示,3 x 3 的格子中填写了一些整数. +--*--+--+ |* || +--****--+ ||* | ** ...

  8. [网鼎杯2020]you_raise_me_up

    [网鼎杯2020]you_raise_me_up 目录 [网鼎杯2020]you_raise_me_up 题目 分析 解法一:sage discrete_log()使用示例 补充 解法二:python ...

  9. 自动驾驶轻松开发?华为云ModelArts赋能智慧出行

    作为战略新兴产业,人工智能已经开始广泛应用于多个领域.近几年,科技公司.互联网公司等各领域的企业纷纷布局自动驾驶.那么,自动驾驶技术究竟发展得如何了?日前,华为云携手上海交通大学创新中心举办的华为云人 ...

  10. 本科阶段就挑战自动驾驶开发?华为云ModelArts帮你轻松实现!

    欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...

随机推荐

  1. deepin下的系统,如何为root用户添加密码

  2. MinDoc 编译安装(linux环境)

    目录 MinDoc 简介 项目地址: 下面以 Linux 系统为例: Gomod方式安装 下载项目代码到本地 写入依赖 下载依赖 创建数据库 配置数据库 编译main.go 提升文件权限 初使化数据库 ...

  3. js原生小知识

    new Array(3).fill(0) 就会生成3个元素为0的数组

  4. 八大远程控制软件,完美替代Teamviewer

    理想情况下,最好的远程桌面软件应该物有所值,同时为用户提供快速.安全和可靠的远程连接.还应该有一套强大的解决方案,提供高级报告和增强功能.跨平台支持和通信. TeamViewer 拥有超过 25 亿的 ...

  5. 鸿蒙HarmonyOS实战-Stage模型(服务卡片介绍和运行机制)

    一.服务卡片介绍 1.服务卡片的概念 在HarmonyOS中,服务卡片是一种提供即时信息和快速操作的小组件,类似于Android中的通知栏.服务卡片可以显示各种类型的信息,包括通知.天气.日历事件.音 ...

  6. 智能运维|AIRIOT智慧光伏管理解决方案

    ​ 随着新能源发展到今天,我国的能源产业已经形成产业化规模化的发展,"光伏能源"被广泛应用于电力.农业.市政照明甚至是军事领域. 以光伏电站为例,大量铺设的太阳能板运维成本相当高, ...

  7. vue3.4中KeepAlive的一个bug

    KeepAlive可以缓存组件,在不使用include时没有任何问题,可以正常缓存. 但是一旦使用了include,如果动态组件中没有导入ref函数,缓存功能就消失了 比如 editcom.vue & ...

  8. SuperSocket AppServer.NewRequestReceived 不触发 接受不到字节

    SuperSocket AppServer.NewRequestReceived 不触发 接受不到字节 针对.netframework版本 1.6.* 使用 FixedHeaderReceiveFil ...

  9. Go 指针逃逸分析

    引用 https://my.oschina.net/renhc/blog/2222104

  10. MySQL创建表的时候建立联合索引的方法

    1.MySQL创建表建立联合索引的步骤 在MySQL中,联合索引(也称为复合索引或多列索引)是基于表中的多个列创建的索引.这种索引可以提高多列查询的性能,特别是当查询条件涉及这些列时.下面是一个详细的 ...